This package containers a variety of demonstration programs using the Humble API.
I recommend going through each one in the following order, as they gradually introduce new concepts.
Demo | What You'll Learn |
---|---|
GetContainerInfo | How to open up a media file (Container) and query the contents of that container. |
DecodeAndPlayAudio | How to open a media file, find an audio stream, decode/uncompress the audio, and play it back on your speakers. |
DecodeAndPlayVideo | How to open a media file, find an video stream, decode/uncompress the video, and then use timestamps to determine the right time to display different pictures so the on-screen timing is right. |
RecordAndEncodeVideo | Recording a screen-capture. This demo shows how to open a media file for writing (Muxer), how to get screenshots from Java, how to add streams to a Muxer, and how to Encode and write video data. |
ContainerSegmenter | Shows how to re-mux a video file (i.e. just rewrite packets with no re-encoding) into Apple's HTTP Live Streaming format. Also introduces Bit Stream Filters for doing simple rewriting of packets for some cases. |
If you are brand-new to video programming, I recommend you review this short series of videos first: Overly Simplistic Guide to Internet Video