[MPlayer-users] mplayer crashes with -ao oss:/dev/adsp -ac hwac3

Kresimir Kukulj madmax at iskon.hr
Mon Nov 4 23:11:02 CET 2002


I use mencoder to make a copy of a DVD (lavc+AC3). I separate audio from
video and use ogmtools[1] to create an ogm stream. When playing that file
with AC3 passthrough mplayer crashes:

mplayer -ao oss:/dev/adsp -ac hwac3 bla.ogm

Crash log is below.

Alsa output module works ok. (I prefer oss emulation, because alsa ac3
passthrough can sometimes desync after some seeking ~ 100-200ms. Did anybody
else expirience this ?)

I can upload a small sample if needed.


Also, some unrelated question. ogmtools require divx in some container
(avi/ogm). Is there a way to dump video stream from .avi to another .avi
that contains only video ?
mplayer -dumpvideo produces raw divx which I cannot use with ogmtools.
Did I miss something in The Manual or this is currently unimplemented ?
(Yes, I know. Transcode can do that job.)

[1] <URL:http://www.bunkus.org/videotools/ogmtools/>

Info:
Debian: potato-woody mix
Kernel: 2.4.19
Libc: 2.2.5-14.3
X Window System: 4.1.0-14
gcc: 2.95.4-14
ld: 2.11.90.0.7
as: 2.11.90.0.7

Video card: Siluro NVidia GeForce2 MX200
Video driver: NVidia 1.0-2960
Sound card: SB Live Player 5.1, ALSA 0.9.0rc3-0.2



(gdb) run -v -ao oss:/dev/adsp -ac hwac3 "Rush Hour 2 - 2.ogm"
Starting program: /home/madmax/dvd/mplayer/main/mplayer -v -ao oss:/dev/adsp -ac hwac3 "Rush Hour 2 - 2.ogm"
[New Thread 1024 (LWP 850)]
Using GNU internationalization
Original domain: messages
Original dirname: /usr/share/locale
Current domain: mplayer
Current dirname: /usr/share/locale


MPlayer CVS-021104-20:03-2.95.4 (C) 2000-2002 Arpad Gereoffy (see DOCS)

CPU: Advanced Micro Devices Duron MG Morgan (Family: 6, Stepping: 0)
CPUflags:  MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 0
Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx SSE

Reading /home/madmax/.mplayer/codecs.conf: can't open '/home/madmax/.mplayer/codecs.conf': No such file or directoryReading /etc/mplayer/codecs.conf: 44 audio & 110 video codecs
CommandLine: '-v' '-ao' 'oss:/dev/adsp' '-ac' 'hwac3' 'Rush Hour 2 - 2.ogm'
get_path('font/font.desc') -> '/home/madmax/.mplayer/font/font.desc'
Font /home/madmax/.mplayer/font/font.desc loaded successfully! (206 chars)
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
Failed to open /dev/rtc: Device or resource busy (mplayer should be setuid root or /dev/rtc should be readable by the user.)
Using usleep() timing
get_path('input.conf') -> '/home/madmax/.mplayer/input.conf'
Parsing input config file /home/madmax/.mplayer/input.conf
Input config file /home/madmax/.mplayer/input.conf parsed : 50 binds
Setting up lirc support...

Playing Rush Hour 2 - 2.ogm
Not an URL!
File size is 654632663 bytes
CACHE_PRE_INIT: 0 [0] 0  pre:0  eof:0  
Checking for YUV4MPEG2
DEMUXER: freeing demuxer at 0x83d3210  
ASF_check: not ASF guid!
DEMUXER: freeing demuxer at 0x83d3210  
Checking for NuppelVideo
DEMUXER: freeing demuxer at 0x83d3210  
Checking for MOV
DEMUXER: freeing demuxer at 0x83d3210  
Checking for VIVO
header block 1 size: 103
DEMUXER: freeing demuxer at 0x83d3210  
Checking for REAL
DEMUXER: freeing demuxer at 0x83d3210  
DEMUXER: freeing demuxer at 0x83d3210  
DEMUXER: freeing demuxer at 0x83d3210  
DEMUXER: freeing demuxer at 0x83d3210  
DEMUXER: freeing demuxer at 0x83d3210  
Checking for SMJPEG
DEMUXER: freeing demuxer at 0x83d3210  
==> Found video stream: 0
OGG stream 0 is video (new hdr)
======= VIDEO Format ======
  biSize 40
  biWidth 720
  biHeight 304
  biPlanes 1
  biBitCount 24
  biCompression 1482049860='DIVX'
  biSizeImage 656640
===========================
==> Found audio stream: 1
OGG stream 1 is audio (new hdr)
======= WAVE Format =======
Format Tag: 8192 (0x2000)
Channels: 6
Samplerate: 48000
avg byte/sec: 56000
Block align: 1536
bits/sample: 2
cbSize: 4
Unknown extra header dump: [0] [0] [0] [0] 
OGG stream 2 is text
OGG stream 3 is text
OGG demuxer : found 1 audio stream, 1 video stream and 2 text streams
Detected OGG file format!
[V] filefmt:18  fourcc:0x58564944  size:720x304  fps:25.00  ftime:=0.0400
get_path('sub/') -> '/home/madmax/.mplayer/sub/'
==========================================================================
Forced audio codec: hwac3
Opening audio decoder: [hwac3] AC3 pass-through SP/DIF
dec_audio: Allocating 3840 bytes for input buffer
dec_audio: Allocating 6144 + 65536 = 71680 bytes for output buffer
No accelerated IMDCT transform found
AUDIO: 48000 Hz, 2 ch, 16 bit (0x400), ratio: 56000->192000 (448.0 kbit)
Selected audio codec: [hwac3] afm:hwac3 (AC3 through SPDIF)
==========================================================================
X11 opening display: :0
vo: X11 color mask:  FFFFFF  (R:FF0000 G:FF00 B:FF)
vo: X11 running at 1152x864 with depth 24 and 32 bpp (":0" => local display)
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
INFO: libavcodec init OK!
Selected video codec: [ffodivx] vfm:ffmpeg (FFmpeg MPEG-4)
==========================================================================
Video attribute 'brightness' isn't supported by selected vo & vd! 
ao2: 48000 Hz  2 chans  AC3
audio_setup: using '/dev/adsp' dsp device
Can't set audio device /dev/adsp to AC3 output, trying S16...
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
AO: [oss] 48000Hz 2ch AC3
AO: Description: OSS/ioctl audio output
AO: Author: A'rpi
Building audio filter chain for 48000Hz/2ch/16bit -> 48000Hz/2ch/16bit...
Adding filter dummy 
[dummy] Was reinitialized, rate=48000Hz, nch = 2, format = 0x00000400 and bps = 2
Adding filter format 
[format] Changing number sample format to 0x00000010 and/or bytes per sample to 2 
[dummy] Was reinitialized, rate=48000Hz, nch = 2, format = 0x00000400 and bps = 2
Start playing...
[af_format] Input audio format not yet supported 
Reallocating memory in module format, old len = 0, new len = 65540

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 850)]
0x0813ea8c in play ()


(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x813ea6c to 0x813eaac:
0x813ea6c <play+624>:	je     0x813eaa0 <play+676>
0x813ea6e <play+626>:	jmp    0x813eb72 <play+886>
0x813ea73 <play+631>:	xor    %ebx,%ebx
0x813ea75 <play+633>:	cmp    %edi,%ebx
0x813ea77 <play+635>:	jge    0x813eb72 <play+886>
0x813ea7d <play+641>:	lea    0x0(%esi),%esi
0x813ea80 <play+644>:	mov    0x28(%esp,1),%edx
0x813ea84 <play+648>:	movzbw (%ebx,%esi,1),%ax
0x813ea89 <play+653>:	shl    $0x8,%eax
0x813ea8c <play+656>:	mov    %ax,(%edx,%ebx,2)
0x813ea90 <play+660>:	inc    %ebx
0x813ea91 <play+661>:	cmp    %edi,%ebx
0x813ea93 <play+663>:	jl     0x813ea80 <play+644>
0x813ea95 <play+665>:	jmp    0x813eb72 <play+886>
0x813ea9a <play+670>:	lea    0x0(%esi),%esi
0x813eaa0 <play+676>:	xor    %ebx,%ebx
0x813eaa2 <play+678>:	cmp    %edi,%ebx
0x813eaa4 <play+680>:	jge    0x813eb72 <play+886>
0x813eaaa <play+686>:	lea    0x0(%esi),%esi
End of assembler dump.


(gdb) info all-registers
eax            0x8000	32768
ecx            0x1	1
edx            0x8476cb8	138898616
ebx            0x99a4	39332
esp            0xbfffe434	0xbfffe434
ebp            0x0	0x0
esi            0x83f4608	138364424
edi            0x10000	65536
eip            0x813ea8c	0x813ea8c
eflags         0x10216	66070
cs             0x23	35
ss             0x2b	43
ds             0x2b	43
es             0x2b	43
fs             0x0	0
gs             0x7	7
st0            -nan(0x12b5a10139d351b0)	(raw 0xffff12b5a10139d351b0)
st1            -nan(0xc6d79e8e585679e7)	(raw 0xffffc6d79e8e585679e7)
st2            -nan(0xe620801a1d7764ce)	(raw 0xffffe620801a1d7764ce)
st3            -nan(0x3d8a2b72a71e3147)	(raw 0xffff3d8a2b72a71e3147)
st4            -nan(0x3aeb7ad9ecbd46cc)	(raw 0xffff3aeb7ad9ecbd46cc)
st5            -nan(0x9eebb67350a53534)	(raw 0xffff9eebb67350a53534)
st6            -nan(0x5c5224219a7ad032)	(raw 0xffff5c5224219a7ad032)
st7            -nan(0xad1cd0d296585b49)	(raw 0xffffad1cd0d296585b49)
fctrl          0x37f	895
fstat          0x120	288
ftag           0xffff	65535
fiseg          0x0	0
fioff          0x0	0
foseg          0x0	0
fooff          0x0	0
fop            0x0	0
xmm0           0xffffffffffffffffffffffffffffffff
xmm1           0xffffffffffffffffffffffffffffffff
xmm2           0xffffffffffffffffffffffffffffffff
xmm3           0xffffffffffffffffffffffffffffffff
---Type <return> to continue, or q <return> to quit---
xmm4           0xffffffffffffffffffffffffffffffff
xmm5           0xffffffffffffffffffffffffffffffff
xmm6           0xffffffffffffffffffffffffffffffff
xmm7           0xffffffffffffffffffffffffffffffff
mxcsr          0x1f80	8064

(gdb) bt
#0  0x0813ea8c in play ()
(gdb) 

-- 
Kresimir Kukulj                      madmax at iskon.hr
+--------------------------------------------------+
Old PC's never die. They just become Unix terminals.




More information about the MPlayer-users mailing list