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

Jorge Ramirez-Ortiz jorge.ramirez-ortiz at linaro.org
Tue Sep 19 22:48:06 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.

yes, the buffer issues  are resolved and the user can now close the 
encoder/decoder without losing the buffer references.

> I
> also assume the data flow issues got solved.

data flow?

> With that, it would look
> good to me, I guess. If nobody else has comments it could be applied.

please let me post v13 - today/tomorrow-  which cleans the code a bit more 
making it easier to understand and maintain (maybe it will trigger more questions?)

> Btw. I noticed that this apparently never sets chroma_location?

I'll look into that for v13 as well.

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




More information about the ffmpeg-devel mailing list