== Seeking and Editing Problems ==
* pages, and libogg's behaviour when creating them
i don't know the answers ==
* We need to design a successor to Ogg
* Would an up-front index be better?
Cleaner Abstractions == * We should not need to know the type of a stream if we are not decoding the stream * granulepos interpretations * headers * seeking * cutting * Skeleton goes some way towards fixing this == What use are... == * serial numbers? * packet numbers? * pages? * checksums? ** Useful for audio (preventing ear damage), but could be optional for video
== Devil's Advocate ==
* Nobody cares about <insert hated feature here> anyway
* Even if we have Ogg2, we'll still be stuck having to support Ogg1 and broken files
== Short-term workarounds (Ogg1-compatible) ==
* Don't use partial packets unless absolutely necessary
* If absolutely necessary, don't share the pages with other packets
* Specify that pages should not contain more than X ms of data (let's say 250-500 ms)
* Put Theora keyframes alone on their page??
== Libogg issues ==
* Stupid decision for flushing pages
* Makes it generally easy to build broken files.