[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