[MPlayer-dev-eng] [BUG] DVB input/MPEG-TS not working correctly

David Kuehling dvdkhlng at gmx.de
Tue Aug 19 14:24:37 CEST 2003


Hi,

just got a PCI Nova-t some days ago and am now trying to use MPlayer-CVS
for watching video.  Unfortunately it doesn't work reliably.  Seems to
be so damn broken, that I don't even know, where to start
bug-reporting...

Well, that what works so far (without zapping or trying to seek):

mplayer dvb:// -cache 4096

tzap -r "Das Erste" & sleep 1; mplayer - -cache 4096 < /dev/dvb/adapter0/dvr0

tzap -r "Das Erste" & sleep 1; buffer -m1m < /dev/dvb/adapter0/dvr0 | (
    sleep 1; mplayer -)

And now what's going wrong:

1.)  MPEG-TS demuxer problem?

tzap -r "Das Erste" & sleep 1; mplayer - -cache 4096 < /dev/dvb/adapter0/dvr0

Strangely, one is allowed to seek in that stream when using -cache.  But
that makes MPlayer crash.  The bug can be reproduced, when trying to
seek in the MPEG-TS data recorded to hard disk:

cat /dev/dvb/adapter0/dvr0 > dvbt-berlin.mpg
mplayer dvbt-berlin.mpg

<<after trying to seek, using "left" button>>

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 13751)]
0x080fc058 in mpeg2_set_buf (mpeg2dec=0x84400a0, buf=0x844b320, id=0x844b300)
    at decode.c:383
383         if (mpeg2dec->custom_fbuf && !mpeg2dec->fbuf[1]->buf[0]){
(gdb) bt
#0  0x080fc058 in mpeg2_set_buf (mpeg2dec=0x84400a0, buf=0x844b320, 
    id=0x844b300) at decode.c:383
#1  0x080bb9c1 in decode (sh=0x842b360, data=0x40765008, len=74452, flags=0)
    at vd_libmpeg2.c:145
#2  0x080b7356 in decode_video (sh_video=0x842b360, start=0x40765008 "", 
    in_size=74452, drop_frame=0) at dec_video.c:304
#3  0x0806f4a8 in main (argc=2, argv=0xbffffa44) at mplayer.c:2043

The line at decode.c:382 says " // HACK! FIXME! At first I frame, copy
pointers to prediction frame too!", any clue?

I'll try to upload the sample file, dvbt-berlin.mpg, this evening (18Mb
with Modem should take some time :-( ).

2.)  Without caching or hard-disk-recording, A/V sync dies with "Too
many video packets in the buffer: (4096 in 749258 bytes)."

It works perfectly when using -cache 4096.  

mplayer - < /dev/dvb/adapter0/dvr0 -v > mplayer-dump1.txt 2>&1

First there is audio, but video plays at 2 fps.  After about 3 seconds
the message "Too many video packets in the buffer: (4096 in 749258
bytes)." appears and I loose sound.  At that point video starts playing
at normal speed:

`mplayer-dump1.txt' attached as .bz2.

Using "-mc 0", "-autosync 30" etc. doesn't help.  My soundcard is a
Soundblaster 128 PCI with great support in Linux (ie not Alsa).  Never
had any problems with it.

3.) Zapping doesn't work correctly when using "mplayer dvb://"

Since A/V sync crashes without cache, I use 

mplayer dvb:// -cache 4096

First video plays correctly.  Than I press 'h' for zapping.  The video
stops, and MPlayer prints out

dvb_streaming_read, attempt N. 5 failed with errno 11 when reading 1684 bytes
dvb_streaming_read, attempt N. 4 failed with errno 11 when reading 1684 bytes
...

This continues for some seconds, then MPlayer seems to replay the
contents of the cache.  After some more seconds (end of cache
reached!?), MPlayer exits with "Broken frame at 0x24000".

If I wait for some time before zapping (ie, making sure the cache is
really full), zapping seems to succeed (I get to a different channel),
but therefore A/V sync dies, excactly as described under 2.).

Two corresponding dumps using option "-v" are attached as
mplayer-dump2.txt.bz2 and -dump3.txt.bz2.


There are some more problems, that I cannot recall right now.  Maybe I
file some more bug-reports later on.  Here are my system information:

Debian Woody 3.0  
Linux 2.4.17  
AMD/Duron 750 MHz  
SoundBlaster PCI 128
Hauppauge WinTV NOVA-t
gcc version 2.95.4 20011002 (Debian prerelease)
MPlayer-CVS checked out today
linuxtv-dvb-1.0.0

The boradcasts I'm receiving are from Berlin's DVB-t.

`config.h' attached as .bz2

David
-- 
GnuPG public key: http://user.cs.tu-berlin.de/~dvdkhlng/dk.gpg
Fingerprint: B17A DC95 D293 657B 4205  D016 7DEF 5323 C174 7D40

-------------- next part --------------
A non-text attachment was scrubbed...
Name: mplayer-dump1.txt.bz2
Type: application/octet-stream
Size: 4332 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/attachments/20030819/067ee501/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mplayer-dump2.txt.bz2
Type: application/octet-stream
Size: 15706 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/attachments/20030819/067ee501/attachment-0001.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mplayer-dump3.txt.bz2
Type: application/octet-stream
Size: 31180 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/attachments/20030819/067ee501/attachment-0002.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: config.h.bz2
Type: application/octet-stream
Size: 4507 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/attachments/20030819/067ee501/attachment-0003.obj>


More information about the MPlayer-dev-eng mailing list