利用FFmpeg进行视频编解码常用技巧实战

抽取视频中的h264裸流

ffmpeg -i D:/ffmpeg_command_test/001.mp4 -an -c:v copy D:/ffmpeg_command_test/001.h264

这个命令会打开视频文件D:/ffmpeg_command_test/001.mp4并提取其中的视频流。选项-an表示不处理音频流,只处理视频流。-c:v copy指定输出视频的编码格式保持不变,即直接复制原始的H.264视频数据。最后,output.h264指定了输出文件的名称和格式,这里是H.264视频文件。

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'D:/ffmpeg_command_test/001.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf56.19.100
Duration: 00:00:31.18, start: 0.000000, bitrate: 879 kb/s
Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 640x352, 748 kb/s, 23.98 fps, 23.98 tbr, 24k tbn (default)
Metadata:
handler_name : VideoHandler
vendor_id : [0][0][0][0]
Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
handler_name : SoundHandler
vendor_id : [0][0][0][0]
Output #0, h264, to 'D:/ffmpeg_command_test/001.h264':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf60.13.100
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 640x352, q=2-31, 748 kb/s, 23.98 fps, 23.98 tbr, 23.98 tbn (default)
Metadata:
handler_name : VideoHandler
vendor_id : [0][0][0][0]
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
[out#0/h264 @ 00000210a5c456c0] video:2835kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.018602%
frame= 744 fps=0.0 q=-1.0 Lsize= 2835kB time=00:00:30.90 bitrate= 751.5kbits/s speed= 268x

提取pcm数据

ffmpeg -i D:/ffmpeg_command_test/001.mp4 -vn -ar 44100 -ac 2 -f s16le D:/ffmpeg_command_test/001.pcm
  • -i input_test.mp4:指定输入视频文件的路径。
  • -vn:禁用视频流,只处理音频流。
  • -ar 44100:设置音频采样率为44.1kHz。
  • -ac 2:设置音频通道数为2(立体声)。
  • -f s16le:设置输出格式为PCM 16位有符号LE。
  • 001.pcm:指定输出的PCM数据文件路径和文件名。
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '001.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf56.19.100
Duration: 00:00:31.18, start: 0.000000, bitrate: 879 kb/s
Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 640x352, 748 kb/s, 23.98 fps, 23.98 tbr, 24k tbn (default)
Metadata:
handler_name : VideoHandler
vendor_id : [0][0][0][0]
Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
handler_name : SoundHandler
vendor_id : [0][0][0][0]
Stream mapping:
Stream #0:1 -> #0:0 (aac (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
Output #0, s16le, to '001.pcm':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf60.13.100
Stream #0:0(und): Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s (default)
Metadata:
handler_name : SoundHandler
vendor_id : [0][0][0][0]
encoder : Lavc60.27.100 pcm_s16le
[out#0/s16le @ 000002329025e340] video:0kB audio:5374kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000%
size= 5374kB time=00:00:31.17 bitrate=1412.3kbits/s speed= 362x

然后可以使用ffplay播放

ffplay -ar 44100 -ac 2 -f s16le D:/ffmpeg_command_test/001.pcm

抽取MP3音频

ffmpeg -i D:/ffmpeg_command_test/001.mp4 -vn -aframes 180 -acodec libmp3lame -ac 2 -ar 48000 -y 001_0.mp3
  • -i D:/ffmpeg_command_test/001.mp4: 这是输入文件的参数,指定了要处理的视频文件路径为”D:/ffmpeg_command_test/001.mp4″。
  • -vn: 这个参数告诉FFmpeg忽略视频流,只处理音频流。
  • -aframes 180: 这个参数指定提取的音频帧数。在这个命令中,设置为180,意味着只提取前180帧的音频。
  • -acodec libmp3lame: 这个参数指定了音频编码器,使用libmp3lame进行音频转码。libmp3lame是一个常用的MP3音频编码器。
  • -ac 2: 这个参数指定了输出音频的声道数。在这个命令中,设置为2,表示立体声。
  • -ar 48000: 这个参数指定了输出音频的采样率。在这个命令中,设置为48000Hz,表示每秒采样48000次。
  • -y: 这个参数告诉FFmpeg在输出文件存在时自动覆盖。
  • D:/ffmpeg_command_test/001_0.mp3: 这是输出文件的参数,指定了转码后的音频文件路径为”D:/ffmpeg_command_test/001_0.mp3″。

下图为原视频001.mp4文件的简单信息:

利用FFmpeg进行视频编解码常用技巧实战
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'D:/ffmpeg_command_test/001.mp4':
Metadata:
major_brand : mp42
minor_version : 512
compatible_brands: mp42iso2avc1mp41
creation_time : 2022-03-18T01:43:06.000000Z
encoder : HandBrake 1.5.1 2022011000
Duration: 00:00:15.02, start: 0.000000, bitrate: 1131 kb/s
Stream #0:0[0x1](und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1920x240 [SAR 60:259 DAR 480:259], 989 kb/s, 23.87 fps, 23.98 tbr, 90k tbn (default)
Metadata:
creation_time : 2022-03-18T01:43:06.000000Z
handler_name : VideoHandler
vendor_id : [0][0][0][0]
Stream #0:1[0x2](eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 135 kb/s (default)
Metadata:
creation_time : 2022-03-18T01:43:06.000000Z
handler_name : Stereo
vendor_id : [0][0][0][0]
Stream mapping:
Stream #0:1 -> #0:0 (aac (native) -> mp3 (libmp3lame))
Press [q] to stop, [?] for help
Output #0, mp3, to 'D:/ffmpeg_command_test/001_0.mp3':
Metadata:
major_brand : mp42
minor_version : 512
compatible_brands: mp42iso2avc1mp41
TSSE : Lavf59.27.100
Stream #0:0(eng): Audio: mp3, 48000 Hz, stereo, fltp (default)
Metadata:
creation_time : 2022-03-18T01:43:06.000000Z
handler_name : Stereo
vendor_id : [0][0][0][0]
encoder : Lavc59.37.100 libmp3lame
size= 68kB time=00:00:04.29 bitrate= 129.3kbits/s speed=92.1x
video:0kB audio:68kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.491898%

这是提取出来的mp3文件的信息:

利用FFmpeg进行视频编解码常用技巧实战

ac参数详解

-ac参数用于指定输出音频的声道数。声道数表示音频中的独立音轨数量,常见的有单声道(Mono),立体声(Stereo),5.1声道等。

以下是一些常见的选项:

  • -ac 1:单声道(Mono)。输出音频只包含一个声道。
  • -ac 2:立体声(Stereo)。输出音频包含左右两个声道。
  • -ac 6:5.1声道。输出音频包含前左、前右、中央、低音以及后左、后右六个声道。

一般而言,立体声是最常用的选项,适用于大多数音频播放场景。

音频格式转换

ffmpeg -i D:/ffmpeg_command_test/001_0.mp3 -acodec copy -y D:/ffmpeg_command_test/001_1.aac

报错:

[adts @ 0000021686090200] Only AAC streams can be muxed by the ADTS muxer
Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument
Error initializing output stream 0:0 --

错误信息中提到了ADTS混合器(ADTS muxer)只能用于混合AAC流。然而,你正在尝试将001_0.mp3文件转码为AAC格式的001_1.aac文件,这可能导致编码参数不匹配的错误。

为了解决这个问题,我们尝试更改-acodec copy参数,将其替换为适合AAC编码的选项,所以就是编码器慎用copy,要转为什么格式,就先用适合该格式的编码器

ffmpeg -i D:/ffmpeg_command_test/001_0.mp3 -acodec aac -y D:/ffmpeg_command_test/001_1.aac
  • -i D:/ffmpeg_command_test/001_0.mp3:指定输入的MP3音频文件路径。
  • -acodec aac:指定音频编码器为AAC。这将告诉FFmpeg将输入音频文件转码为AAC格式。
  • -y:在输出文件已存在时自动覆盖。这个选项可确保如果输出文件已经存在,FFmpeg会自动覆盖它,而不会提示你进行确认。
  • D:/ffmpeg_command_test/001_1.aac:指定输出的AAC音频文件路径和文件名。
Input #0, mp3, from 'D:/ffmpeg_command_test/001_0.mp3':
Metadata:
major_brand : mp42
minor_version : 512
compatible_brands: mp42iso2avc1mp41
encoder : Lavf59.27.100
Duration: 00:00:04.32, start: 0.023021, bitrate: 128 kb/s
Stream #0:0: Audio: mp3, 48000 Hz, stereo, fltp, 128 kb/s
Metadata:
encoder : Lavc59.37
Stream mapping:
Stream #0:0 -> #0:0 (mp3 (mp3float) -> aac (native))
Press [q] to stop, [?] for help
Output #0, adts, to 'D:/ffmpeg_command_test/001_1.aac':
Metadata:
major_brand : mp42
minor_version : 512
compatible_brands: mp42iso2avc1mp41
encoder : Lavf59.27.100
Stream #0:0: Audio: aac (LC), 48000 Hz, stereo, fltp, 128 kb/s
Metadata:
encoder : Lavc59.37.100 aac
size= 69kB time=00:00:04.30 bitrate= 131.2kbits/s speed=44.5x
video:0kB audio:68kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 2.051482%
[aac @ 0000026a0d7dcdc0] Qavg: 732.265

分别抽取视频和音频,然后进行合并

抽取视频

ffmpeg -i D:/ffmpeg_command_test/001.mp4 -vcodec copy -an -y D:/ffmpeg_command_test/001_2.mp4
  • -i D:/ffmpeg_command_test/001.mp4:指定输入的视频文件路径。
  • -vcodec copy:指定视频编解码器为复制(copy)。这告诉FFmpeg直接复制输入文件的视频流,而不对其进行重新编码,从而保持原始视频的编码格式和质量。
  • -an:禁用音频流。这个选项告诉FFmpeg不复制输入文件的音频流到输出文件中。
  • -y:在输出文件已存在时自动覆盖。这个选项可确保如果输出文件已经存在,FFmpeg会自动覆盖它,而不会提示你进行确认。
  • D:/ffmpeg_command_test/001_2.mp4:指定输出的视频文件路径和文件名。
利用FFmpeg进行视频编解码常用技巧实战

抽取音频

ffmpeg -i D:/ffmpeg_command_test/001.mp4 -vn -acodec libmp3lame -y D:/ffmpeg_command_test/001_3.mp3
  • -i D:/ffmpeg_command_test/001.mp4:指定输入的视频文件路径。
  • -vn:禁用视频流。这个选项告诉FFmpeg不处理输入文件的视频流。
  • -acodec libmp3lame:指定音频编码器为libmp3lame。这将告诉FFmpeg使用libmp3lame库将音频流转码为MP3格式。
  • -y:在输出文件已存在时自动覆盖。这个选项可确保如果输出文件已经存在,FFmpeg会自动覆盖它,而不会提示你进行确认。
  • D:/ffmpeg_command_test/001_3.mp3:指定输出的MP3音频文件路径和文件名。

音频、视频合并

ffmpeg -i D:/ffmpeg_command_test/001_2.mp4 -i D:/ffmpeg_command_test/001_3.mp3 -vcodec copy -acodec copy D:/ffmpeg_command_test/001_4.mp4
  • -i D:/ffmpeg_command_test/001_2.mp4:指定第一个输入文件的路径,这是视频文件。
  • -i D:/ffmpeg_command_test/001_3.mp3:指定第二个输入文件的路径,这是音频文件。
  • -vcodec copy:指定视频编解码器为复制(copy)。这告诉FFmpeg直接复制第一个输入文件的视频流,而不对其进行重新编码。
  • -acodec copy:指定音频编解码器为复制(copy)。这告诉FFmpeg直接复制第二个输入文件的音频流,而不对其进行重新编码。
  • D:/ffmpeg_command_test/001_4.mp4:指定输出文件的路径和文件名。

-itsoffset设置延迟

-itsoffset是FFmpeg的一个参数,用于指定输入文件的偏移时间。它用于对齐多个输入文件的时间轴,使它们在合并或处理时保持同步。

该参数的语法是 -itsoffset <time>,其中 <time> 是一个时间值,可以是以秒为单位的浮点数,或者以时间格式 HH:MM:SS.mmm。正值表示向后偏移,负值表示向前偏移。

下面使用-itsoffset设置延迟:

ffmpeg -itsoffset 10 -i D:/ffmpeg_command_test/001_2.mp4 -itsoffset 5 -i D:/ffmpeg_command_test/001_3.mp3 -vcodec copy -acodec copy D:/ffmpeg_command_test/001_5.mp4
  • -itsoffset 10 -i D:/ffmpeg_command_test/001_2.mp4:这部分指定了视频文件的偏移量和路径。-itsoffset 10 表示将第一个输入视频文件的时间戳向后偏移10秒。-i D:/ffmpeg_command_test/001_2.mp4 指定了第一个输入视频文件的路径和文件名。你需要将其替换为实际的视频文件路径和文件名。
  • -itsoffset 5 -i D:/ffmpeg_command_test/001_3.mp3:这部分指定了音频文件的偏移量和路径。-itsoffset 5 表示将第二个输入音频文件的时间戳向后偏移5秒。-i D:/ffmpeg_command_test/001_3.mp3 指定了第二个输入音频文件的路径和文件名。你需要将其替换为实际的音频文件路径和文件名。
  • -vcodec copy -acodec copy:这部分指定了视频编码器和音频编码器为复制模式,即直接复制输入的视频和音频流,而不进行重新编码。这样可以保持原始视频和音频的编码格式和质量。
  • D:/ffmpeg_command_test/001_5.mp4:这部分指定了输出视频文件的路径和文件名。生成的视频文件将保存在这个路径下,并以指定的文件名命名。

首先,第一个输入文件 001_2.mp4 将向后延迟 10 秒。然后,第二个输入文件 001_3.mp3 将向后延迟 5 秒。最后,两个输入文件的音视频流将被直接拷贝至输出文件 001_5.mp4 中,不进行重新编码。

视频拆成图片

ffmpeg -i D:/ffmpeg_command_test/001.mp4 -r 23.866 -vf "scale=640:480" -f image2 D:/ffmpeg_command_test/pic/001_image-%03d.png
  • -i D:/ffmpeg_command_test/001.mp4:指定输入文件为 001.mp4,路径为 D:/ffmpeg_command_test/001.mp4
  • -r 23.866:这个参数设置输出图像序列的帧率为 23.866 帧/秒。也就是每秒提取约 23.866 帧作为图像。请注意,这个帧率是近似值,因为视频的原始帧率可能为浮点数。
  • -vf "scale=640:480":这个参数使用了视频滤镜(video filter),通过 scale 滤镜将图像的分辨率调整为 640×480 像素。这将确保输出的图像具有指定的宽度和高度。
  • -f image2:这个参数指定输出格式为图像序列。使用 image2 指示 FFmpeg 将每个帧保存为单独的图像文件。
  • D:/ffmpeg_command_test/pic/001_image-%03d.png:指定输出图像序列的文件名格式和路径。%03d 表示输出文件名中的帧号,其中 %03d 表示使用三位数字进行编号,.png 表示输出文件的格式为 PNG 图像文件。

这个命令将从输入视频文件 001.mp4 中提取帧,并将每一帧保存为图像序列。输出的图像文件名将按照指定的格式命名,并保存在指定的目录 D:/ffmpeg_command_test/pic/ 中。图像的分辨率将被调整为 640×480 像素。

图片合成视频

ffmpeg -i D:/ffmpeg_command_test/pic/001_image-%03d.png -r 23.866 -s 640x480 -c:v libx264 D:/ffmpeg_command_test/001_new.mp4
  • -i D:/ffmpeg_command_test/pic/001_image-%03d.png:指定输入图像序列的文件名格式。%03d 表示使用三位数字进行编号的图像文件。
  • -r 23.866:这个参数设置输出视频的帧率为 23.866 帧/秒。
  • -s 640x480:这个参数设置输出视频的分辨率为 640×480 像素。
  • -c:v libx264:通过指定视频编解码器 libx264,将图像序列编码为 H.264 格式的视频。
  • D:/ffmpeg_command_test/001_new.mp4:指定输出视频文件的路径和文件名。

png图片转gif

ffmpeg -i D:/ffmpeg_command_test/pic1/001_image-%03d.png -r 5 001.gif
  • -i D:/ffmpeg_command_test/pic1/001_image-%03d.png:指定输入的图像文件路径模式。%03d 表示以三位数字序列命名的文件,例如 001_image-001.png001_image-002.png,依此类推。
  • -r 5:设置输出动画的帧率为 5 帧/秒。这个选项告诉FFmpeg在生成GIF动画时使用每秒 5 帧的速度。
  • 001.gif:指定输出的GIF动画文件名。

加入淡入淡出滤镜

ffmpeg -i D:/ffmpeg_command_test/001.mp4 -vf "fade=t=in:st=0:d=2, fade=t=out:st=28:d=2" -af "volume=2.0, afade=t=in:st=0:d=2, afade=t=out:st=28:d=2" -c:v libx264 -c:a aac -b:a 128k D:/ffmpeg_command_test/modified_video.mp4
  • -i D:/ffmpeg_command_test/001.mp4:这部分指定了输入视频文件的路径和文件名。你需要将其替换为实际的视频文件路径和文件名。
  • -vf "fade=t=in:st=0:d=2, fade=t=out:st=28:d=2":这部分指定了视频滤镜。fade 是一个视频滤镜,用于实现淡入淡出效果。t=in 表示淡入效果,st=0 表示淡入开始的时间(0秒),d=2 表示淡入的持续时间为2秒。t=out 表示淡出效果,st=28 表示淡出开始的时间(28秒),d=2 表示淡出的持续时间为2秒。这个视频滤镜将在输入视频上应用淡入淡出效果。
  • -af "volume=2.0, afade=t=in:st=0:d=2, afade=t=out:st=28:d=2":这部分指定了音频滤镜。volume=2.0 表示将音频音量增加为原来的两倍。afade 是一个音频滤镜,用于实现音效的淡入淡出效果。t=in 表示淡入效果,st=0 表示淡入开始的时间(0秒),d=2 表示淡入的持续时间为2秒。t=out 表示淡出效果,st=28 表示淡出开始的时间(28秒),d=2 表示淡出的持续时间为2秒。这个音频滤镜将在输入音频上应用音量调整和音效淡入淡出效果。
  • -c:v libx264:这部分指定了视频编码器为 libx264,表示输出视频将使用 H.264 编码格式。这将重新编码视频流以应用滤镜和设置的参数。
  • -c:a aac -b:a 128k:这部分指定了音频编码器为 AAC 格式,并设置音频比特率为 128k。这将重新编码音频流以应用滤镜和设置的参数。
  • D:/ffmpeg_command_test/modified_video.mp4:这部分指定了输出视频文件的路径和文件名。生成的视频文件将保存在这个路径下,并以指定的文件名命名。
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'D:/ffmpeg_command_test/001.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf56.19.100
Duration: 00:00:31.18, start: 0.000000, bitrate: 879 kb/s
Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 640x352, 748 kb/s, 23.98 fps, 23.98 tbr, 24k tbn (default)
Metadata:
handler_name : VideoHandler
vendor_id : [0][0][0][0]
Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
handler_name : SoundHandler
vendor_id : [0][0][0][0]
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Stream #0:1 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
[libx264 @ 000002874d9c0d00] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 000002874d9c0d00] profile High, level 3.0, 4:2:0, 8-bit
[libx264 @ 000002874d9c0d00] 264 - core 164 - H.264/MPEG-4 AVC codec - Copyleft 2003-2023 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=11 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=23 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'D:/ffmpeg_command_test/modified_video.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf60.13.100
Stream #0:0(und): Video: h264 (avc1 / 0x31637661), yuv420p(progressive), 640x352, q=2-31, 23.98 fps, 24k tbn (default)
Metadata:
handler_name : VideoHandler
vendor_id : [0][0][0][0]
encoder : Lavc60.27.100 libx264
Side data:
cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
handler_name : SoundHandler
vendor_id : [0][0][0][0]
encoder : Lavc60.27.100 aac
[out#0/mp4 @ 000002874d9a1100] video:2555kB audio:463kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.810708%
frame= 744 fps=270 q=-1.0 Lsize= 3042kB time=00:00:31.18 bitrate= 799.1kbits/s speed=11.3x
[libx264 @ 000002874d9c0d00] frame I:20 Avg QP:17.33 size: 23676
[libx264 @ 000002874d9c0d00] frame P:241 Avg QP:22.45 size: 6013
[libx264 @ 000002874d9c0d00] frame B:483 Avg QP:24.80 size: 1435
[libx264 @ 000002874d9c0d00] consecutive B-frames: 6.9% 16.9% 8.5% 67.7%
[libx264 @ 000002874d9c0d00] mb I I16..4: 33.8% 22.6% 43.6%
[libx264 @ 000002874d9c0d00] mb P I16..4: 5.5% 8.8% 3.1% P16..4: 30.1% 12.1% 7.1% 0.0% 0.0% skip:33.2%
[libx264 @ 000002874d9c0d00] mb B I16..4: 0.8% 0.7% 0.4% B16..8: 29.5% 4.7% 1.6% direct: 2.4% skip:60.1% L0:44.5% L1:42.4% BI:13.1%
[libx264 @ 000002874d9c0d00] 8x8 transform intra:40.7% inter:47.7%
[libx264 @ 000002874d9c0d00] coded y,uvDC,uvAC intra: 44.8% 48.8% 15.7% inter: 12.0% 10.7% 0.5%
[libx264 @ 000002874d9c0d00] i16 v,h,dc,p: 38% 36% 13% 13%
[libx264 @ 000002874d9c0d00] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 16% 33% 21% 3% 5% 5% 6% 4% 6%
[libx264 @ 000002874d9c0d00] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 15% 30% 13% 5% 7% 7% 8% 6% 8%
[libx264 @ 000002874d9c0d00] i8c dc,h,v,p: 53% 31% 11% 5%
[libx264 @ 000002874d9c0d00] Weighted P-Frames: Y:32.8% UV:28.2%
[libx264 @ 000002874d9c0d00] ref P L0: 64.0% 19.5% 13.2% 2.9% 0.3%
[libx264 @ 000002874d9c0d00] ref B L0: 89.6% 8.6% 1.8%
[libx264 @ 000002874d9c0d00] ref B L1: 98.3% 1.7%
[libx264 @ 000002874d9c0d00] kb/s:674.29
[aac @ 000002874fa1a8c0] Qavg: 5440.482

版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。

(0)

相关推荐

发表回复

登录后才能评论