[Mplayer-advusers] vidix mga_vid sig11

Attila Kinali kinali at gmx.net
Sun Jan 13 19:38:38 CET 2002


Hi,

Thanks to Alex, we got a vidix mga_vid,
but it doesnt work here:

System:
kernel: 2.2.19
graphics card: G200 8MB RAM
gcc: 2.95.4 (debian)
X: 4.1.0
ggi: 2.0.1

---schnipp---
# gdb mplayer
GNU gdb 5.1
Copyright 2001 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-linux"...(no debugging symbols found)...
(gdb) run -vo xvidix:mga_vid.so /data/outsource/misc/Musik\ Videos/\[Yaoithrower\]White_reflection.SBC.avi
Starting program: /usr/local/bin/mplayer -vo xvidix:mga_vid.so /data/outsource/misc/Musik\ Videos/\[Yaoithrower\]White_reflection.SBC.avi
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...[New Thread 1024 (LWP 26763)]

(no debugging symbols found)...(no debugging symbols found)...


MPlayer CVS-020113-18:25-2.95.4 (C) 2000-2002 Arpad Gereoffy (see DOCS!)

CPU vendor name: GenuineIntel  max cpuid level: 2
CPU: Intel Celeron Covington/Pentium II Deschutes,Tonga/Pentium II Xeon (Type: 6, Stepping: 2)
CPUflags: Type: 6 MMX: 1 MMX2: 0 3DNow: 0 3DNow2: 0 SSE: 0 SSE2: 0
Compiled for x86 CPU with features: MMX
Reading /home/attila/.mplayer/codecs.conf: 26 audio & 70 video codecs
Font /home/attila/.mplayer/font/font.desc loaded successfully! (140 chars)
Linux RTC init: open: Permission denied
Using usleep() timing
Playing /data/outsource/misc/Musik Videos/[Yaoithrower]White_reflection.SBC.avi
Not an URL!
Detected AVI file format!
MainAVIHeader.dwFlags: (272) HAS_INDEX IS_INTERLEAVED
VIDEO:  [DIV3]  640x480  24bpp  29.97 fps  1786.9 kbps (218.1 kbyte/s)
[V] filefmt:3  fourcc:0x33564944  size:640x480  fps:29.97  ftime:=0.0334
Clip info: 
 Encoder: Nandub v1.0rc2
Detected audio codec: [mp3] drv:1 (MPEG layer-2, layer-3)
mp3lib: Processor ID: 652
mp3lib: Using Pentium-MMX optimized decore.
AUDIO: srate=48000  chans=2  bps=2  sfmt=0x10  ratio: 20000->192000
Detected video codec: [divxds] drv:4 prio:0 (DivX ;-) (MS MPEG-4 v3))
[mga] probe
(no debugging symbols found)...
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 26763)]
pci_scan (pci_list=0xbfffd8dc, num_pci=0xbfffd8d8) at AsmMacros.h:323
323       __asm__ __volatile__("out%B0 (%1)" : :"a" (val), "d" (port));
(gdb) bt
#0  pci_scan (pci_list=0xbfffd8dc, num_pci=0xbfffd8d8) at AsmMacros.h:323
#1  0x40018433 in vixProbe (verbose=0) at mga_vid.c:1639
#2  0x0811b73d in XF86DGADirectVideo ()
#3  0x080e981d in ggiGetPalette ()
#4  0x080ea9e8 in ggiGetPalette ()
#5  0x08050ba9 in ggiGetPalette ()
#6  0x403fe65f in __libc_start_main () from /lib/libc.so.6

(gdb) up 1
#1  0x40018433 in vixProbe (verbose=0) at mga_vid.c:1639
1639            err = pci_scan(&lst, &num_pci);
(gdb) l
1634    
1635            mga_verbose = verbose;
1636    
1637            is_g400 = -1;
1638    
1639            err = pci_scan(&lst, &num_pci);
1640            if (err)
1641            {
1642                printf("[mga] Error occured during pci scan: %s\n", strerror(err));
1643                return(err);

(gdb) p lst
$1 = {{bus = 46, card = 44, func = 49, vendor = 0, device = 0, base0 = 0, 
    base1 = 0, base2 = 48, baserom = 36}, {bus = 0, card = 0, func = 0, 
    vendor = 0, device = 0, base0 = 0, base1 = 0, base2 = 0, baserom = 0}, {
    bus = 0, card = 0, func = 0, vendor = 0, device = 0, base0 = 0, base1 = 0, 
    base2 = 0, baserom = 0}, {bus = 0, card = 0, func = 0, vendor = 0, 
    device = 0, base0 = 0, base1 = 0, base2 = 0, baserom = 0}, {bus = 0, 
    card = 0, func = 0, vendor = 0, device = 0, base0 = 0, base1 = 0, 
    base2 = 0, baserom = 26}, {bus = 0, card = 0, func = 0, vendor = 28, 
    device = 0, base0 = 0, base1 = 0, base2 = 0, baserom = 0}, {bus = 35, 
    card = 0, func = 0, vendor = 0, device = 0, base0 = 0, base1 = 31, 
    base2 = 0, baserom = 0}, {bus = 41, card = 0, func = 32, vendor = 30, 
    device = 0, base0 = 47, base1 = 0, base2 = 0, baserom = 0}, {bus = 0, 
    card = 0, func = 0, vendor = 148, device = 0, base0 = 0, base1 = 65539, 
[...]
(gdb) p num_pci
$2 = 0
---schnipp---

output of "strace mplayer <options from above>"

---schnipp---
open("/usr/local/lib/libdha.so", O_RDONLY) = 6
read(6, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@\276\0"..., 1024) = 102
4
fstat(6, {st_mode=S_IFREG|0755, st_size=364111, ...}) = 0
old_mmap(NULL, 196000, PROT_READ|PROT_EXEC, MAP_PRIVATE, 6, 0) = 0x40671000
mprotect(0x40693000, 56736, PROT_NONE)  = 0
old_mmap(0x40693000, 57344, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 6, 0x21
000) = 0x40693000
close(6)                                = 0
munmap(0x40663000, 54356)               = 0
write(1, "[mga] probe\n", 12)           = 12
iopl(0x3)                               = -1 EPERM (Operation not permitted)
--- SIGSEGV (Segmentation fault) ---
write(2, "\nMPlayer interrupted by signal 1"..., 63) = 63
gettimeofday({1010945561, 200700}, {4294967236, 0}) = 0
write(1, "*** free_stream() called ***\n", 29) = 29
munmap(0x40016000, 4096)                = 0
_exit(1)
---schnapp---


Can someone tell me, why mplayer is using ggi functions ?
I know i have them compiled in, but xvidx shouldnt use them ?

If i dont compile ggi in i get folowing gdb output:

---schnipp---
(gdb) run -vo xvidix:mga_vid.so /data/outsource/misc/Musik\ Videos/\[Yaoithrower\]White_reflection.SBC.avi
Starting program: /usr/local/bin/mplayer -vo xvidix:mga_vid.so /data/outsource/misc/Musik\ Videos/\[Yaoithrower\]White_reflection.SBC.avi
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...[New Thread 1024 (LWP 29039)]
(no debugging symbols found)...


MPlayer CVS-020113-18:25-2.95.4 (C) 2000-2002 Arpad Gereoffy (see DOCS!)

CPU vendor name: GenuineIntel  max cpuid level: 2
CPU: Intel Celeron Covington/Pentium II Deschutes,Tonga/Pentium II Xeon (Type: 6, Stepping: 2)
CPUflags: Type: 6 MMX: 1 MMX2: 0 3DNow: 0 3DNow2: 0 SSE: 0 SSE2: 0
Compiled for x86 CPU with features: MMX
Reading /home/attila/.mplayer/codecs.conf: 26 audio & 70 video codecs
Font /home/attila/.mplayer/font/font.desc loaded successfully! (140 chars)
Linux RTC init: open: Permission denied
Using usleep() timing
Playing /data/outsource/misc/Musik Videos/[Yaoithrower]White_reflection.SBC.avi
Not an URL!
Detected AVI file format!
MainAVIHeader.dwFlags: (272) HAS_INDEX IS_INTERLEAVED
VIDEO:  [DIV3]  640x480  24bpp  29.97 fps  1786.9 kbps (218.1 kbyte/s)
[V] filefmt:3  fourcc:0x33564944  size:640x480  fps:29.97  ftime:=0.0334
Clip info: 
 Encoder: Nandub v1.0rc2
Detected audio codec: [mp3] drv:1 (MPEG layer-2, layer-3)
mp3lib: Processor ID: 652
mp3lib: Using Pentium-MMX optimized decore.
AUDIO: srate=48000  chans=2  bps=2  sfmt=0x10  ratio: 20000->192000
Detected video codec: [divxds] drv:4 prio:0 (DivX ;-) (MS MPEG-4 v3))
[mga] probe
(no debugging symbols found)...(no debugging symbols found)...
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 29039)]
pci_scan (pci_list=0xbfffd8dc, num_pci=0xbfffd8d8) at AsmMacros.h:323
323       __asm__ __volatile__("out%B0 (%1)" : :"a" (val), "d" (port));
(gdb) bt
#0  pci_scan (pci_list=0xbfffd8dc, num_pci=0xbfffd8d8) at AsmMacros.h:323
#1  0x40018433 in vixProbe (verbose=0) at mga_vid.c:1639
#2  0x0811a3bd in XF86DGADirectVideo ()
#3  0x080e849d in strcpy ()
#4  0x080e9668 in strcpy ()
#5  0x080507e9 in strcpy ()
#6  0x403f265f in __libc_start_main () from /lib/libc.so.6
(gdb) up
#1  0x40018433 in vixProbe (verbose=0) at mga_vid.c:1639
1639            err = pci_scan(&lst, &num_pci);
(gdb) l
1634    
1635            mga_verbose = verbose;
1636    
1637            is_g400 = -1;
1638    
1639            err = pci_scan(&lst, &num_pci);
1640            if (err)
1641            {
1642                printf("[mga] Error occured during pci scan: %s\n", strerror(err));
1643                return(err);
(gdb) p num_pci
$1 = 0
(gdb) p lst
$2 = {{bus = 46, card = 44, func = 49, vendor = 0, device = 0, base0 = 0, 
    base1 = 0, base2 = 48, baserom = 36}, {bus = 0, card = 0, func = 0, 
    vendor = 0, device = 0, base0 = 0, base1 = 0, base2 = 0, baserom = 0}, {
    bus = 0, card = 0, func = 0, vendor = 0, device = 0, base0 = 0, base1 = 0, 
    base2 = 0, baserom = 0}, {bus = 0, card = 0, func = 0, vendor = 0, 
    device = 0, base0 = 0, base1 = 0, base2 = 0, baserom = 0}, {bus = 0, 
    card = 0, func = 0, vendor = 0, device = 0, base0 = 0, base1 = 0, 
[...]
---schnapp---


Some remarks:

I'd like to be able to run mplayer from the directory i compiled it,
because i dont like to install CVS versions (I only install releases).
-vo xvidix:<path>/<module> does not work it uses always $PREFIX 
(aka /usr/local/lib)

Then, libdha isnt installed if the directory doesnt exist
(use install instead of cp)


			Attila Kinali

-- 
I am a moslem, i am a terrorist.



More information about the MPlayer-advusers mailing list