hello Intel friends,
OS: Ubuntu 12.04
MediaSamples_Linux_6.0.16043175.175
MediaServerStudioEssentials2015R6
Platform: i5-4570S
I use two bit-stream to be decoded correctly Just like the following and got failure as using combined bit-stream. Basically, the parameters are validated in each bit-stream and it should be OK. Why it fail to decode combined bit-stream??
[_build] $ pwd
/home/dspuser/Downloads/mediasdk-tutorials-0.0.3/_build
[_build] $ sudo ./simple_decode_vmem -auto test_stream.264 ==> validate first bit-stream
libva info: VA-API version 0.35.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_0_32
libva info: va_openDriver() returns 0
Execution time: 0.07 s (1421.59 fps)
[_build] $ sudo ./simple_decode_vmem -auto 1080p_4M.h264 ==> validate second bit-stream
libva info: VA-API version 0.35.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_0_32
libva info: va_openDriver() returns 0
Execution time: 1.04 s (611.63 fps)
And I combined these two bit-streams and validate with ffmpeg. But I got failure as using simple_decode_vmem
[_build] $ cp test_stream.264 combined.264 ==> create combined bit-stream
[_build] $ cat 1080p_4M.h264 >> combined.264 ==> create combined bit-stream
[_build] $ ffmpeg -i combined.264 -vcodec rawvideo -pix_fmt yuv420p combined.yuv ==> validate with ffmpeg
ffmpeg version 2.1.1 Copyright (c) 2000-2013 the FFmpeg developers
built on Aug 5 2014 05:02:01 with gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5)
configuration: --enable-gpl --enable-nonfree --enable-pthreads --enable-x11grab --enable-version3 --enable-libx264 --enable-encoder=libx264 --enable-libvpx --disable-zlib --disable-debug
libavutil 52. 48.101 / 52. 48.101
libavcodec 55. 39.101 / 55. 39.101
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
libpostproc 52. 3.100 / 52. 3.100
Input #0, h264, from 'combined.264':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: h264 (High), yuv420p, 176x96 [SAR 1:1 DAR 11:6], 30 fps, 30 tbr, 1200k tbn, 60 tbc
Output #0, rawvideo, to 'combined.yuv':
Metadata:
encoder : Lavf55.19.104
Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 176x96 [SAR 1:1 DAR 11:6], q=2-31, 200 kb/s, 90k tbn, 30 tbc
Stream mapping:
Stream #0:0 -> #0:0 (h264 -> rawvideo)
Press [q] to stop, [?] for help
[h264 @ 0x21c2580] Delayed frames seen. Reenabling low delay requires a codec flush.
[h264 @ 0x21c2580] Reinit context to 1920x1088, pix_fmt: yuv420p
[h264 @ 0x21c2e40] Delayed frames seen. Reenabling low delay requires a codec flush.
[h264 @ 0x21b2100] Delayed frames seen. Reenabling low delay requires a codec flush.
[h264 @ 0x21b29c0] Delayed frames seen. Reenabling low delay requires a codec flush.
[h264 @ 0x2195440] Delayed frames seen. Reenabling low delay requires a codec flush.
Input stream #0:0 frame changed from size:176x96 fmt:yuv420p to size:1920x1080 fmt:yuv420p
[h264 @ 0x21b2100] Delayed frames seen. Reenabling low delay requires a codec flush.
[h264 @ 0x21b29c0] Delayed frames seen. Reenabling low delay requires a codec flush.
Last message repeated 1 times
frame= 736 fps=419 q=0.0 Lsize= 18216kB time=00:00:24.53 bitrate=6082.6kbits/s
video:18216kB audio:0kB subtitle:0 global headers:0kB muxing overhead 0.000000%
[_build] $ sudo ./simple_decode_vmem -auto combined.264 ==> got failure
[sudo] password for dspuser:
libva info: VA-API version 0.35.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_0_32
libva info: va_openDriver() returns 0
Incompatible video parameters. src/simple_decode_vmem.cpp 200
[_build] $