- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
What do the times stored in MediaData mean?
Do they represent the:
1) frame PTS and DTS
or
2) frame PTS start and PTS end
I ask that question because I see a code in UMC like:
mediaData->SetTime(pts_start, pts_end);
.....
mediaData->SetTime(m_PTS, m_DTS);
The first param is obviously the PTS start time.
If the second param specify DTS then its value must be less than PTS start.
If the second param specify PTS end then its value must be greater than PTS start.
What does the second param in mediaData->SetTime(time1, time2) specify? Is it DTS or PTS_end?
Thanks
Anonymous2
What do the times stored in MediaData mean?
Do they represent the:
1) frame PTS and DTS
or
2) frame PTS start and PTS end
I ask that question because I see a code in UMC like:
mediaData->SetTime(pts_start, pts_end);
.....
mediaData->SetTime(m_PTS, m_DTS);
The first param is obviously the PTS start time.
If the second param specify DTS then its value must be less than PTS start.
If the second param specify PTS end then its value must be greater than PTS start.
What does the second param in mediaData->SetTime(time1, time2) specify? Is it DTS or PTS_end?
Thanks
Anonymous2
Link Copied
1 Reply
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Actually the 2nd parameter is used in a few components only. It is important for MPEG2 multiplexing of video elementary streams and is used as DTS to reflect reordering. MPEG2 multiplexer aligns video frames by DTSes before writing the output stream. As far as I remember it can also be used as PTS_end for some audio codecs to calculate duration of the sample but usually PTS of the next sample is used for it. Many components don't use it at all.
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page