SDL/smpeg/DRI/Voodoo 5 5500 - segfault on all mpegs

SDL CVS snapshot as of 01/16/2001 (also happens with 1.1.7, never saw
problem with 1.1.6)
smpeg 0.4.2
Latest DRI CVS (Xfree86 4.0.2-based)
Voodoo 5 5500 (tdfx driver)

Every time I try to play any mpg, I get a segfault - following is a
stack trace:

[manuel at ulthar mpg]$ gdb which plaympeg
GNU gdb 5.0
Copyright 2000 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 “i386-redhat-linux”…
(no debugging symbols found)…
(gdb) run lsi4.mpg
Starting program: /usr/bin/plaympeg lsi4.mpg
[New Thread 1024 (LWP 11691)]
[New Thread 2049 (LWP 11693)]
[New Thread 1026 (LWP 11694)]
lsi4.mpg: MPEG system stream (audio/video)
Video 128x96 resolution
Audio MPEG-1 Layer 2 64kbit/s 32000Hz mono
Size: 34072164
Total time: 395.161000
[New Thread 2051 (LWP 11695)]
[New Thread 3076 (LWP 11696)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 3076 (LWP 11696)]
0x401beace in memcpy () from /lib/libc.so.6
(gdb) where
#0 0x401beace in memcpy () from /lib/libc.so.6
#1 0x40027e81 in filter_null_callback (dst=0x806e760, src=0xbf3ff9ac,
region=0x80559f8, info=0xbf3ff9e4, data=0x0) at MPEGfilter.c:65
#2 0x40045c3e in MPEGvideo::DisplayFrame (this=0x80557b8,
vid_stream=0x806e808) at gdith.cpp:343
#3 0x40045d85 in MPEGvideo::ExecuteDisplay (this=0x80557b8,
vid_stream=0x806e808) at gdith.cpp:395
#4 0x40058cd2 in DoPictureDisplay (vid_stream=0x806e808) at
video.cpp:4679
#5 0x4004e464 in mpegVidRsrc (time_stamp=0, vid_stream=0x806e808,
first=0)
at video.cpp:1307
#6 0x40042a08 in Play_MPEGvideo (udata=0x80557b8) at MPEGvideo.cpp:250
#7 0x400cb5e5 in SDL_RunThread () from /usr/lib/libSDL-1.1.so.0
#8 0x400cb7ef in RunThread () from /usr/lib/libSDL-1.1.so.0
#9 0x40109c8e in pthread_start_thread_event (arg=0xbf3ffc00) at
manager.c:274
(gdb)

Using aviplay (from the avifile package) works fine, even though it is
using the same SDL version. Does anyone have any ideas about what could
be going on? Thanks!–
Manuel A. McLure KE6TAW | …for in Ulthar, according to an ancient
| and significant law, no man may kill a cat.
| – H.P. Lovecraft

Try “export SDL_VIDEO_YUV_HWACCEL=0” and check your Xv support with xvinfoOn Sat, Jan 20, 2001 at 11:33:50PM -0800, Manuel McLure wrote:

SDL CVS snapshot as of 01/16/2001 (also happens with 1.1.7, never saw
problem with 1.1.6)
smpeg 0.4.2
Latest DRI CVS (Xfree86 4.0.2-based)
Voodoo 5 5500 (tdfx driver)

Every time I try to play any mpg, I get a segfault - following is a
stack trace:


Martin

Bother! said Pooh finding that Eeyore was a donkey voodoo doll.

Try “export SDL_VIDEO_YUV_HWACCEL=0” and check your Xv support with xvinfo

Also, try posting a link to the MPEG so we can test it as well.

See ya,
-Sam Lantinga, Lead Programmer, Loki Entertainment Software

Martin Donlon wrote:

Try “export SDL_VIDEO_YUV_HWACCEL=0” and check your Xv support with xvinfo

SDL CVS snapshot as of 01/16/2001 (also happens with 1.1.7, never saw
problem with 1.1.6)
smpeg 0.4.2
Latest DRI CVS (Xfree86 4.0.2-based)
Voodoo 5 5500 (tdfx driver)

Every time I try to play any mpg, I get a segfault - following is a
stack trace:


Martin

Bother! said Pooh finding that Eeyore was a donkey voodoo doll.

The export solves the segfault - however xvinfo says that YUV is supported:

X-Video Extension version 2.2
screen #0
Adaptor #0: "3dfx Accelerated Video Engine"
number of ports: 1
port base: 58
operations supported: PutImage
supported visuals:
depth 24, visualID 0x23
depth 24, visualID 0x24
depth 24, visualID 0x25
depth 24, visualID 0x26
depth 24, visualID 0x27
depth 24, visualID 0x28
depth 24, visualID 0x29
depth 24, visualID 0x2a
no port attributes defined
maximum XvImage size: 1024 x 750
Number of image formats: 3
id: 0x32315659 (YV12)
guid: 59563132-0000-0010-8000-00aa00389b71
bits per pixel: 12
number of planes: 3
type: YUV (planar)
id: 0x30323449 (I420)
guid: 49343230-0000-0010-8000-00aa00389b71
bits per pixel: 12
number of planes: 3
type: YUV (planar)
id: 0x78666474 (tdfx)
guid: 11000000-c023-2008-50f5-3b0810000000
bits per pixel: 9
number of planes: 255
type: RGB (planar)
depth: 0
red, green, blue masks: 0x50246c8b, 0x202444c7, 0x0

Is this a bug in the tdfx DRI implementation of YUV?> On Sat, Jan 20, 2001 at 11:33:50PM -0800, Manuel McLure wrote:


Manuel A. McLure KE6TAW | …for in Ulthar, according to an ancient
| and significant law, no man may kill a cat.
| – H.P. Lovecraft

Sam Lantinga wrote:

Try “export SDL_VIDEO_YUV_HWACCEL=0” and check your Xv support with xvinfo

Also, try posting a link to the MPEG so we can test it as well.

See ya,
-Sam Lantinga, Lead Programmer, Loki Entertainment Software

It happens with every MPEG I try - for example,

http://fredrik.hubbe.net/plugger/test.mpg

The “export SDL_VIDEO_YUV_HWACCEL=0” does cause the segfault to not
occur. Is this a bug in the DRI implementation of XVideo YUV
acceleration? xvinfo shows support for YV12 and I420.–
Manuel A. McLure KE6TAW | …for in Ulthar, according to an ancient
<@Manuel_McLure> | and significant law, no man may kill a cat.
http://www.mclure.org | – H.P. Lovecraft

Manuel McLure wrote:

SDL CVS snapshot as of 01/16/2001 (also happens with 1.1.7, never saw
problem with 1.1.6)
smpeg 0.4.2
Latest DRI CVS (Xfree86 4.0.2-based)
Voodoo 5 5500 (tdfx driver)

This is a bug in the latest DRI CVS.–
-Sam Lantinga, Lead Programmer, Loki Software, Inc.