Skip to content

VLC 3.0.14 does not build with FFmpeg 5.0

I picked up the few commits from the 3.0 branch for fixing building with newer FFmpeg, but there are still quite a bit commits I found on the main branch that are necessary.

codec/avcodec/video.c:1120:32: error: no member named 'pkt_pts' in 'struct AVFrame'
        mtime_t i_pts = frame->pkt_pts;
                        ~~~~~  ^

991ba74b 0834d393

codec/avcodec/video.c:1625:9: error: use of undeclared identifier 'AV_PIX_FMT_VAAPI_VLD'; did you mean 'AV_PIX_FMT_VAAPI'?
        AV_PIX_FMT_VAAPI_VLD,
        ^~~~~~~~~~~~~~~~~~~~
        AV_PIX_FMT_VAAPI
/usr/local/include/libavutil/pixfmt.h:119:5: note: 'AV_PIX_FMT_VAAPI' declared here
    AV_PIX_FMT_VAAPI,
    ^

codec/avcodec/va.c:40:14: error: use of undeclared identifier 'AV_PIX_FMT_VAAPI_VLD'; did you mean 'AV_PIX_FMT_VAAPI'?
        case AV_PIX_FMT_VAAPI_VLD:
             ^~~~~~~~~~~~~~~~~~~~
             AV_PIX_FMT_VAAPI
/usr/local/include/libavutil/pixfmt.h:119:5: note: 'AV_PIX_FMT_VAAPI' declared here
    AV_PIX_FMT_VAAPI,
    ^

72bbf717

codec/avcodec/subtitle.c:94:5: error: implicit declaration of function 'av_codec_set_pkt_timebase' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
    av_codec_set_pkt_timebase(context, AV_TIME_BASE_Q);
    ^

e7190e7a

codec/avcodec/encoder.c:1241:35: error: no member named 'coded_frame' in 'struct AVCodecContext'
       switch ( p_sys->p_context->coded_frame->pict_type )
                ~~~~~~~~~~~~~~~~  ^

8ed4f2a7

demux/avformat/mux.c:94:69: error: no member named 'filename' in 'struct AVFormatContext'
                              >= sizeof (((AVFormatContext *)NULL)->filename) )
                                         ~~~~~~~~~~~~~~~~~~~~~~~~~  ^

demux/avformat/mux.c:130:28: error: no member named 'filename' in 'struct AVFormatContext'
        strcpy( p_sys->oc->filename, p_mux->p_access->psz_path );
                ~~~~~~~~~  ^

a2ce2e3a

demux/avformat/mux.c:384:15: error: no member named 'cur_dts' in 'struct AVStream'
    p_stream->cur_dts = ( p_data->i_dts * p_stream->time_base.den /
    ~~~~~~~~  ^

c2ba623f

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information