[streaming] Re: video on demand
Derk-Jan Hartman
hartman at videolan.org
Wed Aug 25 13:50:40 CEST 2004
Marc Manthey wrote:
> On 25.08.2004, at 16:02, Gildas Bazin wrote:
> On Wednesday 25 August 2004 15:42, Hussain Ali Pardawalla wrote:
>
>> If live.come streaming media does support rtp/rtsp over mpeg-ts stream,
>
> and udp, and VLC does use live.com media, is there any reason why VLC does
> not take full advantage of live media and use to to fully support the
> RTP/RTSP stuff on the server side?
>
> Yes...
> Simply nobody has yet worked on implementing support for this.
> As always, patches are welcome ;)
> --
> Gildas
>
> hey lets start!!!!!
> what we need to do?
>
> regards
>
> marc
OK, since I have worked quite a bit on various parts of this, let's talk...
1: There is not ONE RTSP format.
live.com has the as good as spec compliant one, which works with
hardly anything in the wild, with maybe the acceptence of QuickTime
(which is pretty spec compliant itself as a server). Though it depends
very much on the videoformat you stream.
2: Real has several extensions to RTSP which sometimes need to be
supported.(depends on version server/client etc etc etc == mess) It also
has it's own RTP like format called RDP that is a reliable RTP variant
that can be in use. (unsupported both client and server atm).
3: Windows media player is even worse. It uses proprietary ASF RTP
payload format, which basically just streams the file (a lot like ts
actually). (client moderatly supported, server unsupported).
4: someone said RTSP/UDP. Though in use by a lot of STB's, this is not
RTSP spec compliant. RTSP dictates that you use RTP as the transport
format (with good reason, audio video syncing for instance [many STB's
use TS UDP streams, which don't require syncing] however still should be
RTP encapsulated for RTSP compliance) In essence it is possible to
support these TS/UDP streams. Just build VLC and livedotcom code and
test against the servers (this has been my main problem in getting this
to work, too few servers to test with). I even submitted a UDP
acceptance patch to Ross couple weeks back that worked reseanbly well.
He is integrating this 'multiple protocol' support (also considering
RDP), but it will require some changes to the livedotcom code, which
will take him some time.
5: so for vlc serverside, the big question is WHAT do you want to
stream? Real? VLC doesn't support Real at all, let alone the RTSP it has.
6: MPEG4/RTP/RTSP spec compliant? VLC does that already. QTP and Real
work pretty ok as a client
7: Windows Media player compatible? Better use the MMS streaming for
now, only WMP9 understands RTSP anyways, and it's still broken by design.
8: STB compatible? Quite difficult actually, and i don't think Ross
would like such a broken system into his code. Better just use a SAP
announce and directly feed it into. Of course it would also require to
implement Trickplay support, which is mostly a mpeg2/ts trick that the
server needs to do. building support for such a thing requires changes
to both VLC and live.com.
9: Kasenna compatible. don't get me started :)
you can feed Kasenna both UDP/TS and MPEG4 feeds from VLC, but
tuning into VoD of kasenna is a annoying problem requiring both Trick
play and a lot of live.com hacking as far as i could determine.. this
really isn't wanted. The kasenna is just a broken serverdesign and
should be nailed to a wall. Tuning to live streams is considerably
easier. espcecially MPEG2/TS and MPEG4 ones. Still their RTSP code is a
mess.
Both Dermot McGahon and I have been working on this.
So when you start this, you need to have some knowledge about several
things:
1: The protocols
2: the STBs (server/client)
3: deviations from the protocols. (ethereal and google are great sources)
4: the workings of live.com
5: the working of VLC or Mplayer ( i think VLC is more suited these days)
6: the goal
All this knowledge is available since about the last year or so (finally
we know almost everything from every server(type)).
for VLC the important areas are:
modules/demux/livedotcom.cpp (rtsp client implementation based on
liveMedia code)
modules/stream_out/rtp.c (rtsp server implementation)
I'm all for any work on this...
DJ
--
This is the streaming mailing-list, see http://www.videolan.org/streaming/
To unsubscribe, please read http://www.videolan.org/support/lists.html
If you are in trouble, please contact <postmaster at videolan.org>
More information about the streaming
mailing list