Opened 16 years ago

Closed 15 years ago

#1055 closed defect (fixed)

Can't play VOB files with ac3 5.1

Reported by: guilo19@… Owned by: reimar
Priority: normal Component: ad
Version: unspecified Severity: normal
Keywords: Cc: wbrana@…, jadr@…
Blocked By: Blocking:
Reproduced by developer: no Analyzed by developer: no

Description

This problem occurs with latest svn version of mplayer

Short explanation :

When I try to play a vob files from my HDD, which have been unencrypted, if it contains ac3 with 6 channels mplayer crashes. But if I play the same file from the dvd with the mplayer dvd:// command, everything works fine

guilo@linux:/TEMP$ mplayer -v VTS_01_1.VOB

CPLAYER: MPlayer dev-SVN-r26360-4.2.1 (C) 2000-2008 MPlayer Team

CPUDETECT: CPU: Intel(R) Pentium(R) 4 CPU 3.20GHz (Family: 15, Model: 3, Stepping: 4)

CPLAYER: CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
CPLAYER: Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2

GLOBAL: get_path('codecs.conf') -> '/home/guilo/.mplayer/codecs.conf'

CODECCFG: Reading /home/guilo/.mplayer/codecs.conf: Can't open '/home/guilo/.mplayer/codecs.conf': No such file or directory
CODECCFG: Reading /usr/local/etc/mplayer/codecs.conf: Can't open '/usr/local/etc/mplayer/codecs.conf': No such file or directory

CPLAYER: Using built-in default codecs.conf.
CPLAYER: Configuration: --enable-color-console --enable-dvdnav --disable-dvdread-internal
CPLAYER: CommandLine: '-v' 'VTS_01_1.VOB'

OSD: init_freetype

GLOBAL: get_path('font/font.desc') -> '/home/guilo/.mplayer/font/font.desc'

OSD: font: can't open file: /home/guilo/.mplayer/font/font.desc
OSD: font: can't open file: /usr/local/share/mplayer/font/font.desc
OSD: Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay

GLOBAL: get_path('fonts') -> '/home/guilo/.mplayer/fonts'

CPLAYER: Using nanosleep() timing

GLOBAL: get_path('input.conf') -> '/home/guilo/.mplayer/input.conf'

INPUT: Can't open input config file /home/guilo/.mplayer/input.conf: No such file or directory
INPUT: Can't open input config file /usr/local/etc/mplayer/input.conf: No such file or directory
INPUT: Falling back on default (hardcoded) input config

LIRC: Setting up LIRC support...

mplayer: could not connect to socket
mplayer: No such file or directory

LIRC: Failed to open LIRC support. You will not be able to use your remote control.

GLOBAL: get_path('VTS_01_1.VOB.conf') -> '/home/guilo/.mplayer/VTS_01_1.VOB.conf'

CPLAYER:

Playing VTS_01_1.VOB.

GLOBAL: get_path('sub/') -> '/home/guilo/.mplayer/sub/'

OPEN: [file] File size is 7058919424 bytes
OPEN: STREAM: [file] VTS_01_1.VOB
OPEN: STREAM: Description: File
OPEN: STREAM: Author: Albeu
OPEN: STREAM: Comment: based on the code from ??? (probably Arpi)

HEADER: LAVF_check: no clue about this gibberish!

DEMUX: Checking for YUV4MPEG2

HEADER: ASF_check: not ASF guid!

DEMUX: Checking for NuppelVideo
DEMUX: Checking for REAL
DEMUX: Checking for SMJPEG

OPEN: Searching demuxer type for filename VTS_01_1.VOB ext: .VOB
OPEN: Trying demuxer 2 based on filename extension

DEMUX: system stream synced at 0xD (13)!
DEMUX: {ERROR5,c=0}

DEMUXER: ==> Found video stream: 0

DEMUX: {ERROR5,c=0}

DEMUXER: ==> Found audio stream: 129
DEMUXER: ==> Found audio stream: 128

DEMUX: {ERROR5,c=22}

DEMUXER: MPEG-PS file format detected.

DEMUX: {ERROR5,c=0}

DECVIDEO: Searching for sequence header... OK!
DECVIDEO: VIDEO: MPEG2 720x576 (aspect 2) 25.000 fps 7500.0 kbps (937.5 kbyte/s)

CPLAYER: [V] filefmt:2 fourcc:0x10000002 size:720x576 fps:25.00 ftime:=0.0400

GLOBAL: get_path('sub/') -> '/home/guilo/.mplayer/sub/'

VIDEOOUT: X11 opening display: :0.0
VIDEOOUT: vo: X11 color mask: FFFFFF (R:FF0000 G:FF00 B:FF)
VIDEOOUT: vo: X11 running at 1440x900 with depth 24 and 32 bpp (":0.0" => local display)
VIDEOOUT: [x11] Detected wm supports NetWM.
VIDEOOUT: [x11] Detected wm supports FULLSCREEN state.
VIDEOOUT: [x11] Detected wm supports ABOVE state.
VIDEOOUT: [x11] Detected wm supports BELOW state.
VIDEOOUT: [x11] Detected wm supports STAYS_ON_TOP state.
VIDEOOUT: [x11] Current fstype setting honours FULLSCREEN STAYS_ON_TOP ABOVE BELOW X atoms
VIDEOOUT: [xv common] Drawing no colorkey.
VIDEOOUT: [xv common] Maximum source image dimensions: 2046x2046

CPLAYER: ==========================================================================

DECVIDEO: Opening video decoder: [mpegpes] MPEG 1/2 Video passthrough
DECVIDEO: VDec: vo config request - 720 x 576 (preferred colorspace: Mpeg PES)
DECVIDEO: Trying filter chain: vo
DECVIDEO: Could not find matching colorspace - retrying with -vf scale...

VFILTER: Opening video filter: [scale]
VFILTER: SwScale params: -1 x -1 (-1=no scaling)

DECVIDEO: Trying filter chain: scale vo

CPLAYER: The selected video_out device is incompatible with this codec.

Try appending the scale filter to your filter list,
e.g. -vf spp,scale instead of -vf spp.

DECVIDEO: VDecoder init failed :(
DECVIDEO: Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
DECVIDEO: INFO: libavcodec init OK!
DECVIDEO: Selected video codec: [ffmpeg2] vfm: ffmpeg (FFmpeg MPEG-2)

CPLAYER: ==========================================================================
CPLAYER: ==========================================================================

DECAUDIO: Opening audio decoder: [liba52] AC3 decoding with liba52
DECAUDIO: dec_audio: Allocating 3840 bytes for input buffer.
DECAUDIO: dec_audio: Allocating 6144 + 65536 = 71680 bytes for output buffer.

Using SSE optimized IMDCT transform

CPLAYER:

MPlayer interrupted by signal 11 in module: init_audio_codec

CPLAYER: - MPlayer crashed by bad usage of CPU/FPU/RAM.
Recompile MPlayer with --enable-debug and make a 'gdb' backtrace and
disassembly. Details in DOCS/HTML/en/bugreports_what.html#bugreports_crash.
CPLAYER: - MPlayer crashed. This shouldn't happen.
It can be a bug in the MPlayer code _or_ in your drivers _or_ in your
gcc version. If you think it's MPlayer's fault, please read
DOCS/HTML/en/bugreports.html and follow the instructions there. We can't and
won't help unless you provide this information when reporting a possible bug.

And GDB Backtrace :

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb67576e0 (LWP 21591)]
0x08169276 in a52_fillbuff ()
(gdb) bt
#0 0x08169276 in a52_fillbuff ()
#1 0xb0000000 in ?? ()
#2 0x08a526d8 in ?? ()
#3 0x00000000 in ?? ()
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x8169256 to 0x8169296:
0x08169256 <a52_fillbuff+174>: lea 0x1(%edx),%eax
0x08169259 <a52_fillbuff+177>: mov %eax,0x4(%esp)
0x0816925d <a52_fillbuff+181>: mov %edx,(%esp)
0x08169260 <a52_fillbuff+184>: call 0x808ffe4 <memmove@plt>
0x08169265 <a52_fillbuff+189>: subl $0x1,0x38(%ebx)
0x08169269 <a52_fillbuff+193>: cmpl $0x7,0x38(%ebx)
0x0816926d <a52_fillbuff+197>: jg 0x81691e4 <a52_fillbuff+60>
0x08169273 <a52_fillbuff+203>: mov 0x4(%ebx),%ecx
0x08169276 <a52_fillbuff+206>: mov (%ecx),%edx
0x08169278 <a52_fillbuff+208>: cmp 0x4(%ecx),%edx
0x0816927b <a52_fillbuff+211>: jge 0x8169380 <a52_fillbuff+472>
0x08169281 <a52_fillbuff+217>: mov 0x8(%ecx),%eax
0x08169284 <a52_fillbuff+220>: movzbl (%eax,%edx,1),%esi
0x08169288 <a52_fillbuff+224>: lea 0x1(%edx),%eax
0x0816928b <a52_fillbuff+227>: mov %eax,(%ecx)
0x0816928d <a52_fillbuff+229>: mov 0x38(%ebx),%eax
0x08169290 <a52_fillbuff+232>: mov 0x34(%ebx),%edx
0x08169293 <a52_fillbuff+235>: mov %esi,%ecx
0x08169295 <a52_fillbuff+237>: mov %cl,(%edx,%eax,1)
End of assembler dump.
(gdb) info all-registers
eax 0x8a526d8 145041112
ecx 0x0 0
edx 0x0 0
ebx 0x8a25358 144855896
esp 0xbf9a9470 0xbf9a9470
ebp 0xbf9a9490 0xbf9a9490
esi 0x8a25358 144855896
edi 0xbf9a9494 -1080388460
eip 0x8169276 0x8169276 <a52_fillbuff+206>
eflags 0x10297 [ CF PF AF SF IF RF ]
cs 0x73 115
ss 0x7b 123
ds 0x7b 123
es 0x7b 123
fs 0x0 0
gs 0x33 51
st0 0 (raw 0x00000000000000000000)
st1 0 (raw 0x00000000000000000000)
st2 0 (raw 0x00000000000000000000)
st3 0 (raw 0x00000000000000000000)
st4 1 (raw 0x3fff8000000000000000)
st5 -0.99879545620517238679186844407809076 (raw 0xbffeffb10f1bcb6beeb0)
st6 -0.049067674327418134657590245706337839 (raw 0xbffac8fb2f886ec12a08)
st7 -0.00013599221711046993732452392578125 (raw 0xbff28e99220000000000)
fctrl 0x37f 895
fstat 0x20 32
ftag 0xffff 65535
fiseg 0x73 115
fioff 0x857b120 139964704
foseg 0x7b 123
---Type <return> to continue, or q <return> to quit---
fooff 0x898813c 144212284
fop 0x502 1282
xmm0 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x28, 0x12, 0x5, 0x4, 0x3, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x2,

0x2, 0x2, 0x2, 0x2}, v8_int16 = {0x1228, 0x405, 0x303, 0x203, 0x202, 0x202, 0x202, 0x202}, v4_int32 = {0x4051228, 0x2030303, 0x2020202,
0x2020202}, v2_int64 = {0x203030304051228, 0x202020202020202}, uint128 = 0x02020202020202020203030304051228}

xmm1 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x2, 0x1 <repeats 15 times>}, v8_int16 = {0x102, 0x101, 0x101,

0x101, 0x101, 0x101, 0x101, 0x101}, v4_int32 = {0x1010102, 0x1010101, 0x1010101, 0x1010101}, v2_int64 = {0x101010101010102, 0x101010101010101},

uint128 = 0x01010101010101010101010101010102}

xmm2 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,

0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}

xmm3 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,

0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}

xmm4 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,

0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}

xmm5 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,

0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}

xmm6 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,

0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}

xmm7 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,

0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}

mxcsr 0x1f80 [ IM DM ZM OM UM PM ]
mm0 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm1 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm2 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm3 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm4 {uint64 = 0x8000000000000000, v2_int32 = {0x0, 0x80000000}, v4_int16 = {0x0, 0x0, 0x0, 0x8000}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0,

0x0, 0x0, 0x80}}

mm5 {uint64 = 0xffb10f1bcb6beeb0, v2_int32 = {0xcb6beeb0, 0xffb10f1b}, v4_int16 = {0xeeb0, 0xcb6b, 0xf1b, 0xffb1}, v8_int8 = {0xb0,

0xee, 0x6b, 0xcb, 0x1b, 0xf, 0xb1, 0xff}}

mm6 {uint64 = 0xc8fb2f886ec12a08, v2_int32 = {0x6ec12a08, 0xc8fb2f88}, v4_int16 = {0x2a08, 0x6ec1, 0x2f88, 0xc8fb}, v8_int8 = {0x8,
---Type <return> to continue, or q <return> to quit---

0x2a, 0xc1, 0x6e, 0x88, 0x2f, 0xfb, 0xc8}}

mm7 {uint64 = 0x8e99220000000000, v2_int32 = {0x0, 0x8e992200}, v4_int16 = {0x0, 0x0, 0x2200, 0x8e99}, v8_int8 = {0x0, 0x0, 0x0, 0x0,

0x0, 0x22, 0x99, 0x8e}}

Change History (6)

comment:1 by guilo19@…, 16 years ago

Component: aoad

comment:2 by wbrana@…, 16 years ago

Cc: wbrana@… added

I can confirm this crash. Revision 26300 doesn't crash.

GNU gdb 6.8
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu"...
(gdb) run
Starting program: /usr/bin/mplayer title2.vob
MPlayer dev-SVN-r26753-3.4.6 (C) 2000-2008 MPlayer Team
CPU: Intel(R) Core(TM)2 Duo CPU E6750 @ 2.66GHz (Family: 6, Model: 15, Stepping: 11)
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2

Playing title2.vob.

MPEG-PS file format detected.
VIDEO: MPEG2 720x576 (aspect 3) 25.000 fps 7800.0 kbps (975.0 kbyte/s)
[gl] using extended formats. Use -vo gl:nomanyfmts if playback fails.
Opening video filter: [hqdn3d]
==========================================================================
Opening video decoder: [mpegpes] MPEG 1/2 Video passthrough
VDec: vo config request - 720 x 576 (preferred colorspace: Mpeg PES)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
The selected video_out device is incompatible with this codec.
Try appending the scale filter to your filter list,
e.g. -vf spp,scale instead of -vf spp.
VDecoder init failed :(
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffmpeg2] vfm: ffmpeg (FFmpeg MPEG-2)
==========================================================================
==========================================================================
Opening audio decoder: [liba52] AC3 decoding with liba52
Using SSE optimized IMDCT transform

Program received signal SIGSEGV, Segmentation fault.
0x000000000053f154 in a52_fillbuff (sh_audio=0x16ffaa0) at libmpcodecs/ad_liba52.c:62
62 libmpcodecs/ad_liba52.c: No such file or directory.

in libmpcodecs/ad_liba52.c

(gdb) bt full
#0 0x000000000053f154 in a52_fillbuff (sh_audio=0x16ffaa0) at libmpcodecs/ad_liba52.c:62

c = -581813984
length = -1342177280
flags = 0
sample_rate = 0
bit_rate = 0

#1 0x000000000053f4ae in init (sh_audio=0x16ffaa0) at libmpcodecs/ad_liba52.c:172

a52_accel = 2952790016
level = 1
bias = 384
flags = 0

#2 0x000000000049c173 in init_audio (sh_audio=0x16ffaa0, codecname=0x0, afm=0x0, status=1, selected=0x7fffe9bc0a18) at libmpcodecs/dec_audio.c:95

mpadec = (ad_functions_t *) 0xc40500
i = 1
orig_fourcc = 0
force = 0

#3 0x000000000049c49b in init_best_audio_codec (sh_audio=0x16ffaa0, audio_codec_list=0x16e9930, audio_fm_list=0x0) at libmpcodecs/dec_audio.c:270

status = 1
selected = (stringset_t) 0x1700cf0
ac_l_default = {0x932cfa "", 0x0}

#4 0x0000000000441ad3 in reinit_audio_chain () at mplayer.c:1585
No locals.
#5 0x0000000000445ec2 in main (argc=1, argv=0x0) at mplayer.c:3576

time_frame = 0
blit_frame = 0
mem_ptr = 0xc319e0 ""
opt_exit = 0
i = 24113552

comment:3 by compn, 16 years ago

did you upload sample (5mb) of your vob file to ftp://upload.mplayerhq.hu/MPlayer/incoming/ with a filename like bug_1055.vob?

also try mplayer -demuxer lavf -ac ffac3
but not sure if it works with 5.1 ...

comment:4 by wbrana@…, 16 years ago

It seems to be fixed in r27120.

comment:5 by jadr@…, 16 years ago

Cc: jadr@… added

comment:6 by compn, 15 years ago

Resolution: fixed
Status: newclosed

bug > closed

Note: See TracTickets for help on using tickets.