Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Audio 使用ffmpeg转码后,我发现音频比特率不是我期望的值_Audio_Ffmpeg_Transcoding_Bitrate - Fatal编程技术网

Audio 使用ffmpeg转码后,我发现音频比特率不是我期望的值

Audio 使用ffmpeg转码后,我发现音频比特率不是我期望的值,audio,ffmpeg,transcoding,bitrate,Audio,Ffmpeg,Transcoding,Bitrate,我使用ffmpeg将一些文件转换成新的格式,并带有某些参数。转码后,我发现一些输出文件的元数据不是我期望的,输出值与我在cmd行中设置的不一样 在转码之前,我检查输入文件的媒体信息: ffmpeg -i dz2015082000010.mpg ffmpeg 3.2.4版版权所有(c)2000-2017 ffmpeg开发者 使用gcc 4.8.3(gcc)20140911(红帽4.8.3-9)构建 配置:---启用静态--启用memalign hack--启用-libx264 --enable

我使用ffmpeg将一些文件转换成新的格式,并带有某些参数。转码后,我发现一些输出文件的元数据不是我期望的,输出值与我在cmd行中设置的不一样

在转码之前,我检查输入文件的媒体信息:

ffmpeg -i dz2015082000010.mpg
ffmpeg 3.2.4版版权所有(c)2000-2017 ffmpeg开发者
使用gcc 4.8.3(gcc)20140911(红帽4.8.3-9)构建
配置:---启用静态--启用memalign hack--启用-libx264 --enable gpl--enable pthreads--enable-version3--enable avisynch--enable bzlib--enable iconv--enable zlib--enable nonfree--extra cflags=-I/usr/local/include/--extra ldflags=-L/usr/local/lib--enable debug=3--禁用优化--enable nonfree--enable-libmp3lame libavutil 55。34.101 / 55. 34.101 libav编解码器57。64.101 / 57. 64.101 libav57格式。56.101 / 5756.101 libav设备57。1.100 / 57. 1.100 libav6滤波器。65.100 / 6. 65.100磅/平方英寸刻度4。2.100 / 4. 2.100磅重采样2。3.100 / 2. 3.100 libpostroc 54。1.100 / 541.100输入#0,mpeg,来自“dz2015082000010.mpg”:持续时间:00:01:49.30,开始时间:0.685389,比特率:15723kb/s
流#0:0[0x1e0]:视频:mpeg2video(主)、yuv420p(电视,顶部第一)、1920x1080[SAR 1:1 DAR 16:9]、15000 kb/s、25 fps、25 tbr、, 90k待定,50待定
流#0:1[0x1c0]:音频:mp2,48000 Hz,立体声,s16p,384 kb/s必须至少指定一个输出文件

接下来,使用cmd行进行代码转换:

ffmpeg -i dz2015082000010.mpg -vcodec libx264 -b:v 4000k -s 1920x1080 -r 25 -g 25  -vprofile main -acodec aac -strict -2 -b:a 128k -ac 2 -ar 44100 -y output.ts
转码后,我检查输出文件的媒体信息:

ffmpeg -i output.ts    
ffmpeg版本3.2.4版权所有(c)2000-2017 ffmpeg开发人员使用gcc 4.8.3(gcc)20140911(红帽)构建 4.8.3-9)配置:-启用静态--enable memalign hack--enable-libx264--enable gpl--enable pthreads--enable-version3--enable avisynch--enable bzlib--enable iconv--enable zlib--enable nonfree--extra cflags=-I/usr/local/include/--extra ldflags=-L/usr/local lib enable debug=3--禁用优化--enable nonfree--enable-libmp3lame-libavutil 55。34.101 / 55. 34.101 libav编解码器57。64.101 / 57. 64.101 libav57格式。56.101 / 57. 56.101
libav57设备。1.100 / 57. 1.100 libav6滤波器。65.100 / 6. 65.100磅/平方英寸刻度4。2.100 / 4. 2.100
libswresample2。3.100 / 2. 3.100 libpostroc 54。1.100 / 54. 1.100输入#0,mpegts,来自“full-2.ts”:持续时间: 00:01:49.30,开始:1.456778,比特率:4455kb/s程序1
元数据:
服务名称:Service01
服务提供商:FFmpeg
流#0:0[0x100]:视频:h264(主)([27][0][0][0]/0x001B),yuv420p(渐进式),1920x1080[SAR 1:1 DAR 16:9],每秒25帧,每分钟25次, 90k待定,50待定
流#0:1[0x101]:音频:aac(LC)([15][0][0][0]/0x000F),44100Hz,立体声,fltp,4kb/s至少必须有一个输出文件 指定的


我不知道为什么转码后音频比特率变为4kb/s,之前我用-b:a 128k设置了这个值,有人能帮我吗?顺便说一句,输出文件听起来不错。

本机编码器不会在静默部分浪费位。而且它不做严格的CBR。如果你真的需要一个接近目标比特率的输出,你可以在一个非常低的噪声水平混合