[FFmpeg-devel] [PATCH] avcodec: Use get_ue_golomb_long() when needed
Michael Niedermayer
michael at niedermayer.cc
Tue Dec 29 11:39:55 CET 2015
On Mon, Dec 28, 2015 at 11:04:08PM -0800, Mark Harris wrote:
> get_ue_golomb() cannot decode values larger than 8190 (the maximum
> value that can be golomb encoded in 25 bits) and produces the error
> "Invalid UE golomb code" if a larger value is encountered. Use
> get_ue_golomb_long() instead (which supports 63 bits, up to 4294967294)
> when valid h264/hevc values can exceed 8190.
>
> This updates decoding of the following values: (maximum)
> first_mb_in_slice 36863* for level 5.2
> abs_diff_pic_num_minus1 131071
> difference_of_pic_nums_minus1 131071
> idr_pic_id 65535
> recovery_frame_cnt 65535
> frame_packing_arrangement_id 4294967294
> frame_packing_arrangement_repetition_period 16384
> display_orientation_repetition_period 16384
>
> An alternative would be to modify get_ue_golomb() to handle encoded
> values of up to 49 bits as was done for get_se_golomb() in a92816c.
> In that case get_ue_golomb() could continue to be used for all of
> these except frame_packing_arrangement_id.
> ---
> libavcodec/golomb.h | 2 +-
> libavcodec/h264.c | 2 +-
> libavcodec/h264_parser.c | 6 +++---
> libavcodec/h264_refs.c | 4 ++--
> libavcodec/h264_sei.c | 10 +++++-----
> libavcodec/h264_slice.c | 2 +-
> libavcodec/hevc_sei.c | 2 +-
> 7 files changed, 14 insertions(+), 14 deletions(-)
applied
thanks
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Breaking DRM is a little like attempting to break through a door even
though the window is wide open and the only thing in the house is a bunch
of things you dont want and which you would get tomorrow for free anyway
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20151229/b0c165a0/attachment.sig>
More information about the ffmpeg-devel
mailing list