Multimedia development For Windows CE.NET - PowerPoint PPT Presentation

1 / 27
About This Presentation
Title:

Multimedia development For Windows CE.NET

Description:

Is useful for applications, such as CAD, games ... Mobile phone. IP Phone. Digital camera. Set-top box. MP3 player. Web pad. Digital Media Receiver ... – PowerPoint PPT presentation

Number of Views:64
Avg rating:3.0/5.0
Slides: 28
Provided by: avikc
Category:

less

Transcript and Presenter's Notes

Title: Multimedia development For Windows CE.NET


1
Multimedia development For Windows CE.NET
Authored and Presented By Asaf Shelly Digital
Media MVP
2
Agenda
  • Introduction
  • Windows Media Technologies overview
  • Windows Media Technologies details
  • Windows Media Technologies architecture
  • Media types
  • Scenarios

3
Introduction
  • Microsoft MVP who we are.
  • Windows CE real time OS.
  • DirectX Direct access to hardware.
  • Codecs.
  • Multimedia.

4
Media Technologies overview
  • Source storage, stream.
  • Format Raw, Compressed.
  • Quality vs. Bandwidth.
  • For audio sound, voice.
  • For video encoder features.
  • Loosing data.

5
Media Technologies details
  • Waveform Audio
  • Windows Media Contents Formats
  • DirectX media technologies
  • DirectShow
  • Direct3D
  • DirectSound
  • DirectMusic
  • DirectDVD

6
Waveform Audio
  • Is used to add sound to an application
  • PlaySound function adds routine sound
    capabilities to a device
  • BOOL sndPlaySound( LPCTSTR lpszSoundName, UINT
    fuSound )
  • PlaySound function allows to play waveform audio
    sound files, as long as the sound can be stored
    in available device memory
  • Provides three ways to play a sound
  • As a file name
  • As a system alert, using the alias that is stored
    in the registry
  • As a resource identifier

7
Waveform Audio
  • In Windows CE, most waveform audio files use the
    .wav file name extension
  • Example showing how to play the \Sounds\Bells.wav
    file
  • PlaySound(TEXT("\\SOUNDS\\BELLS.WAV"), NULL,
    SND_SYNC)
  • If the specified file does not exist or the file
    cannot be stored in available device memory
  • PlaySound function plays the default system
    sound
  • Example showing how to specify that the default
    sound should not be played
  • PlaySound(TEXT("\\SOUNDS\\BELLS.WAV"), NULL,
  • SND_SYNC SND_NODEFAULT)

8
Waveform Audio
  • Waveform Audio API
  • Provides the greatest control over audio I/O
    devices
  • Uses waveOutOpen and waveInOpen functions to
    determine the support for the specified format
  • The Waveform Audio API enables the following
    capabilities
  • Querying and opening waveform audio I/O devices
  • Allocating audio data blocks
  • Playing waveform audio files
  • Handling errors generated by audio functions
  • Using windows messages to manage waveform audio
    playback
  • Deallocating memory blocks associated with audio
    data
  • Closing waveform audio output devices

9
Windows Media Contents Formats
10
Windows Media Player
  • ActiveX Control Used by Developers to Implement
    Multimedia
  • Sample application provided with Platform Builder
  • Visual C programming or COM not needed to use
    it
  • Implemented through DS Filter Graph
  • The WMP control can receive streamed content in
    one of two ways
  • By connecting directly to the media server to
    receive clips.
  • By monitoring a defined IP address and port for
    multicast streams
  • ASX files
  • Based on XML syntax
  • Syntax and order are key to successful
    implementation

11
Windows Media Technologies architecture
12
DirectX
  • What is DirectX
  • A set of APIs that enables programmers to write
    programs that access hardware features of a
    computer without knowing exactly what hardware
    will be installed on the machine where the
    program eventually runs
  • DirectX achieves this by creating an intermediate
    layer that translates generic hardware commands
    into specific commands for particular pieces of
    hardware
  • Hardware Abstraction Layer and Hardware Emulation
    Layer
  • HAL is a device-specific interface, which
    DirectDraw uses to work directly with the display
    hardware
  • HAL can be part of the display driver or a
    separate DLL
  • HEL provides the emulating functionality for
    features that are not supported through HAL

13
DirectDraw
  • DirectDraw API provides fast access to display
    hardware while retaining compatibility with GDI
  • Features of DirectDraw
  • Bit-block transfers (blits)
  • Page flipping and multiple back buffers
  • Overlays
  • Alpha source over destination blending
  • Video YUV pixel formats and color conversion
  • Direct video access to the frame buffer

14
DirectShow
  • The Multimedia Challenges include
  • Synchronizing multiple streams (audio/video) in
    various formats from various sources
  • The DirectShow Solution
  • Simplifies the task of creating multimedia
    applications on the Windows platform
  • Uses DirectDraw and DirectSound to render data
    efficiently
  • Provides modular filter architecture
  • Filters fall into three categories
  • Source Filters
  • Transform Filters
  • Renderer Filters

15
Direct3D
  • Provides basic support for interactive 3-D
    graphics applications
  • Is a low-level 3-D API
  • Is a software interface that provides direct
    access to display devices while maintaining
    compatibility with GDI
  • Is useful for applications, such as CAD, games
  • Is a subset of 3-D interfaces in DirectX 8 for
    Windows
  • Windows CE does not support some of the Direct3D
    8 features supported by desktop

16
DirectSound
  • Is a wave-audio component of DirectX API
  • Why use DirectSound?
  • Querying hardware capabilities at run-time
  • Using property sets
  • Low-latency mixing of audio streams
  • Capturing sound
  • DirectSound architecture
  • Allows the use of hardware in the most efficient
    way
  • Provides higher performance than Waveform audio
  • COM interfaces
  • DirectSound playback is built on the IDirectSound
    COM interface

17
DirectMusic
  • Is a musical component of the DirectX API
  • Works with message-based musical data, which is
    then converted to digital wave samples
  • Supports MIDI and run time compositions
  • Uses DirectMusic Producer as an authoring tool
  • Core layer manages timings and ports
  • Performance layer is responsible for higher-level
    aspects of music playback
  • Obtains data from MIDI, segment, or component
    files

18
DirectDVD
  • Is an extensible COM-based based middleware
    framework
  • DVD-Video API
  • Enables rich DVD playback capabilities
  • Designed to operate in small memory footprint
  • Is optimized for hardware-based decoding
    solutions
  • Does not support Karaoke, VCD, SVCD
  • Architectural overview goals
  • DirectDVD implementation provides access to all
    information found on the DVD-Video disc through
    the DirectDVD interfaces
  • Not restrict OEM features that go beyond the
    standard DVD functionality

19
Scenarios
  • Digital Media Receiver
  • DVD-Video device
  • Mobile phone
  • IP Phone
  • Digital camera
  • Set-top box
  • MP3 player
  • Web pad

20
Digital Media Receiver
  • Digital Media Receiver provides a starting point
    for creating a range of devices for delivering
    audio and video content
  • The features available in DMR are focused on
    devices that will be integrated into home
    entertainment centers
  • A DMR based device may require dedicated hardware
    for audio and video rendering or for media
    decoding
  • The dependency on multimedia hardware, leaves
    most feature combinations for the DMR not
    workable on the Emulator
  • Those that do work have lower quality multimedia
    performance

21
Digital Media Receiver Demo
22
Media File Formats
  • Video formats compressed and raw.
  • Audio formats compressed and raw.
  • Reducing weight.
  • Loosing weight.
  • MPEG4, motion.
  • CBR, VBR.
  • ASF.

23
Streaming
  • Local storage.
  • LAN.
  • WAN.
  • Wireless.
  • Multicast vs. Unicast.
  • MMS. Multiple bitrates.

24
Windows Media Player
  • ActiveX control, automation.
  • DirectX wrapper.
  • DirectShow abstraction.
  • XML Parsing ASX.
  • .Net
  • Flexible input.

25
Windows Media Loop
  • Media player client.
  • ASX Scripting / Automation.
  • MMS Server, RTSP, HTTP.
  • Playlists.
  • Encoder.
  • MM2.

26
Performance Using Media Player
  • Buffering.
  • Clock Drift.
  • Caching.
  • RTSP, HTTP.
  • Storage vs. network, CBR vs. VBR.
  • COM.
  • Push ahead.

27
Other Resources
  • http//msdn.microsoft.com/
  • http//www.microsoft.com/windowsmedia/
  • http//www.microsoft.com/windowsce/
  • Contact Me at ContactMe_at_Shelly.co.il
Write a Comment
User Comments (0)
About PowerShow.com