mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-23 14:36:24 +00:00
mpdparser: renamed gst_mpd_client_get_next_segment_availability_end_time to gst_mpd_client_get_next_segment_availability_start_time
The function actually returns the segment availability start time (as defined by the standard). That is at the end of the segment, but it is called availability start time. Availability end time is something else (the time when the segment is no longer available on the server). The function name was misleading. https://bugzilla.gnome.org/show_bug.cgi?id=757655
This commit is contained in:
parent
b96ea72b4f
commit
9ccd541980
4 changed files with 25 additions and 21 deletions
|
@ -1506,20 +1506,21 @@ gst_dash_demux_stream_get_fragment_waiting_time (GstAdaptiveDemuxStream *
|
||||||
{
|
{
|
||||||
GstDashDemux *dashdemux = GST_DASH_DEMUX_CAST (stream->demux);
|
GstDashDemux *dashdemux = GST_DASH_DEMUX_CAST (stream->demux);
|
||||||
GstDashDemuxStream *dashstream = (GstDashDemuxStream *) stream;
|
GstDashDemuxStream *dashstream = (GstDashDemuxStream *) stream;
|
||||||
GstDateTime *seg_end_time;
|
GstDateTime *segmentAvailability;
|
||||||
GstActiveStream *active_stream = dashstream->active_stream;
|
GstActiveStream *active_stream = dashstream->active_stream;
|
||||||
|
|
||||||
seg_end_time =
|
segmentAvailability =
|
||||||
gst_mpd_client_get_next_segment_availability_end_time (dashdemux->client,
|
gst_mpd_client_get_next_segment_availability_start_time
|
||||||
active_stream);
|
(dashdemux->client, active_stream);
|
||||||
|
|
||||||
if (seg_end_time) {
|
if (segmentAvailability) {
|
||||||
gint64 diff;
|
gint64 diff;
|
||||||
GstDateTime *cur_time;
|
GstDateTime *cur_time;
|
||||||
|
|
||||||
cur_time = gst_date_time_new_now_utc ();
|
cur_time = gst_date_time_new_now_utc ();
|
||||||
diff = gst_mpd_client_calculate_time_difference (cur_time, seg_end_time);
|
diff = gst_mpd_client_calculate_time_difference (cur_time,
|
||||||
gst_date_time_unref (seg_end_time);
|
segmentAvailability);
|
||||||
|
gst_date_time_unref (segmentAvailability);
|
||||||
gst_date_time_unref (cur_time);
|
gst_date_time_unref (cur_time);
|
||||||
/* subtract the server's clock drift, so that if the server's
|
/* subtract the server's clock drift, so that if the server's
|
||||||
time is behind our idea of UTC, we need to sleep for longer
|
time is behind our idea of UTC, we need to sleep for longer
|
||||||
|
|
|
@ -5794,7 +5794,7 @@ gst_mpdparser_get_list_and_nb_of_audio_language (GstMpdClient * client,
|
||||||
|
|
||||||
|
|
||||||
GstDateTime *
|
GstDateTime *
|
||||||
gst_mpd_client_get_next_segment_availability_end_time (GstMpdClient * client,
|
gst_mpd_client_get_next_segment_availability_start_time (GstMpdClient * client,
|
||||||
GstActiveStream * stream)
|
GstActiveStream * stream)
|
||||||
{
|
{
|
||||||
GstDateTime *availability_start_time, *rv;
|
GstDateTime *availability_start_time, *rv;
|
||||||
|
|
|
@ -579,7 +579,7 @@ GList * gst_mpd_client_get_adaptation_sets (GstMpdClient * client);
|
||||||
gboolean gst_mpd_client_has_next_segment (GstMpdClient * client, GstActiveStream * stream, gboolean forward);
|
gboolean gst_mpd_client_has_next_segment (GstMpdClient * client, GstActiveStream * stream, gboolean forward);
|
||||||
GstFlowReturn gst_mpd_client_advance_segment (GstMpdClient * client, GstActiveStream * stream, gboolean forward);
|
GstFlowReturn gst_mpd_client_advance_segment (GstMpdClient * client, GstActiveStream * stream, gboolean forward);
|
||||||
void gst_mpd_client_seek_to_first_segment (GstMpdClient * client);
|
void gst_mpd_client_seek_to_first_segment (GstMpdClient * client);
|
||||||
GstDateTime *gst_mpd_client_get_next_segment_availability_end_time (GstMpdClient * client, GstActiveStream * stream);
|
GstDateTime *gst_mpd_client_get_next_segment_availability_start_time (GstMpdClient * client, GstActiveStream * stream);
|
||||||
|
|
||||||
/* Get audio/video stream parameters (caps, width, height, rate, number of channels) */
|
/* Get audio/video stream parameters (caps, width, height, rate, number of channels) */
|
||||||
GstCaps * gst_mpd_client_get_stream_caps (GstActiveStream * stream);
|
GstCaps * gst_mpd_client_get_stream_caps (GstActiveStream * stream);
|
||||||
|
|
|
@ -3888,7 +3888,7 @@ GST_START_TEST (dash_mpdparser_segments)
|
||||||
gboolean hasNextSegment;
|
gboolean hasNextSegment;
|
||||||
GstActiveStream *activeStream;
|
GstActiveStream *activeStream;
|
||||||
GstFlowReturn flow;
|
GstFlowReturn flow;
|
||||||
GstDateTime *segmentEndTime;
|
GstDateTime *segmentAvailability;
|
||||||
GstDateTime *gst_time;
|
GstDateTime *gst_time;
|
||||||
GDateTime *g_time;
|
GDateTime *g_time;
|
||||||
|
|
||||||
|
@ -3985,19 +3985,22 @@ GST_START_TEST (dash_mpdparser_segments)
|
||||||
|
|
||||||
/* each segment has a duration of 0 hours, 0 min 45 seconds
|
/* each segment has a duration of 0 hours, 0 min 45 seconds
|
||||||
* segment index is 1.
|
* segment index is 1.
|
||||||
* End time is at the end of segment 1, so 2 * segment_duration = 2 * 45s
|
* Start time is at the beginning of segment 1, so 1 * segment_duration = 1 * 45s
|
||||||
|
* Availability start time is at the end of the segment, so we add duration (45s)
|
||||||
* We also add period start time (10s)
|
* We also add period start time (10s)
|
||||||
|
* So, availability start time for segment 1 is: 10 (period start) +
|
||||||
|
* 45 (segment start) + 45 (duration) = 1'40s
|
||||||
*/
|
*/
|
||||||
segmentEndTime =
|
segmentAvailability =
|
||||||
gst_mpd_client_get_next_segment_availability_end_time (mpdclient,
|
gst_mpd_client_get_next_segment_availability_start_time (mpdclient,
|
||||||
activeStream);
|
activeStream);
|
||||||
assert_equals_int (gst_date_time_get_year (segmentEndTime), 2015);
|
assert_equals_int (gst_date_time_get_year (segmentAvailability), 2015);
|
||||||
assert_equals_int (gst_date_time_get_month (segmentEndTime), 3);
|
assert_equals_int (gst_date_time_get_month (segmentAvailability), 3);
|
||||||
assert_equals_int (gst_date_time_get_day (segmentEndTime), 24);
|
assert_equals_int (gst_date_time_get_day (segmentAvailability), 24);
|
||||||
assert_equals_int (gst_date_time_get_hour (segmentEndTime), 0);
|
assert_equals_int (gst_date_time_get_hour (segmentAvailability), 0);
|
||||||
assert_equals_int (gst_date_time_get_minute (segmentEndTime), 1);
|
assert_equals_int (gst_date_time_get_minute (segmentAvailability), 1);
|
||||||
assert_equals_int (gst_date_time_get_second (segmentEndTime), 40);
|
assert_equals_int (gst_date_time_get_second (segmentAvailability), 40);
|
||||||
gst_date_time_unref (segmentEndTime);
|
gst_date_time_unref (segmentAvailability);
|
||||||
|
|
||||||
/* seek to time */
|
/* seek to time */
|
||||||
gst_time = gst_date_time_new_from_iso8601_string ("2015-03-24T0:0:20Z");
|
gst_time = gst_date_time_new_from_iso8601_string ("2015-03-24T0:0:20Z");
|
||||||
|
@ -4600,7 +4603,7 @@ GST_START_TEST (dash_mpdparser_segment_timeline)
|
||||||
* start time of 15s
|
* start time of 15s
|
||||||
*/
|
*/
|
||||||
segmentAvailability =
|
segmentAvailability =
|
||||||
gst_mpd_client_get_next_segment_availability_end_time (mpdclient,
|
gst_mpd_client_get_next_segment_availability_start_time (mpdclient,
|
||||||
activeStream);
|
activeStream);
|
||||||
fail_unless (segmentAvailability != NULL);
|
fail_unless (segmentAvailability != NULL);
|
||||||
assert_equals_int (gst_date_time_get_year (segmentAvailability), 2015);
|
assert_equals_int (gst_date_time_get_year (segmentAvailability), 2015);
|
||||||
|
|
Loading…
Reference in a new issue