Subject: RE: [AVT] MPEG-4 Payload for RTP [MPEG STREAMING]

From: Franceschini Guido <[email-masked]>
Date: Tue, 31 Jan 2006 11:16:41 +0100

The time column refers to the instants at which the packets have been dumped by your tool, and thus suffers for the jitter due to:
- the implementation of your media tool
- the implementation of your dumping tool
- the scheduling policies in your O.S.
- ...
 
It is very helpful to use the time column to understand how the streaming really appears in the network, (e.g.: how much jitter is introduced by the emitting device, how much jitter is seen at the consuming device, etc ...), but that's all.
 
Guido

-----Original Message-----
From: [email-masked] [mailto:[email-masked]]On Behalf Of Siddhartha Gandhi
Sent: lunedì 30 gennaio 2006 20.36
To: [email-masked]
Subject: [AVT] MPEG-4 Payload for RTP [MPEG STREAMING]

Consider the following MPEG-4 streaming using RTP, audio ( Payload Type = 97 ) and video ( Payload Type = 96 ) in the trace :

Given,

    video_time_scale  = 90000 and audio_time_scale = 44100 

    video_payload_type = 96     and  audio_payload_type = 97

    MPEG-4 video 

        stts = {count, delta} [0] = {5012, 3003}

Hence,  

    27188 (first video packet) - 24188 (second video packet) = 3000 ( this matches with the delta above )

3000/90000 =1/30 = 0.03333 sec = 33.33 msec. So two consequtive video packets should have a delay of 33.33 msec.

Two consequtive RTP packets carrying MPEG-4 video payload ( Payload Type = 96) should be 33.33 msec. Infact if we calculate the difference = 5.337154 sec - 5.337140 sec =  0.014 msec != 33.33 msec

Why is this so ?

This time is incremented only after 3 packets containing MPEG-4 video payload are sent with M-BIT = true by, (3 * 33.33msec) = 99.99 msec

Can anybody tell me the reason as to why Time ( 2nd Column ) is not incremented in accordance with Timestamp (9th column) ?

Is it related to buffering or something else ?

Appreciate your help.

Thanks

Siddhartha

 

Gruppo Telecom Italia - Direzione e coordinamento di Telecom Italia S.p.A.

====================================================================
CONFIDENTIALITY NOTICE
This message and its attachments are addressed solely to the persons
above and may contain confidential information. If you have received
the message in error, be informed that any use of the content hereof
is prohibited. Please return it immediately to the sender and delete
the message. Should you have any questions, please send an e_mail to
[email-masked]. Thank you
====================================================================
_______________________________________________
Audio/Video Transport Working Group
[email-masked]
https://www1.ietf.org/mailman/listinfo/avt

---

From: "Siddhartha Gandhi" <[email-masked]>
Date: Wed, 1 Feb 2006 09:30:43 -0600

Ido,

Yes, perfectly right. 
If we just consider the Time (2nd column), the first 3 video frames are
delayed and then the time in incremented as ( 3 * time_increment_per_frame
). This pattern is followed throughout the course of video streaming. And
surprisingly the client plays it.

When I stream using my server, I do not see such thing happening. I am
incrementing time after every video frame and the ethereal trace shows the
same.

I don't know why they are delayed ?
Is there any logic in MPEG-4 streaming or am I missing on something that I
should not ?

Note: This MPEG-4 file is hinted using ISMA compliant hint tracks.

Thanks,
Siddhartha

-----Original Message-----
From: Ido Benda [mailto:[email-masked]] 
Sent: Wednesday, February 01, 2006 6:38 AM
To: Magnus Westerlund; Siddhartha Gandhi
Cc: [email-masked]
Subject: RE: [AVT] MPEG-4 Payload for RTP [MPEG STREAMING]

Hi,

It looks too much of a coincidence that both streams will have the same
SSRC and interleaving sequence numbers, so I doubt if this comes from
two different streams. 

My guess is that the first video frame is simply delayed for some
reason, and then sent right before sending the second frame. 
What is this delay for? Perhaps the first frame is delayed for the
possibility to compound it with the second frame in the IP packet.

Regards,
Ido Benda

> From: [email-masked] [mailto:[email-masked]] On Behalf Of
> Magnus Westerlund
> Sent: Wednesday, February 01, 2006 12:16 PM
> To: Siddhartha Gandhi
> Cc: [email-masked]
> Subject: Re: [AVT] MPEG-4 Payload for RTP [MPEG STREAMING]
> 
> Hi,
> 
> It looks like you receive two different media streams. Have you
checked
> what ports the different packets arrive on?
> 
> The most likely explanation is that they are two different streams
with
> different RTP timestamp rates, that is why the timestamp looks like it
> jumps back and forth.
> 
> Cheers
> 
> Magnus Westerlund
> 
> Multimedia Technologies, Ericsson Research EAB/TVA/A
> ----------------------------------------------------------------------
> Ericsson AB                | Phone +46 8 4048287
> Torshamsgatan 23           | Fax   +46 8 7575550
> S-164 80 Stockholm, Sweden | mailto: [email-masked]
>

---

From: "Desineni, Harikishan" <[email-masked]>
Date: Thu, 9 Feb 2006 20:32:22 -0800

Another guess:

On this particular server, couple of consecutive RTP packets getting
fragmented at IP layer and it takes some time for the receiver to
reassemble them. After those couple of big RTP packets, the next one is
small enough such that no fragmentation is necessary to send it to the
receiver. The fragmentation reassembly logic in your client might be
slow (and sloppy) resulting in such an arrival pattern at RTP client
layer.

Cheers,
Hari
-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On Behalf Of
Siddhartha Gandhi
Sent: Wednesday, February 01, 2006 7:31 AM
To: 'Ido Benda'
Cc: 'Magnus Westerlund'; [email-masked]
Subject: RE: [AVT] MPEG-4 Payload for RTP [MPEG STREAMING]

Ido,

Yes, perfectly right. 
If we just consider the Time (2nd column), the first 3 video frames are
delayed and then the time in incremented as ( 3 *
time_increment_per_frame
). This pattern is followed throughout the course of video streaming.
And
surprisingly the client plays it.

When I stream using my server, I do not see such thing happening. I am
incrementing time after every video frame and the ethereal trace shows
the
same.

I don't know why they are delayed ?
Is there any logic in MPEG-4 streaming or am I missing on something that
I
should not ?

Thanks,
Siddhartha

-----Original Message-----
From: Ido Benda [mailto:[email-masked]] 
Sent: Wednesday, February 01, 2006 6:38 AM
To: Magnus Westerlund; Siddhartha Gandhi
Cc: [email-masked]
Subject: RE: [AVT] MPEG-4 Payload for RTP [MPEG STREAMING]

Hi,

Regards,
Ido Benda

checked
with