2. Who am I?
Works at Pathpartner(pathpartnertech.com) as a
Technical Architect.
Working on multimedia frameworks and systems
optimization for 8 years.
Contact: galahad@gmail.com
Give overview of multimedia frameworks and its use.
Mention about opencore and the transition from opencore to stagefright in froyo.Mention about move to OpenMax AL as an alternative in Ice cream sandwich.
DataSource – Baseclass for all data source. Sniffers are registered from here. This is what is used to find file/mime types. For e.g., FileExtractor, MPEG4DataSource etc.MediaExtractor – Talks to Data sources and parses data to extract media content. MPEG4Extractor is an example of this.MediaSource – The source of media data flowing through stagefright. Every component which needs to exchange media data have to be of this type. MPEG4Source is an example.MediaBuffer – object to pass data around. Supports reference counting, MIME types, timestamps etc. Also of interest is the MediaBufferGroup.MetaData – the ambassador. The structure used to exchange info b.w two components. Config info, Mime type, etcOMXCodec – the wrapper over the encoder and decoder components. Controls the whole life cycle of the OpenMax Codec (mention the life stages)CameraSource – Is the source node which feeds data for video recording. MediaWriter – sink node and the base class for all writers
Give overview of the flow from the top level media APIs to the bottom File playback is a sequence of initializing input nodes, finding data types, instantiating necessary decoders and using this info to instantiate renderers. A decode sequence involves extractors extracting the buffers and this gets is passed onto the OMXCodec. After decoding is complete, awesome renderer renders it using the renderer.TimedQueue is what is used to sleep on and achieve AV Sync. The clock gets updated from audio player depending on the amount of data played back.
What is important here is the passing around of config dataGive example of SKYPE
Will be describing the basics behind RTSP streaming here. The blocks involved.Has support for AMR, H.263, H.264, MPEG4.
ARTSP Controller is the media extractor, and the RTP stuff is taken care by ARTPConnection or ARTPSource. RTSP stuff is handled ARTSPConnection. Mention about looper and message posting.ARTSPConnection takes care of sending requests and receiving responses, ARTPConnection receives the packet, but the parsing is delegated to ARTPAssembler which assembles it using the codec specific assembler, through the ARTPSource.ARTPSession has a track info and the data is queued