QNX Aviage Multimedia Suite
The QNX Aviage Multimedia Suite is a fully customizable platform for building scalable consumer-grade solutions that range from simple multimedia players to multi-console media networks with sharable media. It combines a full-featured media player with supporting multimedia software for building next-generation digital infotainment platforms and includes:
- a sophisticated multimedia engine with configurable behavior
- high-level HMI development supporting multiple and simultaneous use of media inputs and audio/video outputs
- media synchronizers and fault-tolerant databases to ensure data availability
- session management and persistence
- software and hardware-assisted decode and encode
Business benefits
Ensure timely product development and quality
The QNX Aviage Multimedia Suite allows the project manager to control the multimedia experience by tuning an industry-hardened, quality-controlled multimedia engine. Programmers and system integrators immediately feel comfortable with the development model, ensuring timely product development and quality.
Quickly support the features your customers want
Popular features such as iPod integration, popular decode formats, playlists, album art, ripping of an audio CD are provided. No special coding is required to implement them.
Standards means developer comfort
POSIX and SQL standards are used to ensure that software is well understood. Text-based configuration files define device behaviour and high-level APIs are used to tune and control the media experience. The use of standards guarantees programmer comfort and code re-use.
Lower system BOM cost
- Shared Apple Authentication IC supports multi-zone system
- Fast boot removes need for separate IC to respond to CAN BUS
- Hard real-time allows right-sized processor
- Flexibility for software versus hardware decoders allows trade-off of peripheral cost versus processor cost
- Modularity supports hardware scale down with feature scale down
- MPEG-4 Part 10 (h.264) for Intel©
- What’s new for MME 1.2
-
- DVD-V playback
- Video file playback
- Microsoft Zune support
- Significant improvements to Album Art support
- Significant improvements to metadata synchronization speeds
- Additional playlists supported
- Faster startup, much less memory used
- RTP & HTTP streaming
- TI OMAP3 Codec Engine (audio decoders)
- Intel Performance Primitives codecs
Technology overview
To properly manage the wide range of media storage devices and streams available today as well as their data content requires a highly integrated and uniform software model. The QNX Aviage Multimedia Suite provides high-level control of an intelligent multimedia engine, which includes:
- setup of device storage configuration (CDROM, USB, CDDA etc)
- managing device insertion and removal
- finding and itemizing media content on devices and streams
- extracting and managing media meta-data
- managing data persistence and media libraries
- connecting media filters, readers, writers, decoders, encoders to inputs and outputs
- supporting hardware-assist (eg DSPs)
- supporting intelligent media players such as iPods, Zunes, and Certified for Windows Vista media players, including DRM content
- supporting APIs for controlling playback of media
This high-level control allows the system integrator to focus on other value-add activities, such as:
- adapting to new protocols and new embedded hardware
- supporting a new media type or data format while ensuring a consistent HMI
- setting up hardware-specific device storage configuration
- tuning the audio and video outputs including hardware-assist (DSP) decode and encode
- representing the media data and controlling playback and record
In addition, the QNX Aviage Multimedia Suite is fully network-ready meaning that not only the control of the media player can occur over a network, but that media content itself can flow between media engines. Any digital media that appears in the network can be accessed by any media engine in the network.
Functional blocks
The QNX Aviage Multimedia Suite can be divided into several key functional blocks.
Identify & connect
This function block handles the identification and connection of USB flash disks, data CDs, audio CDs, iPods, Zunes, Certified for Windows Vista media players, mobile handsets, and other media storage devices, as well as streaming content providers such as Internet Radio.
In some cases, the identify and connect block requires authentication, using Digital Rights Management (DRM). A common example is Windows Media DRM10 subscription content on a Certified for Windows Vista media player.
Play & record
Hidden within this block are any hardware-assisted decoders and audio/ video hardware dependencies. Often, a hardware vendor that offers multimedia DSP services will provide a services library API to the main CPU for control and data transfer. This API stays hidden from the rest of the multi-media function blocks, allowing for degrees of hardware independence while still providing high performance.
Any use-case restrictions are exposed to the other function blocks. For example, some hardware decoders may not support multiple simultaneous decode, requiring the HMI and Control blocks to handle user requests differently.
Organize (media database)
The organize function block is encapsulated in the media database and its API. Industry standard SQL is used. The database supports transactions and synchronous writes so that power loss does not cause corruption. It also handles corruption detection and auto correction. For media management, the database supports Unicode UTF-8.
Multimedia controller
The controller function block drives the other function blocks and exposes a high-level API to the HMI function block. The controller block can be specific to certain markets; for example, an automotive head unit may handle CD ripping and encoding differently than a home media center.
High-level set of APIs
- notification of insertion/removal of devices
- creation and playing of a playlist from available content
- play, next/prev item, pause, seek, fast forward/rewind, play status
- set random, repeat mode
- scan mode (play content for X seconds and go to next song)
- synchronization of media storage devices
- storing/restoring of state of media storage device (to support removal/reinsert)
- browsing of media storage devices
- controlling of the copy/transcode engine
- managing of playlists: parse and play
- handling of media specific content such as album art, photo metadata etc.
- notification of removed, damaged, or corrupt media
Configurability
- error behavior
- damping audio filter for trick play, play, and external events such as phone events
HMI
The HMI function block will use the controller block APIs and allow for multi-modal input and display. The HMI could be a graphical touchscreen or voice control, or both interfaces at the same time. The HMI could even be managed remotely, via a simple agent that translates control and status data into messages understood by a web browser, or by a Java or Flash interface. This design provides much more flexibility than simply re-skinning a media player.
Uniformity & scalability
The functional blocks above are abstracted from one another without sacrificing performance. This ensures that a component within a functional block can be updated without the need for any changes elsewhere. For example, a new decoder can be added to the play and record function block with no other changes required. A new storage media can be added. This uniformity of interface forces consistency while allowing the system integrator to dynamically choose the best software solution for their hardware design. For example, during some usage cases a DSP may be used for audio decode, while in other cases a software decoder will be used. All this can happen dynamically under control of the integrator.
Technology highlights
The QNX Aviage Multimedia Suite is built on the same design values as the QNX Neutrino Operating System. Here are some of those values as they relate to multimedia.
Built from trusted multimedia components that remain unchanged between projects
- Modify and configure software to react quickly to market requirements
Control HMI, device behavior and media management using high level programming and configuration techniques
- Replace underlying components such as decoders and DRM schemes without any change to the HMI
Embedded focus: Consumer and automotive-centric design
- Independently upgrade software components. Contain failure of a component and restart the component.
- Control ROM and RAM requirements by removing unneeded components or by restricting the requirements needed by components
Realtime: Predictable response times
- Offer the user quick and consistent response times. For example, the response time when pressing a button or touching a touchscreen must always be the same, regardless of what else the device is doing (ripping a CD, recording XM radio, and so on)
Fast booting and instant power off
- Access media content with no intrinsic delays after a cold boot. Power off a device at any time, even while writing to storage media
- Ensure data integrity with reliable filesystems for embedded hard drives and large storage media
Ensure future-proofing and field upgradeability
- Add new media storage devices and new streaming content to the platform without upsetting original device behavior. Add new DRM techniques without impact.
- Share inputs (media storage) and outputs (speakers/displays) on a network without software re-design. (Networking design is flexible enough to support wired networks as well as lossy networks (wireless) and encryption techniques such as DTCP-[IP].)
Industry Standards and market-focused hardware support
- Support industry standards for programming and configuration: POSIX, SQL
- Support industry standards for media storage and media connectivity as well as decode and encode (e.g. MP3 Standard, WMA9, MPEG-4 etc.)
- Support industry standards for connectivity
- Support the reference boards (CPU and DSP combinations) required by consumer and automotive OEMs
Specifications
- Media stores
- USB mass storage, SD
- NOR Flash, NAND Flash
- CDDA (Red Book)
- CD-ROM (Yellow Book), CD-R/RW (Orange Book)
- DVD-ROM
- P-ATA, S-ATA embeddable harddrive support
- USB mass storage, SD
- File systems
- DOS FAT16/32
- UDF 2.00 / 2.01
- ISO-9660+Joliet
- Transaction-based for NAND Flash1
- DOS FAT16/32
- Internationalization
- Unicode UTF-8 storage, transcoding, and presentation
- Unicode UTF-8 storage, transcoding, and presentation
- Software decoders
- MP3
- Standard decode (ISO-11172 Layer 1,2,3)
- Floating point for all processors, fixed point available for ARM
- MPEG-2 Audio Layer 1,2,3 (ISO-13818) decode
- MPEG-2.5 decode
- MPEG Surround decode (in legacy mode)
- VBR and CBR, mono and two-channel stereo
- Standard decode (ISO-11172 Layer 1,2,3)
- WMA9
- Standard: Floating and fixed point
- WMA9 Lossless
- VBR and CBR, mono and two-channel stereo
- Standard: Floating and fixed point
- OggVorbis
- Ver1 : 44.1 KHz Stereo
- Ver1 : 44.1 KHz Stereo
- AAC-LC
- MPEG-2 Part 7 AAC decode (formerly ISO/IEC 13818-7)
- Floating point
- m4a, mp4 parsing
- MPEG-2 Part 7 AAC decode (formerly ISO/IEC 13818-7)
- PCM (WAV)
- MPEG-4 container, .m4a
- MPEG-4 Part 10 (H.264), MPEG-4 video, MPEG-2 video, H.263 video for Intel©
- DVD-V navigator
- Software encode options
- MP3
- Hardware assist 2
- Texas Instruments DSP audio / video codec integration including DVD navigation and playback
- TI Jacinto
- TI Jacinto
- Renesas optimized software codecs
- Intel Performance Primitive codecs
- TI OMAP3 Codec Engine codecs
- Texas Instruments DSP audio / video codec integration including DVD navigation and playback
- Media metadata
- MP3 tags: ID3 v1 and v22/v23/v24
- WMA9 header
- OGG Vorbis v1 header
- AAC header (iTunes tags)
- CD-text
- MP3/WMA album art
- MP3 tags: ID3 v1 and v22/v23/v24
- Playlists
- M3U standard and extended
- iTunes (XML)
- PLS (Standard)
- WAX/ASX
- RMP (Real Media Player)
- Images3
- JPEG ISO/IEC IS 10918/ITU-T T.81
- BMP (up to 32bit)
- PNG, PCX, TGA, SGI
- GIF-87, GIF-89a
- JPEG ISO/IEC IS 10918/ITU-T T.81
- Portable device support
- iPod serial + USB, analog output
- iPod USB direct connect, digital output
- Zune
- digital Certified for Windows Vista media players (Media Transfer Protocol) + WMDRM10
- iPod serial + USB, analog output
- Digital rights management support
- Expandable for future DRM schemes
- WMDRM10
- Apple authentication IC with distributed access
- Multimedia ecosystem
- Partnerships with leading software suppliers including DVD/VCD-navigation, music-database, and DSP-solution vendors
1 Available in QNX Transaction Filesystem option
2 Requires hardware partner engagement
3 Requires graphics option
System requirements
- QNX 6.3.2 or 6.4.0
- iPod USB direct connect, digital output available on 6.4.0 only
- Target systems include:
- X86, PPC, SH4, ARM
- Pre-integrated hardware solutions available for TI Jacinto
- X86, PPC, SH4, ARM