1
0
mirror of https://github.com/mpv-player/mpv synced 2025-03-31 15:59:34 +00:00
mpv/stream
wm4 f304a79935 stream_cdda: fix operation
The cdio API always reads in sectors (fixed CDIO_CD_FRAMESIZE_RAW
blocks). In the past, mpv/MPlayer streams had a way for a stream to
signal a sector size, so the stream's fill_buffer implementation could
ignore the length argument. Later, that was removed, but stream_cdda.c
was left with assuming that the read size was always larger than the
sector size (rightfully at the time). Even later, this assumption was
broken with commit f37f4de, when it was suddenly possibly that smaller
reads were performed (at ring buffer boundaries). It returned EOF if the
buffer size was too small, so playback stopped very early.

Fix this by explicitly handling arbitrary sizes.

Tested with a .cue/.bin file only.

Fixes: #7384
2020-02-02 02:15:51 +01:00
..
cookies.c cookies: change license to LGPL 2017-05-11 07:29:01 +02:00
cookies.h cookies: change license to LGPL 2017-05-11 07:29:01 +02:00
dvb_tune.c dvb: Add multiple frontends support: MAX_FRONTENDS now 8. 2017-12-16 23:24:55 -08:00
dvb_tune.h dvb: Add multiple frontends support: MAX_FRONTENDS now 8. 2017-12-16 23:24:55 -08:00
dvbin.h stream_dvb: Remove now replaced stream-control code for good. 2019-10-02 01:25:45 +02:00
stream_avdevice.c stream, demux: redo origin policy thing 2019-12-20 13:00:39 +01:00
stream_bluray.c stream, demux: redo origin policy thing 2019-12-20 13:00:39 +01:00
stream_cb.c stream, demux: redo origin policy thing 2019-12-20 13:00:39 +01:00
stream_cdda.c stream_cdda: fix operation 2020-02-02 02:15:51 +01:00
stream_concat.c stream_concat, stream_memory: more stream_origin stuff 2019-12-23 11:03:44 +01:00
stream_dvb.c stream_dvb: Remove implicit fallthroughs and consistify debug messages. 2019-12-28 19:16:07 +01:00
stream_dvdnav.c stream, demux: redo origin policy thing 2019-12-20 13:00:39 +01:00
stream_edl.c demux, stream: rip out the classic stream cache 2018-08-31 12:55:22 +02:00
stream_file.c stream, demux: redo origin policy thing 2019-12-20 13:00:39 +01:00
stream_lavf.c stream_lavf: remove version from user agent 2020-01-26 14:24:47 +01:00
stream_libarchive.c stream_libarchive: more broken garbage 2020-01-20 19:58:51 +01:00
stream_libarchive.h libarchive: some shitty hack to make opening slightly faster 2020-01-04 19:56:09 +01:00
stream_memory.c stream_concat, stream_memory: more stream_origin stuff 2019-12-23 11:03:44 +01:00
stream_mf.c demux, stream: rip out the classic stream cache 2018-08-31 12:55:22 +02:00
stream_null.c stream_null: change license to LGPL 2017-05-08 12:45:50 +02:00
stream_smb.c stream, demux: redo origin policy thing 2019-12-20 13:00:39 +01:00
stream.c stream, demux: redo origin policy thing 2019-12-20 13:00:39 +01:00
stream.h stream, demux: redo origin policy thing 2019-12-20 13:00:39 +01:00