[DVDnav-discuss] question regarding data coming from libdvdnav

Sergey 'Jin' Bostandzhyan jin at mediatomb.cc
Thu Nov 20 00:22:00 CET 2008


I have a question regarding data that is coming from libdvdnav.

The text below may seem a little off topic, but please stay with me here,
I would appreciate any hints regarding this matter :)

The reason behind the question is: we observed various problems when feeding
the data to players (I'm not talking mplayer or vlc, but hardware players like
the DSM-510, PlayStation 3 and others). In our setup the player gets the
data from a HTTP server that is embedded into the application, the data
comes from a ripped iso, the data is read with the help of libdvdnav.

Some players will simply crash after a couple of minutes of play or will
immediately refuse to play the stream. Others will play, however with an
effect like on the old vinyl records - from time to time parts of the video 
are being looped.

We tried to plug in a transcoder (like vlc, ffmpeg, mencoder) and remux the
stream to ts, this seemed to generally enable playback on devices that refused
to play the original data, however the success rate was low: the transcoding 
apps were not handling the on the fly remuxing too well. I only had some 
success with mencoder, however from time to time it printed messages like:
"1 duplicate frame(s)!" or "Skipping frame!" and the "looping effect" could
be observed on the player.

So, back to the original question: what kind of MPEG comes from libdvdnav?
Is there anything "special" about it? Is it normal PS or is it PES? Do you 
have any idea on what might be causing troubles for the decoding apps?

Of course it's difficult to guess why some player with proprietary black box
firmware is crashing, but since MPEG2 files encoded in a "normal" way work, 
it must be something special, related to the data coming from the DVD.

To make sure that it is not a bug within my app I tried extracting an mpeg from
my test iso using libdvdnav/libdvdread 4.1.3 (this is also the version that
I am currently running), I used the "menus" example application that comes 
with libdvdnav. After ripping the mpeg I tried streaming it with the DSM-510 
and it also crashed.

The image is CSS-free, so decryption is not involved.

My app is an open source UPnP media server, so you guys will make a lot of
people happy if you help me to resolve this problem :)


Kind regards,

More information about the DVDnav-discuss mailing list