Urs Fleisch and GitHub
e547578ae8
Support Vorbis comments from a multiplexed Ogg stream ( #1370 )
...
Ogg::File::readPages() read pages from all logical bitstreams and
indexed their packets into one global list. In a multiplexed file the
Theora and Vorbis packets got interleaved, so packet 0 was a Theora
header rather than the expected Vorbis type-3 comment header.
Before reading packets, the Vorbis reader now selects the Vorbis
logical bitstream (the one whose first packet is the Vorbis
identification header), so it reads the correct stream regardless of
position. Packet parsing is scoped to the selected bitstream, so
packets from other codecs in the same file are ignored.
tests/data/multiplex.ogg is generated using
ffmpeg -hide_banner -y \
-f lavfi -i "color=c=navy:s=500x500:r=1:d=2" \
-f lavfi -i "sine=frequency=440:sample_rate=48000:duration=2" \
-map 0:v -map 1:a \
-c:v libtheora -q:v 3 \
-c:a libvorbis -ac 2 -q:a 2 \
-flags +bitexact -fflags +bitexact \
-metadata:s:a:0 TITLE="Paper Lights" \
-metadata:s:a:0 encoder= -metadata:s:v:0 encoder= \
-f ogg tests/data/multiplex.ogg
2026-08-05 20:57:29 +02:00
..
2024-12-30 07:23:11 -06:00
2009-07-24 13:08:51 +00:00
2007-12-01 09:15:23 +00:00
2014-12-30 23:53:40 +09:00
2015-06-18 17:43:09 +09:00
2015-05-25 02:41:27 +09:00
2015-05-25 02:41:27 +09:00
2015-05-25 02:41:27 +09:00
2015-06-18 17:14:04 +09:00
2015-11-30 17:18:50 +09:00
2007-11-10 16:46:04 +00:00
2011-06-19 04:27:51 +02:00
2011-06-23 05:41:23 +02:00
2011-06-19 04:27:51 +02:00
2007-11-10 16:46:04 +00:00
2008-11-12 08:17:11 +00:00
2026-06-26 09:39:27 +02:00
2026-06-26 09:39:27 +02:00
2012-10-13 08:55:23 +02:00
2010-04-02 12:14:32 +00:00
2020-07-01 08:35:20 -07:00
2015-02-18 11:31:55 +09:00
2014-10-21 00:16:43 +09:00
2015-02-18 11:31:55 +09:00
2023-11-03 05:17:39 +01:00
2023-10-23 06:06:05 +02:00
2023-09-26 16:23:03 +02:00
2011-06-09 18:40:22 +02:00
2009-10-24 12:01:40 +00:00
2011-01-08 10:36:26 +00:00
2017-01-10 00:11:13 +09:00
2009-07-28 18:29:39 +00:00
2007-11-10 16:46:04 +00:00
2007-11-10 16:46:04 +00:00
2007-11-10 22:55:14 +00:00
2010-07-11 09:47:58 +00:00
2015-01-05 09:34:30 +09:00
2015-01-05 09:34:30 +09:00
2023-03-18 08:08:37 +01:00
2015-06-18 17:43:09 +09:00
2015-06-18 17:59:06 +09:00
2017-01-20 22:38:25 +09:00
2009-10-29 15:53:20 +00:00
2008-11-12 08:17:11 +00:00
2016-10-22 02:11:16 +09:00
2023-03-18 08:07:46 +01:00
2015-02-18 11:33:10 +09:00
2015-02-17 01:22:39 +09:00
2014-12-31 01:44:25 +09:00
2015-05-22 14:15:10 +09:00
2023-11-05 14:40:18 +01:00
2016-01-09 13:30:00 +09:00
2015-12-22 14:57:23 +09:00
2016-01-09 13:30:00 +09:00
2024-05-18 06:43:00 +02:00
2015-06-18 17:14:04 +09:00
2015-06-18 17:14:04 +09:00
2014-12-23 21:02:00 +09:00
2015-06-21 02:42:47 +09:00
2016-11-11 00:07:32 +09:00
2010-07-03 11:32:27 +00:00
2010-07-03 11:32:27 +00:00
2015-06-18 14:41:37 +09:00
2015-06-18 14:41:37 +09:00
2015-06-18 14:41:37 +09:00
2007-11-22 18:55:47 +00:00
2026-04-04 08:01:41 +02:00
2009-11-02 19:41:12 +00:00
2026-08-05 20:57:29 +02:00
2010-11-27 20:58:57 +00:00
2013-06-21 15:29:00 +09:00
2008-11-12 08:17:11 +00:00
2007-11-10 16:46:04 +00:00
2008-11-12 08:17:11 +00:00
2026-01-24 14:59:10 +01:00
2026-01-24 14:59:10 +01:00
2011-02-13 10:27:56 +00:00
2011-02-13 10:27:56 +00:00
2020-12-23 07:04:51 +01:00
2022-03-12 07:33:32 +01:00
2024-05-18 06:45:10 +02:00
2026-01-24 14:59:10 +01:00
2016-01-30 00:51:28 +09:00
2011-08-27 01:18:21 +02:00
2015-02-17 01:22:39 +09:00
2014-12-30 23:53:40 +09:00
2015-02-17 01:22:39 +09:00
2015-01-01 19:59:30 +09:00
2014-12-31 01:46:30 +09:00
2008-11-12 08:17:11 +00:00
2010-07-25 11:06:36 +00:00
2015-08-01 00:49:21 +09:00
2011-06-19 04:27:51 +02:00
2012-07-11 14:13:41 +02:00
2012-07-11 14:13:41 +02:00
2012-07-11 14:13:41 +02:00
2015-06-20 17:36:00 +09:00
2015-06-18 18:00:03 +09:00
2026-01-24 14:59:10 +01:00
2011-06-24 01:31:15 +02:00
2011-06-17 05:18:49 +02:00
2011-08-26 21:48:40 +02:00
2011-06-23 20:08:05 +02:00
2011-06-18 03:31:49 +02:00
2016-05-14 09:58:19 +09:00
2020-12-21 15:42:13 +01:00
2016-12-22 15:19:45 +00:00
2026-08-01 07:53:53 +02:00
2007-11-10 16:46:04 +00:00
2012-08-17 07:50:48 +02:00
2007-11-10 16:46:04 +00:00
2016-11-02 15:44:50 +09:00
2011-10-08 18:41:15 +02:00
2015-07-29 20:52:56 +09:00
2014-12-23 21:02:00 +09:00
2015-02-17 01:22:38 +09:00