[FFmpeg-devel] [PATCHv12] libavcodec: v4l2: add support for v4l2 mem2mem codecs

Jorge Ramirez-Ortiz jorge.ramirez-ortiz at linaro.org
Thu Sep 21 05:01:52 EEST 2017


On 09/19/2017 12:35 PM, wm4 wrote:
> On Mon, 11 Sep 2017 16:26:33 +0200
> Jorge Ramirez-Ortiz <jorge.ramirez-ortiz at linaro.org> wrote:
>
>>      This patchset enhances Alexis Ballier's original patch and validates
>>      it using Qualcomm's Venus hardware (driver recently landed upstream
>>      [1]).
>>
>>      This has been tested on Qualcomm's DragonBoard 410c and 820c
>>      Configure/make scripts have been validated on Ubuntu 10.04 and
>>      16.04.
>>
>>      Tested decoders:
>>             - h264
>>             - h263
>>             - mpeg4
>>             - vp8
>>             - vp9
>>             - hevc
>>
>>      Tested encoders:
>>             - h264
>>             - h263
>>             - mpeg4
>>
>>      Tested transcoding (concurrent encoding/decoding)
>>
>>      Some of the changes introduced:
>>          - v4l2: code cleanup and abstractions added
>>          - v4l2: follow the new encode/decode api.
>>          - v4l2: fix display size for NV12 output pool.
>>          - v4l2: handle EOS.
>>          - v4l2: vp8 and mpeg4 decoding and encoding.
>>          - v4l2: hevc and vp9 support.
>>          - v4l2: generate EOF on dequeue errors.
>>          - v4l2: h264_mp4toannexb filtering.
>>          - v4l2: fixed make install and fate issues.
>>          - v4l2: codecs enabled/disabled depending on pixfmt defined
>>          - v4l2: pass timebase/framerate to the context
>>          - v4l2: runtime decoder reconfiguration.
>>          - v4l2: add more frame information
>>          - v4l2: free hardware resources on last reference being released
>>          - v4l2: encoding: disable b-frames for upstreaming (patch required)
>>
>>      [1] https://lwn.net/Articles/697956/
>>
>>      Reviewed-by: Jorge Ramirez <jorge.ramirez-ortiz at linaro.org>
>>      Reviewed-by: Alexis Ballier <aballier at gentoo.org>
>>      Tested-by: Jorge Ramirez <jorge.ramirez-ortiz at linaro.org>
>> ---
> I assume this version fixes the lifetime issues I've pointed out. I
> also assume the data flow issues got solved. With that, it would look
> good to me, I guess. If nobody else has comments it could be applied.
>
> Btw. I noticed that this apparently never sets chroma_location?

I didnt find anything in v4l2 to retrieve the chroma_location from the kernel 
driver (the API doesnt handle this information).
does ffmpeg need this field and if so, can it be retrieved from somewhere else 
(bitstream perhaps)?

just posted v13. I think the overall quality and feature set should be 
acceptable to be merged upstream (but of course, looking forward for comments if 
not and will continue to be as responsive as possible)



> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel




More information about the ffmpeg-devel mailing list