diff options
author | Max Kellermann <max@duempel.org> | 2014-04-29 11:56:05 +0200 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2014-04-29 11:56:05 +0200 |
commit | 70bd35abe2ab774b70e37822f0200fcd4ebcd6c6 (patch) | |
tree | f0ee4de258840e0b2bc3c7c9d96d5b971dd09e6d | |
parent | 0efb67b51e0d9d34c65bbdbd9df567a8a991cc4c (diff) |
decoder/OggUtil: allow skipping up to 32 kB after seek
Fixes missing song length on high-latency Opus files.
According to tests with 320 kbit/s opus files with 60ms packets, we
need to skip up to 29 kB.
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | src/decoder/OggUtil.cxx | 2 |
2 files changed, 3 insertions, 1 deletions
@@ -1,4 +1,6 @@ ver 0.18.11 (not yet released) +* decoder + - opus: fix missing song length on high-latency files * fix race condition when using GLib event loop (non-Linux) ver 0.18.10 (2014/04/10) diff --git a/src/decoder/OggUtil.cxx b/src/decoder/OggUtil.cxx index fd137f110..8f181ce57 100644 --- a/src/decoder/OggUtil.cxx +++ b/src/decoder/OggUtil.cxx @@ -81,7 +81,7 @@ bool OggExpectPageSeek(ogg_sync_state &oy, ogg_page &page, Decoder *decoder, InputStream &input_stream) { - size_t remaining_skipped = 16384; + size_t remaining_skipped = 32768; while (true) { int r = ogg_sync_pageseek(&oy, &page); |