Choppy rtp streams

Discussion about configuration and usage of VLM (a stream scheduler) within VLC.
dfenwick
New Cone
New Cone
Posts: 3
Joined: 12 Feb 2006 09:53

Choppy rtp streams

Postby dfenwick » 13 Feb 2006 06:40

I've gone around in circles trying to figure out why a standard ripped DVD output is choppy when I start it from a VOD stream. I'm attempting to automate my DVD library. I have roughly 500 DVDs that I've purchased over the past 5 years or so. I have ample server diskspace and power to provide an on-demand video system for my house (dual Xeon, 4 terabyte HD, 4 GB RAM) and to provide multiple A/V streams to the computers running at each of the 2 TVs I want to do demand video on. I don't want to do multicast because it's not really a station-oriented broadcast I'm attempting to do. I want streams to be independent of each other, allowing the operator of the PC at the television (with plugins I'm going to write for MythTV) to select what DVD they'd like to stream to the PC and display on the TV.

I want to provide this service in a nearly identical fashion as it's done through the on-demand service available on my digital cable. I rip my DVDs with DVD Decrypter first and place them in my library. When I first started playing around with VLC, I tested streaming the ripped DVD directories using HTTP (worked great across the LAN), MMS (never could get media player to recognize the stream so I gave up), UDP (worked great across the LAN).

I then embarked on the next step, which is to put them into VODs within VLM. The first entry (I'll use the case for the Matrix, since it was the first DVD I ever purchased) looked like this:

new thematrix vod enabled
setup thematrix input dvdsimple://c:\media\dvds\the_matrix

The entry took just fine, but when I connected via RTSP to get the RTP stream, the video was choppy. As in it almost looked like it was all I-frames. So I fired up Ethereal to look at the streams themselves. They weren't all I-frames. There were I, P, and B frames, so it wasn't a case of misuing the Live555 RTP encoder. I also looked at the payloads, which were interesting. Ethereal couldn't decode the payloads of type 96. I'm still not precisely sure what these are, even after reading the source code.

I next attempted something like this:

new thematrix vod enabled
setup thematrix output #std{access=http,mux=ts,url=:9001/thematrix,sap,name="The Matrix"}
setup thematrix input dvdsimple://c:\media\dvds\the_matrix

Which streams just fine, but it starts immediately the first time a client connects, and does not stop when the client disconnects. I could probably work with this via the remote control interface, but I'd like something cleaner. I like the concept of using SAP to announce streams and RTSP to start and shutdown the streaming. I still haven't figured out how to allow the person at the end of the stream to actually use the DVD menus yet (it only appears to work on the VLC client that's providing the stream - if I attach to a stream that provides multiple VOB files with the standard dvd type, it does not allow someone to use the DVD menus.)

Anyway, the RTP output is horrendous. The HTTP and straight non-RTP UDP streams are perfect. I've tested this on 2 windows machines and 2 Linux machines. If I stream with HTTP or raw UDP, the streams are great. If I stream with RTP, the video stream is choppy. The audio stream is fine.

Am I missing something on how to provide the service I'm trying to get to in a reasonable manner? I've just spent 3 days looking at a variety of forum entries, looking at the mail list archives, and whatnot to solve as much of the problems as I could. Incidentally, I get very few messages in the log, even with debug set to 2. I get the extra messages available during setup and instanciation of the streams, but when it's streaming, the client and the server appear to think everything is fine (ie, there are no messages.)

Could anyone give me further insight into this? Is there a way to tell RTSP to setup a non-RTP stream back to the requester? While that's not the ideal solution, it would work for now. I think using the RTP stream is the correct solution, but at this point I'm just looking for anything that will not be choppy and still provide on-demand services that stop when the requesting client disconnects.

dfenwick
New Cone
New Cone
Posts: 3
Joined: 12 Feb 2006 09:53

Postby dfenwick » 18 Feb 2006 07:46

With the help of one of the folks on IRC, I resolved this issue by using the following command for VOD:

new thematrix vod enabled mux mp2t input dvdsimple://c:\media\dvds\the_matrix

The change in mux worked flawlessly.

mediaguy2006
Blank Cone
Blank Cone
Posts: 11
Joined: 14 Feb 2006 19:21

VOD

Postby mediaguy2006 » 12 Apr 2006 03:46

what are you using for your playout BOx are you going form the PC thru your video card to your TV..

mediaguy06
Blank Cone
Blank Cone
Posts: 15
Joined: 24 Mar 2006 16:40

Choppy streams

Postby mediaguy06 » 21 Apr 2006 15:57

I would suggest to check your PC chip speed. If you are running less that a 1.8 or Pentium 3 it may be that your CPU can't process the bit rates that your DVDs are encoded to. 1.0 and celerons can't process bit rate s over 4 megs very well especially if its constant bit rates. Remember that your CPU is processing the mpg and trans coding for play out so thats why you may be getting a choppy stream. You may want to try streaming with a P4 machine and see the results it may work better. If you can't use a P4 you may have to try and re-encode a move to a lower bit rate so you can play them back and this may be less choppy if you get it right to you liking then you can encode the rest at that bit rate and you will be able to have a decent VOD. I hope this helps..

dfenwick
New Cone
New Cone
Posts: 3
Joined: 12 Feb 2006 09:53

Postby dfenwick » 13 Jun 2006 07:03

Sorry for the late reply here. Encoding was done on a dual Xeon 3.2 Ghz box. Playback was on a variety of processors including a Pentium 4 3.4 Ghz box, Pentium 3 800 Mhz box, Pentium M notebook computer, Pentium 4 2.4 Ghz box, amongst others. I also played back on the dual Xeon.

Like I said in the reply I sent to my own message, by applying the mp2t mux it fixed the problem. Playback in all cases was directly to the display on the computer. I've since moved one small footprint computer to a flat panel LCD television in the house and it works great over a 54G wireless connection, provided the wireless connection stays over 4Mbps. I tested various wireless rates by moving around in the house with the notebook computer. Dropping below 4Mbps is when frames started dropping.


Return to “VLM”

Who is online

Users browsing this forum: No registered users and 6 guests