簡體   English   中英

以2:1縮小H264視頻的最快方法是什么?

[英]what is The fastest way to scale down a H264 video in 2:1?

當我使用ffmpeg縮放H264視頻時。 似乎視頻被解碼為原始圖,然后縮放並再次編碼。 但是,如果速度非常關鍵,是否可以指定2:1之類的“好”比率,好像我想每四個像素拾取一個像素,是否有更快的方法呢?

我知道h264的工作原理,將8 * 8/4 * 4像素編碼為一組,因此在其范圍內拾取1/4像素並不容易。 但是,有沒有一種方法可以將4組快速合並為一個組?

當使用ffmpeg進行縮放時,無法避免重新編碼到視頻的任何部分。 對於規模操作,ffmpeg以管道方式工作,如下所示:

解碼器---->定標器----->編碼器

縮放器僅在完全解碼的幀可用后才進行縮放操作。 由於每個數據包都通過此管道,因此編碼器僅接收解壓縮(YUV格式)形式的視頻幀。 因此,在縮放操作后,每個YUV幀都會重新編碼。 我想這闡明了為什么沒有辦法避免重新編碼。

縮放比例確實在復雜性中起作用。 我猜比例比為2:1是可以的,比例比會影響比例算法中使用的抽頭數(濾波器系數)。 同樣,您可以選擇的縮放算法會增加另一層復雜性。 ffmpeg中最小復雜的縮放算法是“ fast_bilinear”。 但是請注意視頻質量的權衡。

當然,編碼速度是要考慮的另一個因素。 看來您對此相當了解。 一件事,看看是否可以使用系統中可用的硬件解碼器和編碼器。 如果有HW編解碼器,則可以大大提高整個管道的速度。 您可以為ffmpeg使用-hwaccel dxva2選項

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM