Opened 6 years ago

Closed 6 years ago

#13314 closed Bug Report - General (Fixed)

Build error in libavcodec with newer x264 versions

Reported by: Frank Phillips Owned by: Peter Bennett
Priority: minor Milestone: 29.2
Component: 3rd Party - FFMPEG Version: v29.1
Severity: medium Keywords:
Cc: Ticket locked: no

Description

I recently upgraded from x264 version 152 to 155 and got this error:

libavcodec/libx264.c: In function ‘X264_frame’:
libavcodec/libx264.c:282:9: error: ‘x264_bit_depth’ undeclared (first use in this function); did you mean ‘x264_picture_t’?
     if (x264_bit_depth > 8)
         ^~~~~~~~~~~~~~
         x264_picture_t
libavcodec/libx264.c:282:9: note: each undeclared identifier is reported only once for each function it appears in
libavcodec/libx264.c: In function ‘X264_init_static’:
libavcodec/libx264.c:892:9: error: ‘x264_bit_depth’ undeclared (first use in this function); did you mean ‘x264_picture_t’?
     if (x264_bit_depth == 8)
         ^~~~~~~~~~~~~~
         x264_picture_t
CC	libavcodec/lossless_audiodsp.o
make[2]: *** [/build/mythtv-fixes-git/src/mythtv/mythtv/external/FFmpeg/common.mak:60: libavcodec/libx264.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/build/mythtv-fixes-git/src/mythtv/mythtv/external/FFmpeg'
make[1]: *** [Makefile:32: FFmpeg-all] Error 2
make[1]: Leaving directory '/build/mythtv-fixes-git/src/mythtv/mythtv/external'
make: *** [Makefile:67: external] Error 2

Upstream bug and fix: https://trac.ffmpeg.org/ticket/6932

Arch Linux MythTV users (including myself) are using a similar patch: https://gist.githubusercontent.com/emerkle826/5a4302abfb09b9b3a4fed598bf3a1538/raw/4d8c178c44e4ec692c86a4516ec5e49e1f93dabf/libx264.patch

I believe master is unaffected due to ffmpeg resyncs.

Change History (5)

comment:1 Changed 6 years ago by Peter Bennett

By default x264 is disabled in the mythtv configure (at least in master). Are you explicitly enabling it in the mythtv configure?

Last edited 6 years ago by Peter Bennett (previous) (diff)

comment:2 Changed 6 years ago by Frank Phillips

Yes, most likely for HLS streaming. I don't think this would be unusual to find in other distro packages, either.

comment:3 Changed 6 years ago by Stuart Auchterlonie

Milestone: needs_triage29.2

comment:4 Changed 6 years ago by Frank Phillips

I can confirm this is fixed by [74fff5c].

Version 0, edited 6 years ago by Frank Phillips (next)

comment:5 Changed 6 years ago by Peter Bennett

Resolution: Fixed
Status: newclosed

Fixed in 74fff5c2856d592b8b2dfd41ac5cc08f372a8993

Author: David Engel <dengel@mythtv.org>
Date:   Thu Oct 4 11:06:54 2018 -0500

    Add support for libx264 version >= 153.
    
    This commit is from the FFmpeg release/3.2 branch.  It has the
    following commit information.
    
    commit 6d654eb036ce44856ca14c176baba8fb1410db32
    Author: Luca Barbato <lu_zero@gentoo.org>
    Date:   Tue Dec 26 12:32:42 2017 +0100
    
        x264: Support version 153
    
        It has native simultaneus 8 and 10 bit support.
    
        (cherry picked from commit c6558e8840fbb2386bf8742e4d68dd6e067d262e)
        (cherry picked from commit 96e8400553ae47f8f8df5b66cc268297ba38824c)
        Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Note: See TracTickets for help on using tickets.