[MPlayer-dev-eng] a4pm vs mp4a - endian MP4 problem?

Steven M. Schultz sms at 2BSD.COM
Thu Apr 24 04:46:26 CEST 2003


Hi!

	Whose responsibility is it to flip the bytes around?   A .MP4 file
	which plays fine (both audio and video) on an Intel based system 
	produces video only on a big-endian (G4 OS/X system).

	Seems that libfaad2 is unhappy with the 'a4pm' struct which leads me
	to wonder if it's MPlayer's task to flip bytes before calling the
	faad routines.

	Is anyone else running MPlayer on a big endian based cpu?   If so
	what needs to be done to handle raw DV and MPEG-4/AAC types of files?

	On a bigendian system:

[DHCP-250:~/Documents] sms% mplayer -vo sdl test1.mp4

MPlayer dev-CVS-030413-18:18-3.1 (C) 2000-2003 Arpad Gereoffy (see DOCS)

AltiVec found
Reading config file /usr/local/etc/mplayer/mplayer.conf: No such file or directory
Reading config file /Users/stevenschultz/.mplayer/config
Reading /Users/stevenschultz/.mplayer/codecs.conf: can't open '/Users/stevenschultz/.mplayer/codecs.conf': No such file or directory
Reading /usr/local/etc/mplayer/codecs.conf: 53 audio & 140 video codecs
font: can't open file: /Users/stevenschultz/.mplayer/font/font.desc
Font /usr/local/share/mplayer/font/font.desc loaded successfully! (206 chars)
Using usleep() timing
Can't open input config file /Users/stevenschultz/.mplayer/input.conf : No such file or directory
Can't open input config file /usr/local/etc/mplayer/input.conf : No such file or directory
Falling back on default (hardcoded) input config

Playing test1.mp4
MOV: File-Type unknown Major-Brand: mp42
QuickTime/MOV file format detected.
--------------
MOV track #0: 1197 chunks, 9342 samples
Audio bits: 16  chans: 2  rate: 32000
MOV: Found MPEG4 audio Elementary Stream Descriptor atom (51)!
Fourcc: a4pm
--------------
MOV track #1: 1196 chunks, 8959 samples
MOV: Found MPEG4 movie Elementary Stream Descriptor atom (69)!
Image size: 320 x 240 (24 bpp)
Display size: 320 x 240
Fourcc: v4pm  Codec: ''
--------------
MOV track #2: 1 chunks, 0 samples
Generic track - not completly understood! (id: 2)
--------------
MOV track #3: 1 chunks, 0 samples
Generic track - not completly understood! (id: 3)
--------------
MOV: longest streams: A: #0 (9342 samples)  V: #1 (8959 samples)
==========================================================================
Opening audio decoder: [faad] AAC (MPEG2/4 Advanced Audio Coding)
FAAD: Failed to initialize the decoder!
ADecoder init failed :(
ADecoder init failed :(
*** Try to upgrade /Users/stevenschultz/.mplayer/codecs.conf from etc/codecs.conf
*** If it still does not work, read DOCS/codecs.html!
Cannot find codec for audio format 0x6134706D.
==========================================================================
SDL: Using driver: Quartz
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffodivx] vfm:ffmpeg (FFmpeg MPEG-4)
==========================================================================
Audio: no sound
Starting playback...
VDec: vo config request - 320 x 240 (preferred csp: Planar YV12)
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.33:1 - prescaling to correct movie aspect.
VO: [sdl] 320x240 => 320x240 Planar YV12 
V:   0.0    1   0%  0%  0.0% 0 0 0%
Exiting... (Quit)
Script done on Sun Apr 13 19:19:21 2003


	On a Intel platform using the same exact input video:

MPlayer dev-CVS-2003Apr10-23:37-2.95.3 (C) 2000-2003 Arpad Gereoffy (see DOCS)

CPU: Intel Celeron 2/Pentium III Coppermine,Geyserville (Family: 6, Stepping: 1)
Detected cache-line size is 32 bytes
CPUflags:  MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 0 SSE2: 0
Compiled for x86 CPU with extensions: MMX MMX2

Reading config file /usr/local/etc/mplayer/mplayer.conf: No such file or directory
Reading config file /users/sms/.mplayer/config
Reading /users/sms/.mplayer/codecs.conf: can't open '/users/sms/.mplayer/codecs.conf': No such file or directory
Reading /usr/local/etc/mplayer/codecs.conf: 50 audio & 140 video codecs
font: can't open file: /users/sms/.mplayer/font/font.desc
Font /usr/local/share/mplayer/font/font.desc loaded successfully! (206 chars)
Using usleep() timing
Input config file /users/sms/.mplayer/input.conf parsed : 50 binds

Playing test1.mp4
MOV: File-Type unknown Major-Brand: mp42
QuickTime/MOV file format detected.
--------------
MOV track #0: 1197 chunks, 9342 samples
Audio bits: 16  chans: 2  rate: 32000
MOV: Found MPEG4 audio Elementary Stream Descriptor atom (51)!
Fourcc: mp4a
--------------
MOV track #1: 1196 chunks, 8959 samples
MOV: Found MPEG4 movie Elementary Stream Descriptor atom (69)!
Image size: 320 x 240 (24 bpp)
Display size: 320 x 240
Fourcc: mp4v  Codec: ''
--------------
MOV track #2: 1 chunks, 0 samples
Generic track - not completly understood! (id: 2)
--------------
MOV track #3: 1 chunks, 0 samples
Generic track - not completly understood! (id: 3)
--------------
MOV: longest streams: A: #0 (9342 samples)  V: #1 (8959 samples)
==========================================================================
Opening audio decoder: [faad] AAC (MPEG2/4 Advanced Audio Coding)
FAAD: compressed input bitrate missing, assuming 128kbit/s!
AUDIO: 32000 Hz, 2 ch, 16 bit (0x10), ratio: 16000->128000 (128.0 kbit)
Selected audio codec: [faad] afm:faad (AAC MPEG2/MPEG4 Audio)
==========================================================================
vo: X11 running at 1600x1200 with depth 24 and 32 bpp (":0.0" => local display)
Disabling DPMS
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffodivx] vfm:ffmpeg (FFmpeg MPEG-4)
==========================================================================
Checking audio filter chain for 32000Hz/2ch/16bit -> 32000Hz/2ch/16bit...
AF_pre: af format: 2 bps, 2 ch, 32000 hz, little endian signed int 
AF_pre: 32000Hz 2ch Signed 16-bit (Little-Endian)
AO: [oss] 32000Hz 2ch Signed 16-bit (Little-Endian) (2 bps)

	Is FAAD2 broken on big endian systems or is MPlayer supposed to
	do something before calling the libfaad routines?

	Cheers,
	Steven Schultz



More information about the MPlayer-dev-eng mailing list