[MPlayer-users] Smooth DVD Playback And OpenGL

Jason Van Cleve jason at vancleve.com
Sun Jun 2 03:02:02 CEST 2002


On Sat, 1 Jun 2002 13:35:01 -0400
Luke Harrison <luke at vv.carleton.ca> wrote:

> You have to run the binary in teh Mplayer src dir.
> As well, Its not for me, I aint to X11 guru, but someone might see it :)

Okay, here's the output from that (unstripped?) binary:


bash-2.05a$ gdb ./mplayer
GNU gdb 5.2
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
(gdb) run -v -vo gl2 /mnt/windows-data/video/other/The\ Fellowship\ Of\ The\ Ring\ \(screener\)\ -\ part\ 2.avi
Starting program: /jvc/package/X/media/mplayer/MPlayer-0.90pre4/mplayer -v -vo gl2 /mnt/windows-data/video/other/The\ Fellowship\ Of\ The\ Ring\ \(screener\)\ -\ part\ 2.avi
[New Thread 1024 (LWP 2587)]


MPlayer 0.90pre4-2.95.3 (C) 2000-2002 Arpad Gereoffy (see DOCS!)

CPU vendor name: AuthenticAMD  max cpuid level: 1
CPU: Advanced Micro Devices Athlon TB Thunderbird (Type: 6, Stepping: 4)
extended cpuid-level: 6
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 0 SSE2: 0
Compiled for x86 CPU with features: MMX MMX2 3DNow 3DNowEx
Reading /home/jason/.mplayer/codecs.conf: can't open '/home/jason/.mplayer/codecs.conf': No such file or directory
Reading /usr/local/share/mplayer/codecs.conf: 34 audio & 92 video codecs
CommandLine: '-v' '-vo' 'gl2' '/mnt/windows-data/video/other/The Fellowship Of The Ring (screener) - part 2.avi'
get_path('font/font.desc') -> '/home/jason/.mplayer/font/font.desc'
font: can't open file: /home/jason/.mplayer/font/font.desc
font: can't open file: /usr/local/share/mplayer/font/font.desc
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
Linux RTC init error: Permission denied
Using usleep() timing
get_path('input.conf') -> '/home/jason/.mplayer/input.conf'
Can't open input config file /home/jason/.mplayer/input.conf : No such file or directory
Falling back on default (hardcoded) config
Playing /mnt/windows-data/video/other/The Fellowship Of The Ring (screener) - part 2.avi
Not an URL!
File size is 731994112 bytes
Detected AVI file format!
list_end=0x2292
======= AVI Header =======
us/frame: 41708  (fps=23.976)
max bytes/sec: 0
padding: 0
MainAVIHeader.dwFlags: (272) HAS_INDEX IS_INTERLEAVED
frames  total: 122813   initial: 0
streams: 2
Suggested BufferSize: 0
Size:  640 x 272
list_end=0x10F4
==> Found video stream: 0
======= STREAM Header =======
Type: vids   FCC: div3 (33766964)
Flags: 0
Priority: 0   Language: 0
InitialFrames: 0
Rate: 2997/125 = 23.976
Start: 0   Len: 122813
Suggested BufferSize: 68721
Quality 10000
Sample size: 0
found 'bih', 40 bytes of 40
======= VIDEO Format ======
  biSize 40
  biWidth 640
  biHeight 272
  biPlanes 1
  biBitCount 24
  biCompression 861292868='DIV3'
  biSizeImage 522240
===========================
Regenerating keyframe table for DIVX 3 video
list_end=0x2186
==> Found audio stream: 1
======= STREAM Header =======
Type: auds   FCC:  (0)
Flags: 0
Priority: 0   Language: 0
InitialFrames: 1
Rate: 48000/1152 = 41.667
Start: 0   Len: 213428
Suggested BufferSize: 960
Quality -1
Sample size: 0
found 'wf', 30 bytes of 20
======= WAVE Format =======
Format Tag: 85 (0x55)
Channels: 2
Samplerate: 48000
avg byte/sec: 17760
Block align: 1152
bits/sample: 0
cbSize: 12
mp3.wID=1
mp3.fdwFlags=0x2
mp3.nBlockSize=426
mp3.nFramesPerBlock=1
mp3.nCodecDelay=0
list_end=0x2292
list_end=0x2368
hdr=Software  size=15
Software  : Nandub v1.0rc2
hdr=Name  size=64
Name      : The Lord Of The Rings: The Fellowship Of The Rings DVD Screener
hdr=Subject  size=64
Subject   : The Lord Of The Rings: The Fellowship Of The Rings DVD Screener
hdr=Artist  size=4
Artist    : DVL
hdr=Copyright  size=4
Copyright : DVL
hdr=Comments  size=1
Comments  : 
Broken chunk?  chunksize=1168  (id=JUNK)
list_end=0x2B4F3BF0
Found movie at 0x280C - 0x2B4F3BF0
Reading INDEX block, 336241 chunks for 122813 frames
Broken chunk?  chunksize=0  (id=idx1)
Reading INDEX block, 336241 chunks for 122813 frames
AVI index offset: 0x2808 (movi=0x280C idx0=0x4 idx1=0x1EC)
Auto-selected AVI audio ID = 1
Auto-selected AVI video ID = 0
AVI: Searching for audio stream (id:1)
AVI video length=723699376
VIDEO:  [DIV3]  640x272  24bpp  23.98 fps  1130.3 kbps (138.0 kbyte/s)
[V] filefmt:3  fourcc:0x33564944  size:640x272  fps:23.98  ftime:=0.0417
Clip info: 
 Software: Nandub v1.0rc2
 Name: The Lord Of The Rings: The Fellowship Of The Rings DVD Screener
 Subject: The Lord Of The Rings: The Fellowship Of The Rings DVD Screener
 Artist: DVL
 Copyright: DVL
 Comments: 
get_path('sub/') -> '/home/jason/.mplayer/sub/'
Detected audio codec: [mp3] drv:1 (MPEG layer-2, layer-3)
Initializing audio codec...
Selecting Audio Decoder: [mp3lib] MPEG layer-2, layer-3
dec_audio: Allocating 4608 + 65536 = 70144 bytes for output buffer
mp3lib: made decode tables with MMX optimization
init layer2&3 finished, tables done
mp3lib: using 3DNow!Ex optimized decore!
MPEG 1.0, Layer III, 48000 Hz 160 kbit Joint-Stereo, BPF: 480
Channels: 2, copyright: No, original: Yes, CRC: No, emphasis: 0
AUDIO: srate=48000  chans=2  bps=2  sfmt=0x10  ratio: 20000->192000
==========================================================================
Opening Video Decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec: CPU flags: mmx mmxext 3dnow
INFO: libavcodec init OK!
Detected video codec: [ffdivx] drv:5 prio:0 (FFmpeg DivX ;-) (MS MPEG-4 v3))
==========================================================================
AO: [oss] 48000Hz Stereo Signed 16-bit (Little-Endian)
AO: Description: OSS/ioctl audio output
AO: Author: A'rpi
ao2: 48000 Hz  2 chans  Signed 16-bit (Little-Endian)
audio_setup: using '/dev/dsp' dsp device
audio_setup: sample format: Signed 16-bit (Little-Endian) (requested: Signed 16-bit (Little-Endian))
audio_setup: using 2 channels (requested: 2)
audio_setup: using 48000 Hz samplerate (requested: 48000)
audio_setup: frags:   8/8  (8192 bytes/frag)  free:  65536
Start playing...
VDec: vo config request - 640 x 272, Planar YV12  
[PP] Sorry, postprocessing is not available
vo_debug: query(Planar YV12) returned 0x401 (i=0) 
vo_debug: query(Planar I420) returned 0x0 (i=1) 
vo_debug: query(Planar IYUV) returned 0x0 (i=2) 
Movie-Aspect is undefined - no prescaling applied.
video_out->init(640x272->640x272,flags=0,'MPlayer',0x32315659)
VO: [gl2] 640x272 => 640x272 Planar YV12 
VO: Description: X11 (OpenGL) - multiple textures version
VO: Author: Arpad Gereoffy & Sven Goethel
X11 opening display: :0.0
vo: X11 color mask:  FFFFFF  (R:FF0000 G:FF00 B:FF)
vo: X11 running at 1600x1200 with depth 24 and 32 bits/pixel (":0.0" => local display)
[x11] Create window for WM detect ...
[x11] Unknown wm type...
[gl2] OpenGL Driver Information:
        vendor: NVIDIA Corporation,
        renderer GeForce2 GTS/PCI/3DNOW!,
        version 1.3.1 NVIDIA 29.60
[gl2] You have an OpenGL >= 1.2 capable drivers, GOOD (16bpp and BGR is ok !)
Using MMX2 for colorspace transform
[gl2] YUV init OK!
[gl2] Creating 1x1 textures of size 1024x512 ...
[gl2] antialiasing off
[gl2] bilinear linear
[gl2] Using image_bpp=32, image_bytes=4, isBGR=0, 
        gl_bitmap_format=GL_BGRA, gl_bitmap_type=GL_UNSIGNED_INT_8_8_8_8_REV, 
        gl_alignment=8, rgb_size=0 (0,0,0), a_sz=0, 
        gl_internal_format=GL_RGB8, tweaks=mmx_bpp
[gl2] Resize: 640x272
Disabling DPMS
stat: 1
*** [vo] Exporting mp_image_t, 640x272x12bpp YUV planar, 261120 bytes
X11 error: BadDrawable (invalid Pixmap or Window parameter)
Type: 0, display: 82b27a0, resourceid: 0, serial: 4b
Error code: 9, request code: e, minor code: 0

*** free_stream() called ***
Successfully enabled DPMS

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 2587)]
0x402b66d6 in XSetBackground () from /usr/X11R6/lib/libX11.so.6
(gdb) bt
#0  0x402b66d6 in XSetBackground () from /usr/X11R6/lib/libX11.so.6
#1  0x0807c176 in vo_x11_uninit (display=0x82b27a0, window=16777219)
    at x11_common.c:537
#2  0x08083cd0 in uninit () at vo_gl2.c:1101
#3  0x0806531f in uninit_player (mask=65535) at mplayer.c:300
#4  0x08065417 in exit_player (how=0x8180e72 "X11 error") at mplayer.c:356
#5  0x0807b61d in x11_errorhandler (display=0x82b27a0, event=0xbfffe53c)
    at x11_common.c:174
#6  0x402be75d in _XError () from /usr/X11R6/lib/libX11.so.6
#7  0x402bcd7b in _XReply () from /usr/X11R6/lib/libX11.so.6
#8  0x402a6980 in XGetGeometry () from /usr/X11R6/lib/libX11.so.6
#9  0x0807c2a2 in vo_x11_check_events (mydisplay=0x82b27a0) at x11_common.c:591
#10 0x08083a9b in check_events () at vo_gl2.c:997
#11 0x08068735 in main (argc=5, argv=0xbffffaf4, envp=0xbffffb0c)
    at mplayer.c:1715
#12 0x404a9571 in __libc_start_main () from /lib/libc.so.6
(gdb) disass $eip-32 $eip+32
Dump of assembler code from 0x402b66b6 to 0x402b66f6:
0x402b66b6 <XSetBackground+18>: or     %eax,(%eax)
0x402b66b8 <XSetBackground+20>: mov    0x8(%ebp),%edi
0x402b66bb <XSetBackground+23>: mov    0xc(%ebp),%esi
0x402b66be <XSetBackground+26>: mov    0x4d0(%edi),%eax
0x402b66c4 <XSetBackground+32>: test   %eax,%eax
0x402b66c6 <XSetBackground+34>: je     0x402b66d3 <XSetBackground+47>
0x402b66c8 <XSetBackground+36>: add    $0xfffffff4,%esp
0x402b66cb <XSetBackground+39>: push   %edi
0x402b66cc <XSetBackground+40>: mov    (%eax),%eax
0x402b66ce <XSetBackground+42>: call   *%eax
0x402b66d0 <XSetBackground+44>: add    $0x10,%esp
0x402b66d3 <XSetBackground+47>: mov    0x10(%ebp),%eax
0x402b66d6 <XSetBackground+50>: cmp    %eax,0x20(%esi)
0x402b66d9 <XSetBackground+53>: je     0x402b66e2 <XSetBackground+62>
0x402b66db <XSetBackground+55>: mov    %eax,0x20(%esi)
0x402b66de <XSetBackground+58>: orb    $0x8,0x10(%esi)
0x402b66e2 <XSetBackground+62>: mov    0x4d0(%edi),%eax
0x402b66e8 <XSetBackground+68>: test   %eax,%eax
0x402b66ea <XSetBackground+70>: je     0x402b66f8 <XSetBackground+84>
0x402b66ec <XSetBackground+72>: add    $0xfffffff4,%esp
0x402b66ef <XSetBackground+75>: push   %edi
0x402b66f0 <XSetBackground+76>: mov    0x4(%eax),%eax
---Type <return> to continue, or q <return> to quit---
0x402b66f3 <XSetBackground+79>: call   *%eax
0x402b66f5 <XSetBackground+81>: add    $0x10,%esp
End of assembler dump.
(gdb) quit
The program is running.  Exit anyway? (y or n) y
bash-2.05a$ 


Looks about the same to me, but HTH.

--Jason V. C.




More information about the MPlayer-users mailing list