[Live-devel] Initial support for server 'trick play' operations on Transport Stream files
Amit Alok Awasthi
amit.awasthi at iptvlabs.biz
Tue Jan 9 04:14:08 PST 2007
Dear Mr. Finlayson,
Thanks for the information on the latest version (2006.12.31).
However, I also wish to know the following:
1. "RTSP server code itself does not yet support Transport Stream "trick
play" operations". Has this change now been introduced in the latest Live's
release?
2. I had been using 2006.12.08, downloaded from Live555's website to stream
a MPEG2-TS. I set Live555 as the server on SuSE Linux 10.0 and VLC 0.8.6 as
a client on Windows. However, I had the following observations:
>>TS video comes after a 'long wait' from the start while audio goes well in
track right from the beginning. Whenever video starts, it is however in sync
with the audio. The TS is being streamed though it is not being paused.
'Play fast' functionality is not working thoroughly since after moving fast
for a while, the video stops.
3. With the latest binary available (2006.12.31 with Live555's Trick Play
support) and the same set up, I am getting the same set of observations as
above. (I checked this using the two new utilities -
MPEG2TransportStreamIndexer and testMPEG2TransportStreamTrickPlay - present
in the "testProgs" directory using the instructions provided in the forum
but didn't manage to get 'trick play' working)
Please help us know the reason for the points mentioned above and how to
rectify them.
Happy New Year and Warm Regards,
Amit Alok Awasthi
iptv Business Analyst
iptvLabs (India) Pvt. Ltd.
Email: amit.awasthi at iptvlabs.biz
Phone: +91-120-4352189
Cell: +09811177092
Company Site: www.iptvlabs.biz
-----Original Message-----
From: live-devel-bounces at ns.live555.com
[mailto:live-devel-bounces at ns.live555.com] On Behalf Of Ross Finlayson
Sent: Monday, January 01, 2007 7:02 AM
To: live-devel at ns.live555.com
Subject: [Live-devel] Initial support for server 'trick play' operations on
Transport Stream files
The latest version (2006.12.31) of the "LIVE555 Streaming Media"
software includes initial support for server 'trick play' operations
(seeking, fast forward, reverse play) on MPEG-2 Transport Stream
files. The actual RTSP server code itself does not yet support
Transport Stream 'trick play' operations; however, that will be added
probably for the next release - perhaps within a day or so.
To support 'trick play' operations on a Transport Stream file, the
server must have a corresponding "index file". This index file
describes the position - within the Transport Stream file - of video
I-frames (i.e., key frames); these frames are used to produce a fast
forward or reverse play stream.
Each Transport Stream file that you wish to stream must have a
corresponding "index file" (if it doesn't, the the server will still
be able to stream the file, but without 'trick play' operations).
The index files use the file name suffix ".tsx"; for example, if your
Transport Stream file is named "foo.ts", then the corresponding index
file will be named "foo.tsx". The current release of the "LIVE 555
Streaming Media" software includes a utility - called
"MPEG2TransportStreamIndexer", in the "testProgs" directory - that
you can use to generate index files for your Transport Stream files.
To generate each index file, run
MPEG2TransportStreamIndexer <transport-stream-file-name>
Be warned that this program is currently rather slow, so I suggest
running it on the fastest computer that you have.
Once you have generated your index files, you can try running a demo
application called "testMPEG2TransportStreamTrickPlay" (also in the
"testProgs" directory) to simulate the effect of 'trick play'
operations on Transport Stream files. To run it:
testMPEG2TransportStreamTrickPlay
<input-transport-stream-file-name> <start-time> <scale>
<output-transport-stream-file-name>
where
<input-transport-stream-file-name> is the original Transport
Stream file name (which must end with ".ts"). There must also be a
corresponding index file for this file.
<start-time> is the starting play time in seconds (use 0 to
play from the start)
<scale> is a non-zero integer, representing the playing speed
(use a negative number for reverse play)
Examples (assume that your original Transport Stream file is named
"foo.ts", and that you have already generated an index file, named
"too.tsx"):
testMPEG2TransportStreamTrickPlay foo.ts 0 8 foo8.ts
The output file "foo8.ts" is the original stream, sped up 8x
testMPEG2TransportStreamTrickPlay foo.ts 30 -1 foo-1.ts
The output file "foo-1.ts" is the original stream, played
backwards (at 1x speed), starting from the 30 second point.
testMPEG2TransportStreamTrickPlay foo.ts 30 -5 foo-5.ts
The output file "foo-5.ts" is the original stream, played
backwards (at 5x speed), starting from the 30 second point.
If you have any problems with these programs, please let us know,
including the URL of the original Transport Stream file, so we can
take a look at it.
A reminder once again that this 'trick play' functionality will be
added to the RTSP server code shortly.
--
Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
_______________________________________________
live-devel mailing list
live-devel at lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel
More information about the live-devel
mailing list