2013-10-10 57 views
4

我想將HEVC編碼的文件解碼爲YUV文件。如何將HEVC文件解碼爲YUV?

有沒有簡單的方法來做到這一點呢?一個可執行文件將會很好,但我會盡量使用易於編譯的源代碼。

回答

6

它的那樣簡單(引導假設Linux操作系統,它tweek你的需求)

  1. 克隆的官方參考編解碼器(官方官方是一個svn回購在https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/trunk/找到,但只讀的git -repo是保持同步是由BBC提供的SVN是那麼容易得多恕我直言工作)

    git clone git://hevc.kw.bbc.co.uk/git/jctvc-hm.git 
    
  2. 要創建可執行文件:

    cd jctvc-hm/build/linux && make -f makefile 
    
  3. 二進制文件現在擺在

    jctvc-hm/bin 
    
  4. 現在,解碼HEVC編碼的二進制文件爲YCbCr,做

    ./TAppDecoderStatic -b encoded_file.bin -o reconstructed.yuv 
    

如果您不是在Linux系統上,只是轉到構建文件夾,你會希望找到你可以用於你的系統的東西:

$ cd jctvc-hm/build && ls 
HM_vc10.sln HM_vc8.sln HM_vc9.sln linux/ vc10/ vc8/ vc9/ 
+1

其神奇,謝謝。 – NiRR

+0

@NiRR - 很高興能幫助您,如果您需要編解碼器的進一步協助,請告知我們:-) –

2

或者,您可以使用libde265作爲更快的解碼器。

  1. 從其github release page獲取最新版本。
  2. 配置與./configure --disable-sherlock265
  3. 編譯:make

生成具有

./dec265/dec265 hevc-file.bin -o output.yuv -t4 

選項-t4爲多線程解碼YUV文件。你也可以做更多的事情,比如輸入NAL單元流,轉儲標題,直接顯示視頻,或者檢查SEI散列。

0

您可以下載簡單解碼HEVC比特流的ffmpeg windows build exe文件 。

ffmpeg.exe -i xxx.bin out.yuv