Cause: Normal call clearing (16)
在一次呼叫结束或者手动挂断,有时候出现未接通的时候,也会出现。
- 查一下手册发现说明如下
该原因表示呼叫正在被清除,这是因为呼叫所涉及的用户之一已经请求清除呼叫。
在正常情况下,网络不发送这一原因。
这里说一下我遇到的情况,我的业务场景中需要放音一段wav音频,目前项目只是支持单声道、8kHz或者16kHz采样率,但是我使用的是双声道、22050 Hz,导致放音出现问题,然后一端请求清除呼叫。
- 使用ffmpeg确定音频文件的信息
ffmpeg -i filename.wav
结果
Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, wav, from './board/attachment-wav.wav':
Metadata:
artist : 彭健新
genre : Blues
title : 声音
album : 声音
track : 1
encoder : Lavf58.29.100
Duration: 00:00:46.36, bitrate: 705 kb/s
Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 22050 Hz, stereo, s16, 705 kb/s
- 使用ffmpeg调整声道数和采样率
ffmpeg -i atest.wav -ac 1 -ar 8000 test_new.wav
-i
表示输出信息
-ac
表示设置声道数
-ar
表示这是采样率
结果如下
Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, wav, from 'attachment-wav.wav':
Metadata:
artist : 彭健新
genre : Blues
title : 声音
album : 声音
track : 1
encoder : Lavf58.29.100
Duration: 00:00:46.36, bitrate: 705 kb/s
Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 22050 Hz, stereo, s16, 705 kb/s
File 'attachment-wav_new.wav' already exists. Overwrite ? [y/N] Y
Stream mapping:
Stream #0:0 -> #0:0 (pcm_s16le (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
Output #0, wav, to 'attachment-wav_new.wav':
Metadata:
IART : 彭健新
IGNR : Blues
INAM : 声音
IPRD : 声音
IPRT : 1
ISFT : Lavf57.83.100
Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 8000 Hz, mono, s16, 128 kb/s
Metadata:
encoder : Lavc57.107.100 pcm_s16le
size= 725kB time=00:00:46.36 bitrate= 128.0kbits/s speed= 969x
video:0kB audio:724kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.020490%
欢迎交流,共同进步——