Show HN: Play Ogg Vorbis files containing loop metadata, in Rust(github.com)
github.com
Show HN: Play Ogg Vorbis files containing loop metadata, in Rust
https://github.com/jkarneges/playloop
2 comments
Just a question. Can an .ogg audio track be looped without a gap (silence)?
You mean without specifying looping positions in the metadata? I would assume so, as long the length of an ogg doesn't require padding and you have a capable player.
One issue I noticed with the Lewton library is it wouldn't let me seek to granule 0 nor the first granule with audio samples. This means looping an entire ogg may not be possible using a single instance of the decoder, and if you set LOOPSTART=0 then playloop will crash. But, this could almost certainly be worked around by making a new decoder and reopening the ogg.
One issue I noticed with the Lewton library is it wouldn't let me seek to granule 0 nor the first granule with audio samples. This means looping an entire ogg may not be possible using a single instance of the decoder, and if you set LOOPSTART=0 then playloop will crash. But, this could almost certainly be worked around by making a new decoder and reopening the ogg.
Wrote this for fun while learning Rust. It's intended for playing video game music, where the intro part of a song is played once followed by a looped section that repeats forever.