
什麼是 Micro-720p 翻錄方法?我想用 ffmpeg 和 libx264 從 720p 翻錄。
範例m720p視訊資訊(我不知道來源視訊):
General
Complete name : D:\m720p.mp4
Format : MPEG-4
Format profile : Base Media
Codec ID : isom
File size : 596 MiB
Duration : 1h 16mn
Overall bit rate mode : Variable
Overall bit rate : 1 096 Kbps
Encoded date : UTC 2013-02-05 23:44:15
Tagged date : UTC 2013-02-05 23:44:15
Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : [email protected]
Format settings, CABAC : Yes
Format settings, ReFrames : 9 frames
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 1h 16mn
Bit rate : 1 003 Kbps
Maximum bit rate : 3 982 Kbps
Width : 1 280 pixels
Height : 688 pixels
Display aspect ratio : 1.85:1
Frame rate mode : Constant
Frame rate : 23.976 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.048
Stream size : 542 MiB (91%)
Writing library : x264 core 129 r2230 1cffe9f
Encoding settings : cabac=1 / ref=9 / 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=6 / lookahead_threads=1 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=8 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=240 / keyint_min=23 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=2pass / mbtree=1 / bitrate=1003 / ratetol=1.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / aq=1:1.00
Encoded date : UTC 2013-02-05 23:44:15
Tagged date : UTC 2013-02-05 23:44:24
Audio
ID : 2
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 1h 16mn
Bit rate mode : Variable
Bit rate : 96.0 Kbps
Maximum bit rate : 130 Kbps
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 48.0 KHz
Compression mode : Lossy
Stream size : 52.2 MiB (9%)
Language : English
Encoded date : UTC 2013-02-05 23:44:22
Tagged date : UTC 2013-02-05 23:44:24
答案1
Slhck 說得對,Micro-720p 是某些盜版電影團隊的發行類型。
AFAIK,這些團隊正在使用一些 x264 編碼設定調整來以可接受的品質歸檔低位元率。你可以從這一行得到他們用過的東西
Encoding settings : cabac=1 / ref=9 / 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=6 / lookahead_threads=1 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=8 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=240 / keyint_min=23 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=2pass / mbtree=1 / bitrate=1003 / ratetol=1.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / aq=1:1.00
低位元率最重要的設定是: ref=9 subme=7 bframes=8
而 deblock 可以透過 -tune film|animation|grain 來改變
順便說一句,如果您想使用 ffmpeg 將音訊轉碼為 aac,您應該使用 lib_fdkaac,這是一個比 libfaac 更好的編解碼器。只需嘗試使用 lib_fdcaac 獲取/編譯一個新的 ffmpeg。
你可以嘗試一些極端的設置
ffmpeg -i 720p.mkv \
-c:v libx264 -crf 22 -preset slower -x264opts subme=11:ref=16:bframes=16 -tune film \
-c:a libfdk_aac -ac 2 -flags +qscale -global_quality 2 -afterburner 1 \
m720p.mp4
我知道這會給出相當好的結果,但視訊比特率約為 1400~1600 Kbps。
答案2
我想我最終發現了這個詞的來源——它是盜版電影發行類型。它描述了一部 720p 電影(因此,大小調整為 1280⨉720 像素),但比特率低於您通常需要的比特率。
這真的不是什麼火箭科學。根據這些準則計算,720p 藍光翻錄的通常位元率約為 4.5 MBit/s。一我找到的場景指南也使用 4 MBit/s 進行 x264 編碼。因此,為了獲得“微型”或“迷你”720p rip,您需要指定較低的比特率。
你可以做這樣的事情:
ffmpeg -i in.mp4 -c:v libx264 -b:v 1M -c:a libfaac -q:a 100 out.mp4
不幸的是,x264 中預設的恆定位元率編碼模式在品質方面被認為相當糟糕。理想情況下,如果有時間,您應該進行兩次編碼。以下是 1 MBit/s 的範例:
ffmpeg -y -i in.mp4 -c:v libx264 -preset slow -b:v 1M -pass 1 -an -f mp4 /dev/null
ffmpeg -i in.mp4 -c:v libx264 -preset slow -b:v 1M -pass 2 -c:a libfaac -q:a 100 out.mp4
您可以將預設從slow
更改為ultraslow
,或從另一個方向更改為medium
, fast
, ultrafast
。選擇較慢的預設可以提供更好的壓縮效果,但代價是等待更長時間。更好的壓縮意味著相同檔案大小下影片看起來更好。
請注意,如果您的原始文件已包含 MP4 的有效音訊串流(通常是 AAC 或 MP3 音訊),那麼您可以跳過該-c:a libfaac -q:a 100
部分,只需使用-c:a copy
.