building mplayer for ti-demo-x11-image

Hi,

Almost there, but I got mplayer failing to build correctly. I building
ti-demo-x11-image, from org.openembedded.dev master, against distro
angstrom-2008.1 which is pulling mplayer 0.0+1.0rc3+svnr30165, which
is the same as angstrom-2010.

Any ideas on how to fix it? I'd really like to test TI's accelerated
video decoding on the BB.

Here is the log:

arm-angstrom-linux-gnueabi-gcc -march=armv7-a -mtune=cortex-a8

-mfpu=neon -mfloat-abi=softfp -mthumb-interwork -mno-thumb
-mthumb-interwork -mno-thumb -Wundef -Wdisabled-optimization
-Wno-pointer-sign -Wdeclaration-after-statement -std=gnu99
-isystem/media/stardust/ilyes/openembedded/build/tmp/sysroots/armv7a-angstrom-linux-gnueabi/usr/include
-fexpensive-optimizations -ftree-vectorize -fomit-frame-pointer -O4
-ffast-math -I/media/stardust/ilyes/openembedded/build/tmp/work/armv7a-angstrom-linux-gnueabi/mplayer-0.0+1.0rc3+svnr30165-r25/trunk/libdvdread4
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I.
-isystem/media/stardust/ilyes/openembedded/build/tmp/sysroots/armv7a-angstrom-linux-gnueabi/usr/include
-D_REENTRANT -I/media/stardust/ilyes/openembedded/build/tmp/sysroots/armv7a-angstrom-linux-gnueabi/usr/include/SDL
-D_REENTRANT -I/media/stardust/ilyes/openembedded/build/tmp/sysroots/armv7a-angstrom-linux-gnueabi/usr/include/freetype2
-I/media/stardust/ilyes/openembedded/build/tmp/sysroots/armv7a-angstrom-linux-gnueabi/usr/include
-I/media/stardust/ilyes/openembedded/build/tmp/sysroots/armv7a-angstrom-linux-gnueabi/usr/include/schroedinger-1.0
-I/media/stardust/ilyes/openembedded/build/tmp/sysroots/armv7a-angstrom-linux-gnueabi/usr/include/orc-0.4
  -isystem/media/stardust/ilyes/openembedded/build/tmp/sysroots/armv7a-angstrom-linux-gnueabi/usr/include
-c -o mplayer.o mplayer.c

In file included from mplayer.c:50:
libavutil/intreadwrite.h:34: error: expected '=', ',', ';', 'asm' or

'__attribute__' before 'av_alias64'

libavutil/intreadwrite.h:41: error: expected '=', ',', ';', 'asm' or

'__attribute__' before 'av_alias32'

libavutil/intreadwrite.h:46: error: expected '=', ',', ';', 'asm' or

'__attribute__' before 'av_alias16'

In file included from mplayer.c:50:
libavutil/intreadwrite.h:183: error: conflicting types for 'av_alias'
libavutil/intreadwrite.h:182: error: previous declaration of

'av_alias' was here

libavutil/intreadwrite.h:184: error: conflicting types for 'av_alias'
libavutil/intreadwrite.h:182: error: previous declaration of

'av_alias' was here

In file included from mplayer.c:832:
cfg-mplayer.h:358: warning: initialization discards qualifiers from

pointer target type

In file included from cfg-mplayer.h:363,
                 from mplayer.c:832:
cfg-common-opts.h:13: warning: initialization discards qualifiers

from pointer target type

cfg-common-opts.h:25: warning: initialization discards qualifiers

from pointer target type

cfg-common-opts.h:158: warning: initialization discards qualifiers

from pointer target type

cfg-common-opts.h:165: warning: initialization discards qualifiers

from pointer target type

cfg-common-opts.h:170: warning: initialization discards qualifiers

from pointer target type

cfg-common-opts.h:174: warning: initialization discards qualifiers

from pointer target type

cfg-common-opts.h:176: warning: initialization discards qualifiers

from pointer target type

cfg-common-opts.h:218: warning: initialization discards qualifiers

from pointer target type

cfg-common-opts.h:242: warning: initialization discards qualifiers

from pointer target type

cfg-common-opts.h:265: warning: initialization discards qualifiers

from pointer target type

cfg-common-opts.h:268: warning: initialization discards qualifiers

from pointer target type

In file included from mplayer.c:832:
cfg-mplayer.h:367: warning: initialization discards qualifiers from

pointer target type

cfg-mplayer.h:368: warning: initialization discards qualifiers from

pointer target type

cfg-mplayer.h:369: warning: initialization discards qualifiers from

pointer target type

cfg-mplayer.h:371: warning: initialization discards qualifiers from

pointer target type

mplayer.c: In function 'reinit_video_chain':
mplayer.c:2239: warning: passing argument 1 of 'vf_open_plugin' from

incompatible pointer type

make: *** [mplayer.o] Error 1
FATAL: oe_runmake failed

Thanks,

-Ilyes Gouta

Hi,

After spending some quality time fixing mplayer 0.0+1.0rc3+svnr30165,
I decided to drop it and update recipes/mplayer_svn.bb to fetch the
latest code from trunk, that's rev. 32037. I had to fix H263_AIC, a
hard coded offset in libavcodec/arm/asm-offsets.h by displacing some
fields in struct MpegEncContext (in libavcodec/mpegvideo.h) and
computing the new value.

Attached are mplayer_svn.bb and the two patch files required for a
successful build (an updated omapfb.patch).

-Ilyes Gouta

mplayer_svn.bb (6.49 KB)

adjust-h263-aic-offset.patch (2.39 KB)

omapfb-svn32037.patch (1.37 KB)