[MPlayer-dev-eng] Allow compilation with Libav
Reinhard Tartler
siretart at tauware.de
Mon Jan 2 18:33:44 CET 2012
On Mo, Jan 02, 2012 at 18:15:34 (CET), Nicolas George wrote:
> Le tridi 13 nivôse, an CCXX, Reinhard Tartler a écrit :
>> There are no "leaders" in libav.
>>
>> But be assured, I am active in libav and I do care about mplayer
>> compatibility, otherwise I wouldn't submit such patches to mplayer.
>
> I see you do, but I am afraid you are quite isolated. But maybe it is an
> unfounded impression from me.
Let's assume your impression unfounded for now.
>
>> As for escape130, I've just submitted the decoder to libav. If it gets
>> accepted, then I think we've found an acceptable solution.
>
> I saw your patch, but I had not yet time to comment. I fear it will not
> work. You insert the CODEC_ID in the middle of the list, so you change the
> value of all subsequent ids. That should only happen with major bumps.
I see. Will update the patch then.
As for the ffmpeg/libav politics, let's please leave them aside for now
and focus on the following patch:
--- fmt-conversion.c (revision 34482)
+++ fmt-conversion.c (working copy)
@@ -24,6 +24,11 @@
#include "libaf/af_format.h"
#include "fmt-conversion.h"
+// libav.org's libavutil is missing this
+#ifndef PIX_FMT_GBR24P
+#define PIX_FMT_GBR24P PIX_FMT_GBRP
+#endif
+
static const struct {
int fmt;
enum PixelFormat pix_fmt;
@@ -57,7 +62,9 @@
{IMGFMT_RGB8, PIX_FMT_BGR8},
{IMGFMT_RGB4, PIX_FMT_BGR4},
{IMGFMT_BGR8, PIX_FMT_PAL8},
+#ifdef PIX_FMT_0RGB32
{IMGFMT_BGR32, PIX_FMT_0RGB32},
+#endif
#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(51, 20, 1)
{IMGFMT_GBR24P, PIX_FMT_GBR24P},
#endif
--- libmpdemux/mp_taglists.c (revision 34482)
+++ libmpdemux/mp_taglists.c (working copy)
@@ -43,7 +43,9 @@
{ CODEC_ID_COOK, MKTAG('c', 'o', 'o', 'k')},
{ CODEC_ID_DSICINAUDIO, MKTAG('D', 'C', 'I', 'A')},
{ CODEC_ID_EAC3, MKTAG('E', 'A', 'C', '3')},
+#ifdef CONFIG_FFWAVESYNTH_DECODER
{ CODEC_ID_FFWAVESYNTH, MKTAG('F', 'F', 'W', 'S')},
+#endif
{ CODEC_ID_G723_1, MKTAG('7', '2', '3', '1')},
{ CODEC_ID_INTERPLAY_DPCM, MKTAG('I', 'N', 'P', 'A')},
{ CODEC_ID_MLP, MKTAG('M', 'L', 'P', ' ')},
@@ -85,7 +87,9 @@
{ CODEC_ID_DVVIDEO, MKTAG('d', 'v', 's', 'd')},
{ CODEC_ID_EAC3, MKTAG('E', 'A', 'C', '3')},
{ CODEC_ID_ESCAPE124, MKTAG('E', '1', '2', '4')},
+#ifdef CONFIG_ESCAPE130_DECODER
{ CODEC_ID_ESCAPE130, MKTAG('E', '1', '3', '0')},
+#endif
{ CODEC_ID_FLV1, MKTAG('F', 'L', 'V', '1')},
{ CODEC_ID_G729, MKTAG('G', '7', '2', '9')},
{ CODEC_ID_H264, MKTAG('H', '2', '6', '4')},
In my tests, this allows compilation against libav. Moreover, this
version does allow mplayer to playback escape130 files when compiled
against FFmpeg.
--
Gruesse/greetings,
Reinhard Tartler, KeyID 945348A4
More information about the MPlayer-dev-eng
mailing list