Hello, The following patchset add support for hevc mediacodec decoding. The patchset applies on top of: * lavc/mediacodecdec_h264: move bsf variable declaration at the top of the function * lavc/mediacodecdec_h264: use h264_parse.h instead of h264dec.h which are going to be pushed in one hour or so (if there is no objection).
A development branch can be found at: https://github.com/mbouron/FFmpeg/tree/feature/mediacodec-hevc-v2 [PATCH 1/2] lavc/hevc: store VPS/SPS/PPS data This commit stores the original sodb vps/sps/pps data to their respective structures defined in hevc.h. The data will be used later on by the MediaCodec decoder which requires the extradata to be vps+sps+pps. Note: the H264 decoder stores the original sodb sps/pps the same way in the PPS/SPS structures. [PATCH 2/2] lavc: add hevc mediacodec decoder This commit adds the hevc mediacodec decoder as well as an hevc extradata parsing function (ff_hevc_decode_extradata) which matches the api of ff_h264_decode_extradata. The code of ff_hevc_decode_extradata is taken from hevc.c (and adapted to not rely on the HEVCContext structure). The code of hevc_decode_nal_units is taken from the simple version of parse_nal_units from hevc_parser.c. The function has been adapted to not rely on the AVCodecParserContext and to not call hevc_parse_slice_header which is not relevant when parsing extradata. Obviously there is work to do here (like for h264) to unify all the hevc extradata parsing functions as there are: * hevc_decode_extradata (hevc.c) * two variants of parse_nal_units (hevc_parser.c), one variant is chosen over the other depending on the presence of the hevc decoder * and now ff_hevc_decode_extradata (hevc_parse.c) The patch lacks a minor bump in libavcodec/version.h and a changelog entry (which are going to be added in another revision of the patch). Matthieu _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel