本帖最后由 Burne 于 2018-11-22 16:50 编辑
我参照transcode_aac.c学习FFmpeg时,将avcodec_find_encoder的参数由AV_CODEC_ID_AAC改为AV_CODEC_ID_MP3,以期望实现将其它音频文件转换为mp3文件,成功将wav文件转为mp3文件,但是发现声音长度变小了,我用ffprobe查看转换前后的声音长度
ffprobe c:\tmp\41.wav
Input #0, wav, from 'c:\tmp\41.wav':
Duration: 00:00:31.22, bitrate: 128 kb/s
Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 8000 Hz, 1 channels, s16, 128 kb/s
ffprobe c:\tmp\41.mp3
Input #0, mp3, from 'c:\tmp\41.mp3':
Metadata:
encoder : Lavf58.22.100
Duration: 00:00:30.89, start: 0.138125, bitrate: 8 kb/s
Stream #0:0: Audio: mp3, 8000 Hz, mono, fltp, 8 kb/s
显示mp3有30.89秒,而用WMP播放时显示只有28秒
我的理解是格式转换不应该造成声音长度的变化,不太理解怎么会出现这种情况,请前辈解惑,谢谢。
|