I have compiled my own distro (using buildroot) that contains all packages for making libmfx working with my Intel Computestick STK2mv64CC.
I have followed the MediaSDK opensource guide (https://software.intel.com/en-us/articles/build-and-debug-open-source-media-stack) and the sample_multi_transcode with h264 is working fine now.
I have then downloaded and compiled version 3.4.2 of FFMpeg, with libmfx enabled. I am now trying to run a basic video transcoding using ffmpeg, without success.
This is the command I tried (using the bunny h264 sample video):
ffmpeg -y -init_hw_device qsv=qsv:MFX_IMPL_hw -hwaccel qsv -hwaccel_device qsv -i /trailer_1080p.mov -c:v h264_qsv -framerate 60 -acodec copy out.mp4
Relevant output lines of ffmpeg:
[h264_qsv @ 0x75d9d0] Using the VBR with lookahead (LA) ratecontrol method [h264_qsv @ 0x75d9d0] Error initializing the encoder: unsupported (-3)
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
I also tested with FFMPeg 3.2.4, 3.4.4.
Any clues on this? Is it possible to get a working ffmpeg call using ffmpeg and QSV?
Thank you for your help,
- Development Tools
- Intel® Media SDK
- Intel® Media Server Studio
- Media Processing
FFmpeg configuration with QSV is little bit confused, the good news is you have installed the Media SDK opensource successfully, so we might have to start from very basic:
- Did you get a very basic case running, Like sample_decode?
- If everything still not working, you can refer to following document: this document and this white paper about installation
Let me know if these help.
I finally successfully had a working version of FFMpeg. I used the Intel fork of FFMpeg https://github.com/Intel-FFmpeg-Plugin/Intel_FFmpeg_plugins/tree/intel_ffmpeg-3.4.1 (documentation is here: https://github.com/Intel-FFmpeg-Plugin/Intel_FFmpeg_plugins/wiki)
1. Yes sample_multiple_transcode is working well. I did not tested sample_decode though.
2. I have found and tried the example you provided, but in both documents you tell the user to download the "latest" version of FFMpeg. To my little experience with FFMpeg & QSV, versioni of the MSDK are tightly coupled with a version of FFMpeg.
Due to the legacy of documentation around the web regarding MediaSDK, it is hard for a new developers to jump into this technology. It would be great to add to your latest tutorial (https://software.intel.com/en-us/articles/build-and-debug-open-source-media-stack) how to build FFMpeg as well.
Thank you very much for your support.