Decoding an elementary HEVC stream using ffmpeg

I have successfully compiled and installed FFMPEG_2.1 from source code. I know that ffmpeg from version 2.1 onwards supports HEVC decoder. I have generated a .bin file using HM 10.0 and HM 11.0 HEVC reference code.

However, when i give this bin file as an input to the ffmpeg i get an Input/output Error.

The command that i have used is given below:

ffmpeg -i Johnny_1280x720_60qp22.bin out.yuv

The output of the above command is as shown below:

ffmpeg version 2.1 Copyright (c) 2000-2013 the FFmpeg developers
  built on Nov 21 2013 15:52:14 with gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5)
  configuration: 
  libavutil      52. 48.100 / 52. 48.100
  libavcodec     55. 39.100 / 55. 39.100
  libavformat    55. 19.104 / 55. 19.104
  libavdevice    55.  5.100 / 55.  5.100
  libavfilter     3. 90.100 /  3. 90.100
  libswscale      2.  5.101 /  2.  5.101
  libswresample   0. 17.104 /  0. 17.104
Input #0, bin, from 'Johnny_1280x720_60qp22.bin':
  Duration: N/A, bitrate: N/A
    Stream #0:0: Video: bintext, pal8, 1280x118288, 25 tbr, 25 tbn, 25 tbc
Output #0, rawvideo, to 'out.yuv':
  Metadata:
    encoder         : Lavf55.19.104
    Stream #0:0: Video: rawvideo, pal8, 1280x118288, q=2-31, 200 kb/s, 90k tbn, 25 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (bintext -> rawvideo)
Press [q] to stop, [?] for help
Johnny_1280x720_60qp22.bin: Input/output error
frame=    1 fps=0.3 q=0.0 size=  147861kB time=00:00:00.04 bitrate=30281932.8kbiframe=    1 fps=0.3 q=0.0 Lsize=  147861kB time=00:00:00.04 bitrate=30281932.8kbits/s    
video:147861kB audio:0kB subtitle:0 global headers:0kB muxing overhead 0.000000

Can anyone please tell me why i'm facing this problem and how i can rectify it.

Answers


This is the output I get for a hevc sequence encoded using HM 12.1.

$ ./ffmpeg -i kimono_hevc.bin out.yuv
ffmpeg version N-58122-g7cd555d Copyright (c) 2000-2013 the FFmpeg developers
  built on Nov 16 2013 20:40:03 with gcc 4.7 (Ubuntu/Linaro 4.7.3-1ubuntu1)
  configuration: --enable-libx264 --enable-gpl --enable-libmp3lame
  libavutil      52. 53.100 / 52. 53.100
  libavcodec     55. 43.100 / 55. 43.100
  libavformat    55. 21.100 / 55. 21.100
  libavdevice    55.  5.100 / 55.  5.100
  libavfilter     3. 91.100 /  3. 91.100
  libswscale      2.  5.101 /  2.  5.101
  libswresample   0. 17.104 /  0. 17.104
  libpostproc    52.  3.100 / 52.  3.100
Input #0, hevc, from 'kimono_hevc.bin':
  Duration: N/A, bitrate: N/A
    Stream #0:0: Video: hevc, yuv420p(tv), 1920x1080, 25 tbr, 1200k tbn, 25 tbc
Output #0, rawvideo, to 'out.yuv':
  Metadata:
    encoder         : Lavf55.21.100
    Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 1920x1080, q=2-31, 200 kb/s, 90k tbn, 25 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (hevc -> rawvideo)
Press [q] to stop, [?] for help
frame=    1 fps=0.0 q=0.0 Lsize=    3038kB time=00:00:00.04 bitrate=622080.0kbits/s    
video:3038kB audio:0kB subtitle:0 global headers:0kB muxing overhead 0.000000%

Notice that in my example I get

Stream #0:0: Video: hevc, yuv420p(tv)

while you get:

Stream #0:0: Video: bintext, pal8,

HM10 is old and the NAL-structure among other things changed. Any reason for not using the latest?

To download the latest hevc reference code and how to compile it, see my post @ http://stackoverflow.com/a/19305907/297323


Need Your Help

WIX: Installing Patch without UAC elevation fails

wix certificate installation patch uac

I am having a case of sudden problems. Normally I have been able to build patches to MSI install packages in a way so that when the patch is applied no administrator rights are needed - making it

Using htmlspecialchars within Query function

php security class pdo htmlspecialchars

Instead of manually adding the htmlspecialchars function to all outputted data, I've been trying to instead just place it in my query method so all returned data will automatically be processed.