1
0
Fork
You've already forked ogg
0
A Go implementation of demultiplexing Ogg bitstreams.
  • Go 100%
Sam Whited b1fe86bf3c
Use module name in NOTICE file
Signed-off-by: Sam Whited <sam@samwhited.com>
2026年03月30日 11:53:03 -04:00
internal internal/crc32: fix name of function 2026年03月13日 07:20:37 -04:00
skeleton skeleton: update types in keypoints 2026年03月30日 11:28:06 -04:00
testdata Add a few simple tests of stream reading 2026年03月08日 20:47:26 -04:00
.gitignore Add a few more page decoding tests 2026年03月07日 07:51:12 -05:00
go.mod Add initial reader functionality 2026年03月05日 10:06:22 -05:00
LICENSE Add initial reader functionality 2026年03月05日 10:06:22 -05:00
NOTICE Use module name in NOTICE file 2026年03月30日 11:53:03 -04:00
ogg.go Verify checksum when reading page 2026年03月16日 17:21:25 -04:00
page.go Verify checksum when reading page 2026年03月16日 17:21:25 -04:00
page_test.go Verify checksum when reading page 2026年03月16日 17:21:25 -04:00
README.md Mention why this was written in the readme 2026年03月30日 11:34:39 -04:00
stream.go Verify checksum when reading page 2026年03月16日 17:21:25 -04:00
stream_test.go Verify checksum when reading page 2026年03月16日 17:21:25 -04:00
writer.go Calculate checksum when writing a stream 2026年03月16日 17:28:09 -04:00

Ogg

The codeberg.org/samwhited/ogg package contains a stream-based interface for reading data from Ogg files without needing to understand the underlying structure of the Ogg bitstream. Lower-level access is also be provided for writing tools to handle invalid Ogg encodings.

This was mostly written to allow me to easily experiment with the Ogg Stem file format defined in draft-swhited-ogg-stems and the Skeleton meta bitstream defined in draft-swhited-ogg-skeleton. It will likely never be production ready and you probably shouldn't use it in anything important, but if you are interested in developing it further (or have feedback about either of the aforementioned I-Ds) please reach out.

License

Licensed under the Apache License, Version 2.0 with the Commons Clause addendum. A copy of the licenses can be found in the LICENSE and NOTICE files.

All documentation including Go documentation comments and this README file are licensed under a Creative Comments Attribution 4.0 license (CC-BY 4.0).