将 G.723.1 转换为普通 wav 和拆分通道?
Posted
技术标签:
【中文标题】将 G.723.1 转换为普通 wav 和拆分通道?【英文标题】:convert G.723.1 to normal wav and split channels? 【发布时间】:2018-05-01 09:31:09 【问题描述】:我有一个 wav 文件,其信息是
ion@aurora:~/Inbound$ mediainfo 48401-3405-48403--18042018170000.wav
General
Complete name : 48401-3405-48403--18042018170000.wav
Format : Wave
File size : 327 KiB
Duration : 4mn 11s
Overall bit rate : 10.7 Kbps
Audio
Format : G.723.1
Codec ID : A100
Duration : 4mn 11s
Bit rate : 10.7 Kbps
Channel(s) : 2 channels
Sampling rate : 8 000 Hz
Stream size : 327 KiB (100%)
这样的大胆表现
为了解决这个问题我试过了
ffmpeg -i 48401-3405-48403--18042018170000.wav -f wav test.wav
但它只是在第一个频道的后面附加了第二个频道,所以我只得到一个频道。 它的媒体信息是: ion@aurora:~/Inbound$ mediainfo test.wav
General
Complete name : test.wav
Format : Wave
File size : 7.67 MiB
Duration : 8mn 22s
Overall bit rate mode : Constant
Overall bit rate : 128 Kbps
Writing application : Lavf56.40.101
Audio
Format : PCM
Format settings, Endianness : Little
Format settings, Sign : Signed
Codec ID : 1
Duration : 8mn 22s
Bit rate mode : Constant
Bit rate : 128 Kbps
Channel(s) : 1 channel
Sampling rate : 8 000 Hz
Bit depth : 16 bits
Stream size : 7.67 MiB (100%)
知道如何解决这个问题吗?
PS:当我听到原始的wav文件时,感觉说话太快了。
处理后的文件的媒体信息应该是这样的。
ion@aurora:~/Downloads/Call Recordings$ mediainfo 9417648939\ \(G\ Call\)_Done.wav
General
Complete name : 9417648939 (G Call)_Done.wav
Format : Wave
File size : 8.01 MiB
Duration : 8mn 44s
Overall bit rate mode : Constant
Overall bit rate : 128 Kbps
Audio
Format : ADPCM
Format profile : U-Law
Codec ID : 7
Codec ID/Hint : CCITT
Duration : 8mn 44s
Bit rate mode : Constant
Bit rate : 128 Kbps
Channel(s) : 2 channels
Sampling rate : 8 000 Hz
Bit depth : 8 bits
Stream size : 8.01 MiB (100%)
【问题讨论】:
上传ffmpeg命令的完整日志。 @Gyan 在这里找到日志link 如果你愿意,我也可以分享音频文件。 ffmpeg 将此文件视为单声道:Stream #0:0: Audio: g723_1 ([0][161][0][0] / 0xA100), 8000 Hz, mono, s16, 10 kb/s
。哪个工具可以正确转换?
我不知道,所以我在这里问,我将如何转换这个音频文件。
【参考方案1】:
1) 来自 ubuntu (18.04) 存储库的 ffmpeg 有一个错误(ffmpeg 在 g723 中未检测到立体声通道)。使用来自 git 存储库的 FFmpeg https://github.com/FFmpeg/FFmpeg
git clone https://github.com/FFmpeg/FFmpeg
cd FFmpeg/ && ./configure --disable-x86asm && make
2) 现在您可以转换音频了:
FFmpeg/ffmpeg -i test.g723 test.wav
3) 和单独的频道:
FFmpeg/ffmpeg -i test.wav -filter_complex 'channelsplit=channel_layout=stereo[L][R]' -map '[L]' test.wav -map '[R]' test.wav
【讨论】:
以上是关于将 G.723.1 转换为普通 wav 和拆分通道?的主要内容,如果未能解决你的问题,请参考以下文章
gstreamer 将多通道 wav 文件拆分为单独的通道并将每个通道编码为 mp3、alac 等并保存到文件
使用 NAudio/Lame 将 .wav 转换为 mp3 时如何设置通道和采样率?
为啥将拆分为 wav 文件的旋律转换为拆分的 mp3 会在片段边界处产生不好的声音?
普通话识别,mp3格式转wav, 采样率转换48000转16000,多通道转单通道,运用百度API,短音频,python