Bug with Matroska format and Real Video 9/10 codec
Hello. I am using Mac OS X 10.4, the latest binary from the separate mplayerosx sourceforge project (dated May 20). I have installed the latest codecs from Real by downloading their nightly build. I can't play a Matroska file containing a video track encoded with RV40. It crashes everytime. I have tried MANY samples from the mplayer site, all Real videos work fine when they are in .avi, but the ones in .mkv always make mplayer crash. I have even extracted the video track using mkvextract, and once extracted, mplayer plays it without problems, so the bug is clearly related to how Mplayer handles .mkv files. Other .mkv files using codecs such as DivX / XVid work fine though... Any help on that? What can I do to help more? (I am going to download and build the CVS version of Mplayer soon, but I think it's a bit of work to build it under OS X...) Jean-Noël
On Thu, Jul 14, 2005 at 11:02:44PM -0700, Jean-Noël Rivasseau wrote:
What can I do to help more?
Provide the sample or parts of it.
(I am going to download and build the CVS version of Mplayer soon, but I think it's a bit of work to build it under OS X...)
Just install xcode. Diego P.S.: You should read http://mplayerhq.hu/DOCS/HTML/en/bugreports.html again. If you haven't already you are wrong on this list.
What can I do to help more?
Provide the sample or parts of it.
Sorry, I was maybe not clear: it crashes with *ALL* the Real Video 9 files in Matroska container that I've tried; For instance it crashes on http://www.mplayerhq.hu/MPlayer/samples/Matroska/matrix/ Matrix.Reloaded.Trailer-RV9-Karl640x432_HE_AAC_subtitled_chapters.mkv The crash, btw, is a sig 11 on decode_video module.
(I am going to download and build the CVS version of Mplayer soon, but I think it's a bit of work to build it under OS X...)
Just install xcode.
I had gcc and everything installed of course, as I am a developer, but "the bit of work" I mentioned meant that it would take some time, at least on my old machine, to compile it. Anyway I am compiling latest CVS as we speak, but I think the bug will still be present, I have tried a binary compiled on July, 3rd and it was still there.
Diego
P.S.: You should read http://mplayerhq.hu/DOCS/HTML/en/bugreports.html again. If you haven't already you are wrong on this list.
I have read that. Thanks
I just finished to compile latest CVS. I can confirm that the bug is still there. Should I file something with BugZilla ? Jean-Noel On 15-Jul-05, at 1:02 PM, Jean-Noël Rivasseau wrote:
What can I do to help more?
Provide the sample or parts of it.
Sorry, I was maybe not clear: it crashes with *ALL* the Real Video 9 files in Matroska container that I've tried; For instance it crashes on
http://www.mplayerhq.hu/MPlayer/samples/Matroska/matrix/ Matrix.Reloaded.Trailer-RV9-Karl640x432_HE_AAC_subtitled_chapters.mkv
The crash, btw, is a sig 11 on decode_video module.
(I am going to download and build the CVS version of Mplayer soon, but I think it's a bit of work to build it under OS X...)
Just install xcode.
I had gcc and everything installed of course, as I am a developer, but "the bit of work" I mentioned meant that it would take some time, at least on my old machine, to compile it. Anyway I am compiling latest CVS as we speak, but I think the bug will still be present, I have tried a binary compiled on July, 3rd and it was still there.
Diego
P.S.: You should read http://mplayerhq.hu/DOCS/HTML/en/ bugreports.html again. If you haven't already you are wrong on this list.
I have read that.
Thanks
_______________________________________________ MPlayer-advusers mailing list MPlayer-advusers@mplayerhq.hu http://mplayerhq.hu/mailman/listinfo/mplayer-advusers
On Fri, Jul 15, 2005 at 09:53:58PM -0700, Jean-Noël Rivasseau wrote:
I just finished to compile latest CVS. I can confirm that the bug is still there. Should I file something with BugZilla ?
Feel free to (and CC me if you do), but reread the bug reporting guidelines again. You started out not providing even 10% of the necessary info. Since we started this thread here we might as well continue it here now. Diego
Hello again, Sorry, I did not include gdb output and all the other stuff because I thought it was a bug that could be reproduced easily on any developer machine... I still think it is (eg, i am not sure it is specific to OS X). Anyway: uname -a 8.1.0 Darwin Kernel Version 8.1.0: Tue May 10 18:16:08 PDT 2005; root:xnu-792.1.5.obj~4/RELEASE_PPC Power Macintosh powerpc also known as Mac OS X 10.4.1 gcc -v Using built-in specs. Target: powerpc-apple-darwin8 Configured with: /private/var/tmp/gcc/gcc-5026.obj~19/src/configure -- disable-checking --prefix=/usr --mandir=/share/man --enable- languages=c,objc,c++,obj-c++ --program-transform-name=/^[cg][^+.-]*$/ s/$/-4.0/ --with-gxx-include-dir=/include/gcc/darwin/4.0/c++ -- build=powerpc-apple-darwin8 --host=powerpc-apple-darwin8 -- target=powerpc-apple-darwin8 Thread model: posix gcc version 4.0.0 (Apple Computer, Inc. build 5026) ld -v Apple Computer, Inc. version cctools-590.obj~12 (?? strange output?) as --version Apple Computer, Inc. version cctools-590.obj~12, GNU assembler version 1.38 libc version: not applicable to OS X I guess, anyway it is the one that comes with 10.4.1 Hardware and drivers : powerPC 7400, Nvidia Geforce 2 MX, OS X drivers with 10.4.1 gdb output below GNU gdb 6.1-20040303 (Apple version gdb-413) (Wed May 18 10:17:02 GMT 2005) Copyright 2004 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 "powerpc-apple-darwin"...Reading symbols for shared libraries ................ done (gdb) run -v ../saint_seiya_done/saint_seiya_001_[v2-new][dvdrip] [www.zero-absolu.ff.st].mkv Starting program: /Users/elvanor/Desktop/MPlayer-20050715/mplayer - v ../saint_seiya_done/saint_seiya_001_[v2-new][dvdrip][www.zero- absolu.ff.st].mkv Reading symbols for shared libraries .............................................................. ........ done MPlayer dev-CVS-050714-21:00-4.0.0 (C) 2000-2005 MPlayer Team AltiVec found CPU: PowerPC CommandLine: '-v' '../saint_seiya_done/saint_seiya_001_[v2-new] [dvdrip][www.zero-absolu.ff.st].mkv' init_freetype get_path('font/font.desc') -> '/Users/elvanor/.mplayer/font/font.desc' font: can't open file: /Users/elvanor/.mplayer/font/font.desc font: can't open file: /usr/local/share/mplayer/font/font.desc Using Unoptimized OnScreenDisplay Using Darwin accurate timing get_path('input.conf') -> '/Users/elvanor/.mplayer/input.conf' Can't open input config file /Users/elvanor/.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 get_path('saint_seiya_001_[v2-new][dvdrip][www.zero- absolu.ff.st].mkv.conf') -> '/Users/elvanor/.mplayer/saint_seiya_001_ [v2-new][dvdrip][www.zero-absolu.ff.st].mkv.conf' Playing ../saint_seiya_done/saint_seiya_001_[v2-new][dvdrip][www.zero- absolu.ff.st].mkv. [file] File size is 206064791 bytes STREAM: [file] ../saint_seiya_done/saint_seiya_001_[v2-new][dvdrip] [www.zero-absolu.ff.st].mkv STREAM: Description: File STREAM: Author: Albeu STREAM: Comment: based on the code from ??? (probably Arpi) Checking for YUV4MPEG2 ASF_check: not ASF guid! Checking for Nullsoft Streaming Video Checking for NuppelVideo Checking for REAL Checking for SMJPEG [mkv] Found the head... [mkv] + a segment... [mkv] /---- [ parsing seek head ] --------- [mkv] /---- [ parsing seek head ] --------- [mkv] \---- [ parsing seek head ] --------- [mkv] /---- [ parsing cues ] ----------- [mkv] \---- [ parsing cues ] ----------- [mkv] \---- [ parsing seek head ] --------- [mkv] |+ segment information... [mkv] | + duration: 1276.276s [mkv] |+ segment tracks... [mkv] | + a track... [mkv] | + Track number: 1 [mkv] | + Track type: Video [mkv] | + Codec ID: V_REAL/RV40 [mkv] | + CodecPrivate, length 34 [mkv] | + Default duration: 33.333ms ( = 30.000 fps) [mkv] | + Language: und [mkv] | + Video track [mkv] | + Pixel width: 640 [mkv] | + Pixel height: 416 [mkv] | + Display width: 640 [mkv] | + Display height: 480 [mkv] | + Default flag: 1 [mkv] | + a track... [mkv] | + Track number: 2 [mkv] | + Track type: Audio [mkv] | + Codec ID: A_VORBIS [mkv] | + CodecPrivate, length 3854 [mkv] | + Language: fre [mkv] | + Audio track [mkv] | + Sampling frequency: 48000.000000 [mkv] | + Channels: 1 [mkv] | + Default flag: 1 [mkv] | + a track... [mkv] | + Track number: 3 [mkv] | + Track type: Subtitle [mkv] | + Codec ID: S_TEXT/UTF8 [mkv] | + Language: mis [mkv] | + Default flag: 1 [mkv] | + a track... [mkv] | + Track number: 4 [mkv] | + Track type: Audio [mkv] | + Codec ID: A_VORBIS [mkv] | + CodecPrivate, length 3957 [mkv] | + Language: jpn [mkv] | + Audio track [mkv] | + Sampling frequency: 48000.000000 [mkv] | + Channels: 2 [mkv] | + Default flag: 0 [mkv] | + a track... [mkv] | + Track number: 5 [mkv] | + Track type: Subtitle [mkv] | + Codec ID: S_TEXT/UTF8 [mkv] | + Language: fre [mkv] | + Default flag: 0 [mkv] |+ found cluster, headers are parsed completely :) [mkv] Track ID 1: video (V_REAL/RV40), -vid 0 [mkv] Track ID 2: audio (A_VORBIS), -aid 0, -alang fre [mkv] Track ID 3: subtitles (S_TEXT/UTF8), -sid 0, -slang mis [mkv] Track ID 4: audio (A_VORBIS), -aid 1, -alang jpn [mkv] Track ID 5: subtitles (S_TEXT/UTF8), -sid 1, -slang fre ==> Found video stream: 1 [mkv] Aspect: 0.000000 [mkv] Will play video track 1 ==> Found audio stream: 2 [mkv] Will play audio track 2 Matroska file format detected. VIDEO: [04VR] 640x416 24bpp 30.000 fps 0.0 kbps ( 0.0 kbyte/s) [V] filefmt:31 fourcc:0x30345652 size:640x480 fps:30.00 ftime:=0.0333 get_path('sub/') -> '/Users/elvanor/.mplayer/sub/' get_path('default.sub') -> '/Users/elvanor/.mplayer/default.sub' ======================================================================== == Opening audio decoder: [libvorbis] Ogg/Vorbis audio decoder dec_audio: Allocating 4096 + 65536 = 69632 bytes for output buffer. ad_vorbis, extradata seems is 3854 bytes long ad_vorbis, offset: 2, length: 30 ad_vorbis, offset: 3, length: 45 ad_vorbis, header sizes: 30 45 3776 OggVorbis: Bitstream is 1 channel, 48000Hz, 96001bit/s VBR OggVorbis: Encoded by: Xiph.Org libVorbis I 20020717 OggVorbis: Init OK! AUDIO: 48000 Hz, 1 ch, s16be, 96.0 kbit/12.50% (ratio: 12000->96000) Selected audio codec: [vorbis] afm:libvorbis (OggVorbis Audio Decoder) ======================================================================== == Reading symbols for shared libraries .. done Reading symbols for shared libraries . done Reading symbols for shared libraries .. done Reading symbols for shared libraries . done Reading symbols for shared libraries . done Reading symbols for shared libraries . done ======================================================================== == Opening video decoder: [realvid] RealVideo decoder realvideo codec id: 0x40008000 sub-id: 0x01481020 opening shared obj '/usr/local/lib/codecs/drvc.so' Error: dlopen(/usr/local/lib/codecs/drvc.so, 1): image not found ERROR: Could not open required DirectShow codec drvc.so. Read the RealVideo section of the DOCS! VDecoder init failed :( Opening video decoder: [realvid] RealVideo decoder realvideo codec id: 0x40008000 sub-id: 0x01481020 opening shared obj '/usr/local/lib/codecs/drv4.so.6.0' Error: dlopen(/usr/local/lib/codecs/drv4.so.6.0, 1): image not found ERROR: Could not open required DirectShow codec drv4.so.6.0. Read the RealVideo section of the DOCS! VDecoder init failed :( Opening video decoder: [realvid] RealVideo decoder realvideo codec id: 0x40008000 sub-id: 0x01481020 ERROR: Could not open required DirectShow codec drv43260.dll. Read the RealVideo section of the DOCS! VDecoder init failed :( Opening video decoder: [realvid] RealVideo decoder realvideo codec id: 0x40008000 sub-id: 0x01481020 opening shared obj '/usr/local/lib/codecs/drvc.bundle/Contents/MacOS/ drvc' Reading symbols for shared libraries . done INFO: RealVideo codec init OK! Selected video codec: [rv40mac] vfm:realvid (Mac OS X RealPlayer 9 RV40 decoder) ======================================================================== == Building audio filter chain for 48000Hz/1ch/s16be -> 0Hz/0ch/s8... [libaf] Adding filter dummy [dummy] Was reinitialized: 48000Hz/1ch/s16be [dummy] Was reinitialized: 48000Hz/1ch/s16be AO: [macosx] source: 48000.0Hz 16bit [lpcm] int BE S packed Reading symbols for shared libraries . done Reading symbols for shared libraries . done AO: [macosx] 48000Hz 1ch s16be (2 bps) AO: Description: Darwin/Mac OS X native audio output AO: Author: Timothy J. Wood & Dan Christiansen & Chris Roccati Building audio filter chain for 48000Hz/1ch/s16be -> 48000Hz/1ch/ s16be... [dummy] Was reinitialized: 48000Hz/1ch/s16be [dummy] Was reinitialized: 48000Hz/1ch/s16be Starting playback... TS: base=00000000 TS: 00000000 -> 00000000 (0000) 0 06 28 00 2F 0 TS: 00000043 -> 00000000 (0043) 2 46 28 10 E0 0 TS: 00000044 -> 00000021 (0021) 3 6A 28 08 60 33 TS: 00000085 -> 00000043 (0085) 2 48 28 21 60 35 TS: 00000086 -> 00000064 (0064) 3 6A 28 19 20 33 TS: 000000C8 -> 00000085 (00C8) 2 4A 28 32 20 33 TS: 000000C9 -> 000000A7 (00A7) 3 6A 28 29 E0 34 TS: 0000010B -> 000000C8 (010B) 2 4A 28 42 E0 33 TS: 0000010C -> 000000EA (00EA) 3 6A 28 3A A0 34 TS: base=00000000 TS: 00000190 -> 0000010B (0190) 1 2D 20 64 2F 33 TS: 00000191 -> 0000012C (012C) 3 6C 20 4B 17 33 TS: 00000192 -> 0000014E (014E) 3 6E 20 53 97 34 TS: 00000193 -> 0000016F (016F) 3 70 20 5B D7 33 TS: 00000216 -> 00000190 (0216) 2 4C 20 85 A0 33 TS: 00000217 -> 000001B2 (01B2) 3 72 20 6C A0 34 TS: 00000218 -> 000001D3 (01D3) 3 74 20 74 E0 33 TS: 00000219 -> 000001F5 (01F5) 3 72 20 7D 60 34 Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_INVALID_ADDRESS at address: 0x0d848c10 0x0168c1e0 in CBaseBitstream::Get1Bit () (gdb) bt #0 0x0168c1e0 in CBaseBitstream::Get1Bit () #1 0x01683fac in Decoder::parseBitStream () #2 0x01670574 in Decoder::Decode () #3 0x01666420 in _RV40toYUV420Transform () #4 0x00079160 in decode (sh=0x130f7d0, data=0x2838c10, len=815, flags=77254656) at vd_realvid.c:341 #5 0x00044880 in decode_video (sh_video=0x430000, start=0x2838c00 "", in_size=815, drop_frame=0) at dec_video.c:311 #6 0x00007380 in main (argc=4128768, argv=0x430000) at mplayer.c:2346 (gdb) disass $pc-32 $pc+32 Dump of assembler code from 0x168c1c0 to 0x168c200: 0x0168c1c0 <_ZN14CBaseBitstream7Get1BitEv+28>: addi r9,r9,1 0x0168c1c4 <_ZN14CBaseBitstream7Get1BitEv+32>: stw r9,4(r3) 0x0168c1c8 <_ZN14CBaseBitstream7Get1BitEv+36>: clrlwi r3,r11,31 0x0168c1cc <_ZN14CBaseBitstream7Get1BitEv+40>: stw r0,12(r8) 0x0168c1d0 <_ZN14CBaseBitstream7Get1BitEv+44>: blr 0x0168c1d4 <_ZN14CBaseBitstream7Get1BitEv+48>: lwz r9,4(r3) 0x0168c1d8 <_ZN14CBaseBitstream7Get1BitEv+52>: addi r11,r10,1 0x0168c1dc <_ZN14CBaseBitstream7Get1BitEv+56>: subfic r10,r10,7 0x0168c1e0 <_ZN14CBaseBitstream7Get1BitEv+60>: lbz r0,0(r9) 0x0168c1e4 <_ZN14CBaseBitstream7Get1BitEv+64>: stw r11,12(r3) 0x0168c1e8 <_ZN14CBaseBitstream7Get1BitEv+68>: sraw r0,r0,r10 0x0168c1ec <_ZN14CBaseBitstream7Get1BitEv+72>: clrlwi r3,r0,31 0x0168c1f0 <_ZN14CBaseBitstream7Get1BitEv+76>: blr 0x0168c1f4 <_ZN14CBaseBitstream10SearchBitsEmmm+0>: mflr r0 0x0168c1f8 <_ZN14CBaseBitstream10SearchBitsEmmm+4>: stmw r23,-36(r1) 0x0168c1fc <_ZN14CBaseBitstream10SearchBitsEmmm+8>: stw r0,8(r1) End of assembler dump. (gdb) info all-registers r0 0x0 0 r1 0xbfffdef0 3221217008 r2 0xa0001fdc 2684362716 r3 0x284ae00 42249728 r4 0x0 0 r5 0x2a0 672 r6 0xffffffff 4294967295 r7 0x1779e3c 24616508 r8 0x284ae00 42249728 r9 0xd848c10 226790416 r10 0x7 7 r11 0x1 1 r12 0x90001760 2415925088 r13 0x0 0 r14 0x0 0 r15 0x284ae00 42249728 r16 0x410 1040 r17 0x16dc800 23971840 r18 0x1 1 r19 0x284e400 42263552 r20 0x1701300 24122112 r21 0x3c1 961 r22 0x0 0 r23 0x1701f40 24125248 r24 0x1701f20 24125216 r25 0xffffff 16777215 r26 0x2d0c 11532 r27 0x2d0c 11532 r28 0x1704dbc 24137148 r29 0x22222204 572662276 r30 0x284e400 42263552 r31 0x168394c 23607628 f0 0 (raw 0x0000000000000000) f1 0 (raw 0x0000000000000000) f2 1 (raw 0x3ff0000000000000) f3 32 (raw 0x4040000000000000) f4 8948.4625850340144 (raw 0x40c17a3b35fc845b) f5 1 (raw 0x3ff0000000000000) f6 8192 (raw 0x40c0000000000000) f7 32 (raw 0x4040000000000000) f8 4503601774854176 (raw 0x4330000080000020) f9 32 (raw 0x4040000000000000) f10 -0 (raw 0x8000000000000000) f11 0.68266665935516357 (raw 0x3fe5d867c0000000) f12 4503599627370496 (raw 0x4330000000000000) f13 4503599627370496 (raw 0x4330000000000000) f14 -238423838475.15292 (raw 0xc24bc19587859393) f15 -238423838475.15292 (raw 0xc24bc19587859393) f16 -238423838475.15292 (raw 0xc24bc19587859393) f17 -238423838475.15292 (raw 0xc24bc19587859393) f18 -238423838475.15292 (raw 0xc24bc19587859393) f19 -238423838475.15292 (raw 0xc24bc19587859393) f20 -238423838475.15292 (raw 0xc24bc19587859393) f21 -238423838475.15292 (raw 0xc24bc19587859393) f22 -238423838475.15292 (raw 0xc24bc19587859393) f23 -238423838475.15292 (raw 0xc24bc19587859393) f24 -238423838475.15292 (raw 0xc24bc19587859393) f25 -238423838475.15292 (raw 0xc24bc19587859393) f26 0 (raw 0x0000000000000000) f27 0 (raw 0x0000000000000000) f28 324569.14480331395 (raw 0x4113cf64944751e7) f29 4503601774854144 (raw 0x4330000080000000) f30 489 (raw 0x407e900000000000) f31 4503599627370496 (raw 0x4330000000000000) v0 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v1 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v2 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v3 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v4 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v5 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v6 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v7 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v8 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v9 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v10 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v11 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v12 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v13 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v14 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v15 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v16 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v17 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v18 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v19 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v20 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v21 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v22 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v23 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v24 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v25 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v26 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v27 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v28 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v29 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v30 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) v31 { uint128 = 0x7fffdead7fffdead7fffdead7fffdead, v4_float = {nan(0x7fdead), nan(0x7fdead), nan(0x7fdead), nan (0x7fdead)}, v4_int32 = {2147475117, 2147475117, 2147475117, 2147475117}, v8_int16 = {32767, -8531, 32767, -8531, 32767, -8531, 32767, -8531}, v16_int8 = "\177?ޭ\177?ޭ\177?ޭ\177?ޭ" } (raw 0x7fffdead7fffdead7fffdead7fffdead) pc 0x168c1e0 23642592 ps 0x200d930 33610032 cr 0x82222204 2183275012 lr 0x1683fac 23609260 ctr 0x90001760 2415925088 xer 0x20000004 536870916 mq 0x0 0 fpscr 0x82002000 2181046272 vscr 0x10001 65537 vrsave 0x0 0
On Sat, Jul 16, 2005 at 10:34:29PM -0700, Jean-Noël Rivasseau wrote:
Sorry, I did not include gdb output and all the other stuff because I thought it was a bug that could be reproduced easily on any developer machine... I still think it is (eg, i am not sure it is specific to OS X). Anyway:
It's specific to PPC, it works flawlessly on i386. Thus only a few devs can reproduce it.
Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_INVALID_ADDRESS at address: 0x0d848c10 0x0168c1e0 in CBaseBitstream::Get1Bit () (gdb) bt #0 0x0168c1e0 in CBaseBitstream::Get1Bit () #1 0x01683fac in Decoder::parseBitStream () #2 0x01670574 in Decoder::Decode () #3 0x01666420 in _RV40toYUV420Transform () #4 0x00079160 in decode (sh=0x130f7d0, data=0x2838c10, len=815, flags=77254656) at vd_realvid.c:341 #5 0x00044880 in decode_video (sh_video=0x430000, start=0x2838c00 "", in_size=815, drop_frame=0) at dec_video.c:311 #6 0x00007380 in main (argc=4128768, argv=0x430000) at mplayer.c:2346
IIUC this is crashing in the .so, so there is nothing we can do about it. Except maybe try to upgrade to newer version of the .so files that don't have the problem. Diego
It's specific to PPC, it works flawlessly on i386. Thus only a few devs can reproduce it.
Ok, good to know it doesn't happen on i386.
Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_INVALID_ADDRESS at address: 0x0d848c10 0x0168c1e0 in CBaseBitstream::Get1Bit () (gdb) bt #0 0x0168c1e0 in CBaseBitstream::Get1Bit () #1 0x01683fac in Decoder::parseBitStream () #2 0x01670574 in Decoder::Decode () #3 0x01666420 in _RV40toYUV420Transform () #4 0x00079160 in decode (sh=0x130f7d0, data=0x2838c10, len=815, flags=77254656) at vd_realvid.c:341 #5 0x00044880 in decode_video (sh_video=0x430000, start=0x2838c00 "", in_size=815, drop_frame=0) at dec_video.c:311 #6 0x00007380 in main (argc=4128768, argv=0x430000) at mplayer.c: 2346
IIUC this is crashing in the .so, so there is nothing we can do about it. Except maybe try to upgrade to newer version of the .so files that don't have the problem.
I am using the latest version of the .so files, a nightly build (btw, it is not a .so library, but a bundle package, since I am on OS X, but it is similar to linux .so). I am going to contact Real Helix community about this bug, however I am not entirely sure the culprit is not mplayer. As I said, if I extract the file from the matroska container, the crash doesn't happen so obviously the codec does its job. My guess would be that mplayer somehow sends a broken input to the .so codec when mplayer reads from the matroska container. That broken input later leads to a crash in the .so file during decoding, but the inital problem comes from mplayer not sending the correct stream of bytes... Of course, I am no expert on this, it's just a guess. Jean-Noël
Hey, I have an idea what might go wrong here. I'll send a patch for you to test tomorrow. Mosu -- If Darl McBride was in charge, he'd probably make marriage unconstitutional too, since clearly it de-emphasizes the commercial nature of normal human interaction, and probably is a major impediment to the commercial growth of prostitution. - Linus Torvalds
Hey, please try the attached patch. I don't have a big endian machine here that is even remotely capable of playing video, so I cannot test it myself. Mosu -- If Darl McBride was in charge, he'd probably make marriage unconstitutional too, since clearly it de-emphasizes the commercial nature of normal human interaction, and probably is a major impediment to the commercial growth of prostitution. - Linus Torvalds
Thanks for the patch, I am suspecting too an endianness problem. However the patch as is won't compile, it fails on line 2721: hdr->timestamp = le2me_32(mkv_d->last_pts * 1000); It looks like mkv_d->last_pts * 1000 is a float and le2me_32 don't like a float as input. I tried to cast it to an int but the crash is still there. I should maybe cast it to something different ? Thanks Jean-Noël
Hey,
please try the attached patch. I don't have a big endian machine here that is even remotely capable of playing video, so I cannot test it myself.
Mosu
-- If Darl McBride was in charge, he'd probably make marriage unconstitutional too, since clearly it de-emphasizes the commercial nature of normal human interaction, and probably is a major impediment to the commercial growth of prostitution. - Linus Torvalds
On Sat, Jul 23, 2005 at 09:36:26AM +0200, Moritz Bunkus wrote:
please try the attached patch. I don't have a big endian machine here that is even remotely capable of playing video, so I cannot test it myself.
cc -c -I../libvo -I../../libvo -I/usr/X11R6/include -g -O4 -pipe -ffast-matfomit-frame-pointer -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -sr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -std=gnu99.. -I../loader -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glinclude -I../libavcodec -I../libavformat -o demux_mkv.o demux_mkv.c demux_mkv.c: In function `handle_realvideo': demux_mkv.c:2721: error: invalid operands to binary & demux_mkv.c:2721: error: invalid operands to binary & demux_mkv.c:2721: error: invalid operands to binary & demux_mkv.c:2721: error: invalid operands to binary & make: *** [demux_mkv.o] Error 1 Diego
Hey, On Wednesday 27 July 2005 03:24, Diego Biurrun wrote:
demux_mkv.c:2721: error: invalid operands to binary &
Yeah yeah I know. Jean-Noel said that even after casting to int it doesn't work, so this is not the only problem. Mosu -- If Darl McBride was in charge, he'd probably make marriage unconstitutional too, since clearly it de-emphasizes the commercial nature of normal human interaction, and probably is a major impediment to the commercial growth of prostitution. - Linus Torvalds
Hi, On Fri, Jul 15, 2005 at 01:02:52PM -0700, Jean-No?l Rivasseau wrote:
P.S.: You should read http://mplayerhq.hu/DOCS/HTML/en/bugreports.html again. If you haven't already you are wrong on this list.
I have read that.
Then why don't you even include a full -v log? Not to mention that a gdb backtrace would be really nice (and is mentioned in those docs as well). Greetings, Reimar Döffinger
participants (4)
-
Diego Biurrun -
Jean-Noël Rivasseau -
Moritz Bunkus -
Reimar Döffinger