Expose encoding/decoding raw packets without streams
Streams are not actually necessary for encoding/decoding, only muxing/demuxing. Refactor encoding/decoding onto a CodecContext
, and then have a {Video,Audio,Subtitle}CodecContext
which implements the specifics functions.
Do this for #154 (closed).