Skip to content

Future-proof libav/FFmpeg usage

For one thing, there are quite a few deprecation warnings still:

../../modules/codec/avcodec/subtitle.c:264:13: warning: ‘pict’ is deprecated [-Wdeprecated-declarations]
../../modules/codec/avcodec/subtitle.c:264:13: warning: ‘data’ is deprecated [-Wdeprecated-declarations]
../../modules/codec/avcodec/subtitle.c:268:13: warning: ‘pict’ is deprecated [-Wdeprecated-declarations]
../../modules/codec/avcodec/subtitle.c:268:13: warning: ‘data’ is deprecated [-Wdeprecated-declarations]
../../modules/codec/avcodec/audio.c:222:5: warning: ‘refcounted_frames’ is deprecated [-Wdeprecated-declarations]
     attribute_deprecated int refcounted_frames;
../../modules/codec/avcodec/video.c:526:5: warning: ‘refcounted_frames’ is deprecated [-Wdeprecated-declarations]
     attribute_deprecated int refcounted_frames;
../../modules/codec/avcodec/vaapi.c:58:12: warning: ‘vaapi_context’ is deprecated [-Wdeprecated-declarations]
 struct attribute_deprecated vaapi_context {
../../modules/codec/avcodec/vaapi.c:58:12: warning: ‘vaapi_context’ is deprecated [-Wdeprecated-declarations]
 struct attribute_deprecated vaapi_context {
../../modules/codec/avcodec/vaapi.c:58:12: warning: ‘vaapi_context’ is deprecated [-Wdeprecated-declarations]
 struct attribute_deprecated vaapi_context {
../../modules/codec/avcodec/encoder.c:1168:13: warning: ‘noise_reduction’ is deprecated [-Wdeprecated-declarations]
../../modules/codec/avcodec/encoder.c:1176:13: warning: ‘noise_reduction’ is deprecated [-Wdeprecated-declarations]
../../modules/codec/avcodec/encoder.c:1287:8: warning: ‘coded_frame’ is deprecated [-Wdeprecated-declarations]
     attribute_deprecated AVFrame *coded_frame;
../../modules/demux/avformat/demux.c:425:13: warning: ‘codec’ is deprecated [-Wdeprecated-declarations]
../../modules/demux/avformat/demux.c:426:13: warning: ‘codec’ is deprecated [-Wdeprecated-declarations]
../../modules/demux/avformat/demux.c:426:13: warning: ‘codec’ is deprecated [-Wdeprecated-declarations]
../../modules/demux/avformat/demux.c:426:13: warning: ‘codec’ is deprecated [-Wdeprecated-declarations]
../../modules/demux/avformat/mux.c:239:5: warning: ‘codec’ is deprecated [-Wdeprecated-declarations]

(There may be more with more bleeding-edge upstream even.)

Those things constitute a proverbial ticking time-bomb. VLC 3.0 will eventually need to be built with newer libav/FFmpeg, e.g. for regression bisection, or for stable tree continuous integration on Debian.

We can't predict all future breakages. But we can at least predict those listed above...

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