[FFmpeg-devel] [PATCHv8] libavcodec: v4l2: add support for v4l2 mem2mem codecs
Jorge Ramirez
jorge.ramirez-ortiz at linaro.org
Sun Sep 3 21:23:01 EEST 2017
On 09/03/2017 08:13 PM, Mark Thompson wrote:
> On 03/09/17 16:26, Jorge Ramirez wrote:
>> On 09/03/2017 04:56 PM, Jorge Ramirez wrote:
>>> On 09/03/2017 02:27 AM, Mark Thompson wrote:
>>>>> + .long_name = NULL_IF_CONFIG_SMALL("V4L2 mem2mem " LONGNAME " decoder wrapper"),\
>>>>> + .type = AVMEDIA_TYPE_VIDEO,\
>>>>> + .id = CODEC ,\
>>>>> + .priv_data_size = sizeof(V4L2m2mContext),\
>>>>> + .priv_class = &v4l2_m2m_ ## NAME ## _dec_class,\
>>>>> + .init = v4l2m2m_decode_init,\
>>>>> + .receive_frame = v4l2m2m_receive_frame,\
>>>>> + .close = ff_v4l2m2m_codec_end,\
>>>>> + .bsfs = bsf_name, \
>>>>> +};
>>>>> +
>>>>> +M2MDEC(h264, "H.264", AV_CODEC_ID_H264, "h264_mp4toannexb");
>>>>> +M2MDEC(hevc, "HEVC", AV_CODEC_ID_HEVC, "h264_mp4toannexb");
>>>> h264_mp4toannexb is for H.264, and will refuse to do anything with H.265:
>>>>
>>>> "[AVBSFContext @ 0x55f4d346c620] Codec 'hevc' (174) is not supported by the bitstream filter 'h264_mp4toannexb'. Supported codecs are: h264 (28)."
>>>>
>>>> (Was this decoder really tested as the commit message claims?)
>>>>
>>> yes it was a couple of versions ago though: without it, the decoded frames could not be displayed using the dragon board 820c.
>>> however just tried again and got the error message that you mentioned;
>>> [...]
>>> [AVBSFContext @ 0xffff74000b90] Codec 'hevc' (174) is not supported by the bitstream filter 'h264_mp4toannexb'. Supported codecs are: h264 (28)
>>> [AVBSFContext @ 0xffff74000b90] Codec 'hevc' (174) is not supported by the bitstream filter 'h264_mp4toannexb'. Supported codecs are: h264 (28)
>>> [AVBSFContext @ 0xffff74000b90] Codec 'hevc' (174) is not supported by the bitstream filter 'h264_mp4toannexb'. Supported codecs are: h264 (28)
>>> [AVBSFContext @ 0xffff74000b90] Codec 'hevc' (174) is not supported by the bitstream filter 'h264_mp4toannexb'. Supported codecs are: h264 (28)
>>> [AVBSFContext @ 0xffff74000b90] Codec 'hevc' (174) is not supported by the bitstream filter 'h264_mp4toannexb'. Supported codecs are: h264 (28)
>>>
>>> yeah now, after removing the h264_mp4toannexb from the decoder, I can not play any HEVC videos on the db820c.....I'll then remove HEVC from the list of supported decoders then. It is a pity.
>>>
>>>
>>>
>> actually I will just remove the filter from the hevc decoder instantiation in case some v4l2 codec (different from the one in the db820) can still benefit
>>
> What do you actually need here? An H.265 annex B bitstream, such as created by hevc_mp4toannexb?
um, yes, I think this was a regression then (I originally had it on v3).
my fault.
https://github.com/ldts/FFmpeg/commit/4cbba823a6ab92609b59cb0e1b1ded470403cd09#diff-143a78d3b451c891d27ad5a4ce321515R224
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
More information about the ffmpeg-devel
mailing list