Raw tracks not in sync

Document created by cdnadmin on Jan 25, 2014
Version 1Show Document
  • View in full screen mode
This document was generated from CDN thread

Created by: Daniel Hatch on 06-02-2013 09:33:47 AM
I'm having a problem where one of the raw tracks provided by MediaSense is not the same length as the other one. Therefore when I mux the tracks together into a single call track people are talking over each other and it is difficult/impossible to follow the call. Because the metadata provided by MediaSense makes me expect the tracks to be of the same length (track duration is the same, track start timestamp is the same) I have no way of knowing to which end of the shorter track I need to add silence, the end or beginning. Calls are in G711 mu-law if that makes any difference.  
 
My suspicion is that when MediaSense is sending the raw tracks using HTTP chunk transfer coding as described in the API docs it is not appropriately including an initial or terminal “SILENCE=x” chunk extension which would pad out the shorter track and make the tracks align when muxed, but I cannot prove that.    
 
I appreciate your feedback, thanks in advance!

Subject: RE: New Message from Daniel Hatch in Cisco MediaSense (MediaSense) - Techni
Replied by: Jeffrey Wolfeld on 06-02-2013 11:51:30 AM
Daniel,

How far off are the tracks from one another?  The timings reported in the MediaSense session data are based on SIP messaging, not on actual RTP media flow.  There is likely to be a small mismatch, but it shouldn't be very much.

I want to make sure that you are actually receiving some SILENCE= tags, right?  Most normal HTTP 1.1 clients automatically combine chunks and in doing so, they lose these inter-chunk tags.  You probably need to code your HTTP client at the TCP level in order to capture these tags.  You've probably gotten that, but I just want to make sure.

I will check on the start and end silence periods and get back to you.

Thanks,
Jeff W.

From: Cisco Developer Community Forums [mailto:cdicuser@developer.cisco.com]
Sent: Wednesday, February 06, 2013 7:36 AM
To: cdicuser@developer.cisco.com
Subject: New Message from Daniel Hatch in Cisco MediaSense (MediaSense) - Technical Discussion: Raw tracks not in sync

Daniel Hatch has created a new message in the forum "Technical Discussion": -------------------------------------------------------------- I'm having a problem where one of the raw tracks provided by MediaSense is not the same length as the other one. Therefore when I mux the tracks together into a single call track people are talking over each other and it is difficult/impossible to follow the call. Because the metadata provided by MediaSense makes me expect the tracks to be of the same length (track duration is the same, track start timestamp is the same) I have no way of knowing to which end of the shorter track I need to add silence, the end or beginning. Calls are in G711 mu-law if that makes any difference.

My suspicion is that when MediaSense is sending the raw tracks using HTTP chunk transfer coding as described in the API docs it is not appropriately including an initial or terminal “SILENCE=x” chunk extension which would pad out the shorter track and make the tracks align when muxed, but I cannot prove that.

I appreciate your feedback, thanks in advance!
--
To respond to this post, please click the following link: http://developer.cisco.com/web/mediasense/forums/-/message_boards/view_message/11617085 or simply reply to this email.

Subject: RE: New Message from Daniel Hatch in Cisco MediaSense (MediaSense) - Techni
Replied by: Daniel Hatch on 06-02-2013 02:12:01 PM
Jeffrey Wolfeld:
How far off are the tracks from one another?

I most egregious example I have found was about 20 seconds. Usually they are more in the range of 3-6 seconds.
Jeffrey Wolfeld:
I want to make sure that you are actually receiving some SILENCE= tags, right? Most normal HTTP 1.1 clients automatically combine chunks and in doing so, they lose these inter-chunk tags. You probably need to code your HTTP client at the TCP level in order to capture these tags. You've probably gotten that, but I just want to make sure.
 
We're using our own code to parse the HTTP response and I've been over it/stepped thru it a few times making sure that it appropriately inserts silence and is reading the tags. I doubt the bug is there.
 
Thanks,
Dan

Subject: RE: Raw tracks not in sync
Replied by: Jeffrey Wolfeld on 07-02-2013 09:56:55 AM
Dan,
Are you saying that the track durations are 3-6 and in some cases 20 seconds off from each other, or from the duration reported by the session data?
In either case, we will need some logs to investigate this.  I will contact you outside the forum.

Thanks,
Jeff W.

Subject: RE: Raw tracks not in sync
Replied by: Daniel Hatch on 07-02-2013 11:36:25 AM
That's the difference between the tracks, I haven't actually compared them to session duration.

Subject: RE: Raw tracks not in sync
Replied by: Jeffrey Wolfeld on 31-10-2013 07:53:49 PM
Just to close on this thread, the problem was fixed in MediaSense Release 9.1(1)ES1, with the addition of a new tag at the head of the downloaded media file that indicates the UTC time at which each track begins.  See the MediaSense Developer Guide for more information.

Attachments

    Outcomes