mirror of https://github.com/mpv-player/mpv
fmt-conversion.h: fix pixfmt.h #include; fixes latest Libav
Change fmt-conversion.h to include <libavutil/pixfmt.h> instead of <libavutil/avutil.h> which no longer indirectly includes the former. This fixes compilation with latest Libav. Also remove superfluous config.h #include. The pixfmt.h #include is needed for 'enum PixelFormat'. avutil.h already stopped including pixfmt.h more than a year ago, but that did not cause visible breakage at the time. AFAIK the C standard does not allow incomplete enum types, but it seems that GCC and other relevant compilers accept function declarations using not-yet-defined enum types without warnings. However, Libav now renamed 'enum PixelFormat' to 'enum AVPixelFormat', adding a '#define PixelFormat AVPixelFormat' for backwards compatibility. We need this compatibility define because we're still using the PixelFormat name, but it of course does not work if pixfmt.h is not included; thus the missing include now caused a compilation failure.
This commit is contained in:
parent
85d185441a
commit
977116a0ca
|
@ -19,8 +19,7 @@
|
||||||
#ifndef MPLAYER_FMT_CONVERSION_H
|
#ifndef MPLAYER_FMT_CONVERSION_H
|
||||||
#define MPLAYER_FMT_CONVERSION_H
|
#define MPLAYER_FMT_CONVERSION_H
|
||||||
|
|
||||||
#include "config.h"
|
#include <libavutil/pixfmt.h>
|
||||||
#include "libavutil/avutil.h"
|
|
||||||
|
|
||||||
enum PixelFormat imgfmt2pixfmt(int fmt);
|
enum PixelFormat imgfmt2pixfmt(int fmt);
|
||||||
int pixfmt2imgfmt(enum PixelFormat pix_fmt);
|
int pixfmt2imgfmt(enum PixelFormat pix_fmt);
|
||||||
|
|
Loading…
Reference in New Issue