diff options
author | wm4 <wm4@nowhere> | 2013-05-03 20:07:04 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2013-05-05 18:44:24 +0200 |
commit | 36444332249e28cc053df83b9a81da492cfca079 (patch) | |
tree | 6a629bc110bd321c1edc340b5037317926a5a8d8 /demux | |
parent | acad31c2d382043f1c43c74a678de659a54a3788 (diff) | |
download | mpv-36444332249e28cc053df83b9a81da492cfca079.tar.bz2 mpv-36444332249e28cc053df83b9a81da492cfca079.tar.xz |
core: move demuxer time reporting to demuxer
Diffstat (limited to 'demux')
-rw-r--r-- | demux/demux.c | 18 | ||||
-rw-r--r-- | demux/demux.h | 3 |
2 files changed, 21 insertions, 0 deletions
diff --git a/demux/demux.c b/demux/demux.c index 937c881639..9622c2412a 100644 --- a/demux/demux.c +++ b/demux/demux.c @@ -1382,6 +1382,24 @@ int demuxer_chapter_count(demuxer_t *demuxer) return demuxer->num_chapters; } +double demuxer_get_time_length(struct demuxer *demuxer) +{ + double get_time_ans; + // <= 0 means DEMUXER_CTRL_NOTIMPL or DEMUXER_CTRL_DONTKNOW + if (demux_control(demuxer, DEMUXER_CTRL_GET_TIME_LENGTH, + (void *) &get_time_ans) > 0) + return get_time_ans; + return -1; +} + +double demuxer_get_start_time(struct demuxer *demuxer) +{ + double time; + if (demux_control(demuxer, DEMUXER_CTRL_GET_START_TIME, &time) > 0) + return time; + return 0; +} + int demuxer_angles_count(demuxer_t *demuxer) { int ris, angles = -1; diff --git a/demux/demux.h b/demux/demux.h index 3d66139d69..048ffb3934 100644 --- a/demux/demux.h +++ b/demux/demux.h @@ -401,6 +401,9 @@ int demuxer_seek_chapter(struct demuxer *demuxer, int chapter, double *seek_pts); void demuxer_sort_chapters(demuxer_t *demuxer); +double demuxer_get_time_length(struct demuxer *demuxer); +double demuxer_get_start_time(struct demuxer *demuxer); + /// Get current chapter index if available. int demuxer_get_current_chapter(struct demuxer *demuxer, double time_now); /// Get chapter name by index if available. |