[Live-devel] Trick Mode Data Rate

Moody, Marc D marc.d.moody at boeing.com
Mon Nov 17 15:14:59 PST 2008


Ross and Community,

In regards to the Trick Mode Data Rate discussion last year.  A few
posts thus far have observed 'trick play' data rates higher than that of
the source media and a desire to throttle the data rate to some preset
maximum limit.  Please reference the following related posts from
March-July 2007.

http://lists.live555.com/pipermail/live-devel/2007-March/006317.html
http://lists.live555.com/pipermail/live-devel/2007-April/006509.html
http://lists.live555.com/pipermail/live-devel/2007-July/007210.html 

>As previously dscussed on this mailing list, we have a solution in 
>mind (it will require updating the index file format to include a new 
>'duration' field, and implement a new Transport Stream 'framer' class 
>that uses this).  There is currently no ETA for this, though.

Has there been any progress in this regard?

I am using Live555 version 0.19 source and have found that the average
'trick play' data rate for scales greater than 1X is more than double
that of the original source media.  The actual data rate seen for a
10Mbit/sec stream in trick play averages 22Mbit/sec for the following
selected scales:  2X, 4X, 8X, 16X and 64X.  Testing below 1X shows the
data rate to fall below that of the original source media.  At a scale
of 1/2X, the resulting data rate was 7.3Mbps for a 10Mbps stream.

My goal is to limit the playback data rate so that it is no greater than
that of the source media at 1X.

Ross states in his April 2007 response to "HD MPEG2 TrickPlay" , that:

Two methods were used to obtain the results above.  (Note that in both
test methods, the Live555 server in use has been modified to accept the
"scale" parameter from stdin upon stream open since VLC, to my
knowledge, doesn't let you pick the scale).

First OpenRTSP was used on the same host as the server to dump the
streamed output to a file using the following command:  

openRTSP.exe -d 34 -Ftwo_x_scale rtsp://127.0.0.l/tek.ts

The source stream is 10Mbps.  Live555 is commanded to stream at a scale
of 2X.  The output from openRTSP is 22Mbps when analyzed using TSreader.
I got the same 22Mbps results using an "unmodified version 0.19" live555
server in conjunction with the "-z 2" scale parameter of openRTSP.exe.

The second test used Wireshark to analyze Ethernet traffic on a closed
network between two PCs.  Live555 version 0.19 serving the same 10Mbps
stream to a PC running Wireshark and VLC as the RTSP client.  In each
case below, the scale was entered using stdin prior to stream open.

My results are as follows:

SCALE    AVG Mbit/sec   Time between 1st   Packets   AVG packets/sec
AVG packet size    IO Observation/time.  
                        and last packet

1X       10.429         66.989 sec         63795     952.322
1368.0 bytes       Steady data rate.  
1/2X     7.291          132.983 sec        102641    771.838
1180.0 bytes       Bursty data rate.  
2X       21.972         34.235 sec         79573     2324.345
1181.0 bytes       Bursty data rate.  
4X       22.065         17.772 sec         41483     2334.223
1181.0 bytes       Bursty data rate.  
8X       21.881         9.266 sec          21447     2314.648
1181.0 bytes       Bursty data rate.  
64X      22.207         2.212 sec          5195      2348.889
1181.0 bytes       Bursty data rate.  


>From these results, it appears that there is either a naturally
occurring maximum data rate of around 22Mbps in my particular setup or
there may be some programmed maximum that is a function of the source
data rate.  In any case, some help in understanding these results or
some help in finding a potential solution to clamping the maximum data
rate would be much appreciated.

Best regards,

Marc Moody



More information about the live-devel mailing list