mpv/stream
wm4 b01e8d6210 stream: report chapter times, use time seeks for DVD chapters
Allow the stream layer to report chapter times. Extend stream_dvd to do
this. I'm not 100% sure whether the re-used code is bug-free (because it
was used for slave-mode and/or debugging only).

MAke the frontend do time-based seeks when switching DVD chapters. I'm
not sure if there's a real reason STREAM_CTRL_SEEK_TO_CHAPTER exists
(maybe/hopefully not), but we will see.

Note that querying chapter times in demuxer_chapter_time() with the new
STREAM_CTRL_GET_CHAPTER_TIME could be excessively slow, especially with
the cache enabled. The frontend likes to query chapter times very often.
Additionally, stream_dvd uses some sort of quadratic algorithm to list
times for all chapters. For this reason, we try to query all chapters on
start (after the demuxer is opened), and add the chapters to the demuxer
chapter list. demuxer_chapter_time() will get the time from that list,
instead of asking the stream layer over and over again.

This assumes stream_dvd knows the list of chapters at the start, and
also  that the list of chapters never changes during playback. This
seems to be true, and the only exception, switching DVD titles, is not
supported at runtime (and doesn't need to be supported).
2013-05-06 23:39:48 +02:00
..
ai_alsa1x.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
ai_oss.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
asf_mmst_streaming.c cache: simplify further 2012-12-03 21:08:51 +01:00
asf_mmst_streaming.h
asf_streaming.c stream: implement some HTTP specific options for stream_lavf 2013-01-24 17:45:13 +01:00
audio_in.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
audio_in.h
cache2.c stream: report chapter times, use time seeks for DVD chapters 2013-05-06 23:39:48 +02:00
cache2.h cache: simplify further 2012-12-03 21:08:51 +01:00
cdd.h
cdinfo.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
cookies.c Fix some cppcheck / scan-build warnings 2013-05-06 23:11:11 +02:00
cookies.h stream: implement some HTTP specific options for stream_lavf 2013-01-24 17:45:13 +01:00
dvb_tune.c Fix some cppcheck / scan-build warnings 2013-05-06 23:11:11 +02:00
dvb_tune.h
dvbin.h
frequencies.c
frequencies.h
http.c Fix some cppcheck / scan-build warnings 2013-05-06 23:11:11 +02:00
http.h
network.c network: set default user-agent to MPlayer's 2013-02-26 01:55:52 +01:00
network.h stream: implement some HTTP specific options for stream_lavf 2013-01-24 17:45:13 +01:00
pvr.h
stream.c core: don't report byte-based playback position with dvd 2013-05-05 18:44:23 +02:00
stream.h stream: report chapter times, use time seeks for DVD chapters 2013-05-06 23:39:48 +02:00
stream_avdevice.c demux_lavf: add support for libavdevice 2012-12-03 21:08:51 +01:00
stream_bluray.c stream_bluray: remove the broken -bluray-chapter option 2013-04-27 15:28:57 +02:00
stream_cdda.c Fix some cppcheck / scan-build warnings 2013-05-06 23:11:11 +02:00
stream_cddb.c stream_cddb: fix compilation on MinGW-w64 2013-04-06 00:00:21 +02:00
stream_dvb.c Check return values of some mp_find_..._config_file function calls for NULL 2013-02-09 00:21:18 +01:00
stream_dvd.c stream: report chapter times, use time seeks for DVD chapters 2013-05-06 23:39:48 +02:00
stream_dvd.h Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
stream_dvd_common.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
stream_dvd_common.h
stream_file.c stream, demux: replace off_t with int64_t 2012-11-20 18:00:15 +01:00
stream_ftp.c stream_ftp: cleanups 2012-12-03 21:08:52 +01:00
stream_lavf.c build: make it work on somewhat older ffmpeg versions 2013-01-31 17:42:21 +01:00
stream_mf.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
stream_null.c
stream_pvr.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
stream_radio.c Remove BSD legacy TV/radio support (BT848 stuff) 2013-02-06 23:03:39 +01:00
stream_radio.h Remove BSD legacy TV/radio support (BT848 stuff) 2013-02-06 23:03:39 +01:00
stream_smb.c stream, demux: replace off_t with int64_t 2012-11-20 18:00:15 +01:00
stream_tv.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
stream_udp.c stream: implement some HTTP specific options for stream_lavf 2013-01-24 17:45:13 +01:00
stream_vcd.c stream, demux: replace off_t with int64_t 2012-11-20 18:00:15 +01:00
stream_vstream.c stream, demux: replace off_t with int64_t 2012-11-20 18:00:15 +01:00
tcp.c Fix potential bugs and issues, general cleanups 2012-11-20 18:00:14 +01:00
tcp.h
tv.c core: redo how codecs are mapped, remove codecs.conf 2013-02-10 17:25:56 +01:00
tv.h Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
tvi_def.h video: decouple internal pixel formats from FourCCs 2013-01-13 20:04:11 +01:00
tvi_dummy.c video: decouple internal pixel formats from FourCCs 2013-01-13 20:04:11 +01:00
tvi_v4l2.c Fix some cppcheck / scan-build warnings 2013-05-06 23:11:11 +02:00
udp.c Fix potential bugs and issues, general cleanups 2012-11-20 18:00:14 +01:00
udp.h
url.c Fix lots of bugs in mp_http URL handling 2013-01-10 14:11:26 +01:00
url.h stream: fix redirection for proxy URLs 2012-10-30 19:50:20 +01:00
vcd_read.h vcd_read: cleanup ifdefs 2013-04-04 14:03:22 +02:00
vcd_read_darwin.h Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
vcd_read_fbsd.h Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
vcd_read_win32.h vcd_read_win32.h: fix compilation on MinGW-w64 2013-04-06 00:00:16 +02:00