Multimedia on Symbian OS: Inside the Convergence Device
This pioneering book covers each of the key technologies available (such as audio, video, radio, image conversion, tuner and camera) at a high level, to give the reader context, before drilling down to details of how to use each of them. The book includes code samples which are available for download on a website and cover key APIs with detailed description of each. Additional information includes the evolution of multimedia on Symbian OS from previous versions to the current (v9.5) and plans for the future.
- Architecture of Multimedia on Symbian OS
- Onboard Camera
- Multimedia Framework of both Video & Audio
- Image Converter Library
- The Tuner
About this Book.
Symbian Press Acknowledgments.
Code Conventions and Notations.
1.1 The Convergence Device.
1.2 Transformation of the Media Industry.
1.3 Symbian OS.
1.4 The Cutting Edge.
1.5 Evolution of the Multimedia Subsystem in Symbian OS.
1.6 A Peek into the Future.
2 Multimedia Architecture.
2.1 The ECOM Framework.
2.2 Platform Security.
2.3 The Content Access Framework.
2.4 Multimedia Subsystem.
2.5 Future Multimedia Support.
3 The Onboard Camera.
3.2 Accessing the Camera.
3.3 Camera Control.
3.4 Displaying the Viewfinder.
3.5 Capturing Still Images.
3.6 Capturing Video.
3.7 Error Handling.
3.8 Advanced Topics.
4 Multimedia Framework: Video.
4.1 Video Concepts.
4.2 Symbian OS Video Architecture.
4.3 Client API Introduction.
4.4 Identifying Video Controllers.
4.5 Controlling Video Playback.
4.6 Controlling Screen Output.
4.7 Getting Video Information.
4.8 Accessing Metadata.
4.9 Controlling the Audio Output.
4.10 Streaming Playback.
4.11 Recording Video.
4.12 Controlling the Video that Is Recorded.
4.13 Controlling the Audio that Is Recorded.
4.14 Storing Metadata.
4.15 Custom Commands.
4.16 Examples and Troubleshooting.
5 Multimedia Framework: Audio.
5.2 Audio Input and Output Streams.
5.3 Audio Player Utility.
5.4 Audio Recorder Utility.
5.5 File Conversion.
5.6 Tone Utility.
5.8 Audio Policies.
5.9 Priority Settings.
6 Image Conversion Library.
6.2 Decoding Images.
6.3 Encoding Images.
6.4 Displaying Images.
6.5 Transforming Images.
6.6 Native Bitmap Operations.
6.7 Miscellaneous APIs.
7 The Tuner API.
7.2 Getting Started.
7.3 Basic Use Cases.
7.4 Future Technologies.
7.5 Sample Code.
8 Best Practice.
8.1 Always Use an Active Scheduler.
8.2 Use APPARC to Recognize Audio and Video.
8.3 Don’t Use the Video Player to Open Audio Files.
8.4 Know that MMF and ICL Cannot Detect Some Formats.
8.5 Don’t Use CMdaAudioOutputStream for Network Streaming.
8.6 Use CMdaAudioPlayerUtility to Play Tone Sequence Files.
8.7 Use CMdaAudioPlayerUtility to Play Clips.
8.8 Don’t Hardwire Controller UIDs in Portable Code.
8.9 Set Controller Thread Priorities Before Playing or Recording.
8.10 Recognize that Behavior Varies when Several Clients Are Active.
8.11 Understand that the System is Based on Plug-ins.
8.12 Use RFile and TMMSource Instead of Passing a File Name.
8.13 Consider the Volume Control.
8.14 Know When to Use Threaded Requests on ICL.
8.15 Don’t Have too many Clients.
8.16 Understand the Multi-heap Problem.
References and Resources.
Mark Wilcox has been playing with computers since his dad bought a ZX81 when he was four. He wrote his first multimedia application (a three room text adventure with sound effects!) on an Acorn Electron when he was seven. Mark has a Masters degree in Mathematics, following this up with a research postgraduate in Cybernetic Intelligence. In 2001 he started developing software for mobile phones and since then has been involved in handset development projects for Ericsson, Fujitsu, Nokia, Panasonic and Samsung. During this time he’s worked on everything from a GPRS stack, device drivers and a power management server to messaging applications and the code that draws the soft keys. It was while working as a Software Architect for Nokia’s Multimedia business unit, developing their flagship Nseries products, that Mark developed his interest in the multimedia capabilities of Symbian OS. Mark became an Accredited Symbian Developer and a Forum Nokia Champion in 2007.