我有一個.yuv文件,並希望使用C++讀取它。問題是我不知道它是解決方案。那麼,有沒有辦法從yuv文件中獲得分辨率?如何獲得YUV幀的分辨率
此外,我不知道幀的數量。因此,我不能使用ftell()並將其除以整個幀。
我有一個.yuv文件,並希望使用C++讀取它。問題是我不知道它是解決方案。那麼,有沒有辦法從yuv文件中獲得分辨率?如何獲得YUV幀的分辨率
此外,我不知道幀的數量。因此,我不能使用ftell()並將其除以整個幀。
據我所知,沒有.yuv
文件格式。一些程序使用該擴展來存儲原始數據,但它不是格式。因此,除非您已經知道元數據,否則無法使用該文件。
而且您需要事先知道色度採樣是否與亮度採樣交錯存儲或單獨存儲,以及是否有位填充和/或任何行填充,以便能夠從文件中讀取數據。
然後,您還需要事先知道幀分辨率,色度子採樣和色彩空間,以便能夠正確處理該數據。
我的意思是yuv圖像具體 – darshshah
區別是最小的。有了圖像,你可以檢查文件大小,並且如果你知道一些其他的元數據,則可以「猜出」一些元數據,但總的來說,你仍然需要事先知道幾乎所有的東西。 –
@darshshah re:「yuv images」:Georg和AnalogFile都是正確的,沒有「標準」的YUV圖像文件格式。但許多「標準」圖像格式能夠保存YUV圖像。他們有一個文件頭,爲您提供所有必需的信息。如果沒有這個文件頭,你必須猜測或試驗。 #1看看哪些YUV格式可能會加起來到這個圖像大小。 #2然後將它們全部顯示出來,看看哪個是正確的。 YUV 4:2:0需要W * H * 3/2; YUV 4:2:2需要W * H * 2;等等 –
什麼軟件已經創建了yuv文件?你試過什麼了?你有什麼關於文件格式的信息? –