Next:
Multimedia Data Representations
Up:
Multimedia Module No: CM0340
Previous:
Further Information
Multimedia Data
Multimedia Data Representations
Basics of Digital Audio
Application of Digital Audio -- Selected Examples
Digitization of Sound
Digitizing Audio
Computer Manipulation of Sound
Sample Rates and Bit Size
Nyquist's Sampling Theorem
Implications of Sample Rate and Bit Size
Typical Audio Formats
Delivering Audio over a Network
Streaming Audio
Synthetic Sounds
Introduction to MIDI (Musical Instrument Digital Interface)
Components of a MIDI System
Hardware Aspects of MIDI
MIDI Messages
General MIDI
Additional MIDI Specifications
Digital Audio and MIDI
Digital Audio, Synthesis, Midi and Compression -- MPEG 4 Structured Audio
MPEG 4 Structured Audio
Further Reading/Information for Digital Audio and Midi
Graphic/Image File Formats
Graphic/Image Data Structures
Monochrome/Bit-Map Images
Gray-scale Images
8-bit Colour Images
24-bit Colour Images
Standard System Independent Formats
GIF (GIF87a, GIF89a)
JPEG
TIFF
Graphics Animation Files
Postscript/Encapsulated Postscript
System Dependent Formats
Microsoft Windows: BMP
Macintosh: PAINT and PICT
X-windows: XBM
Further Reading/Information
Colour in Image and Video
Basics of Colour
Light and Spectra
The Human Retina
Cones and Perception
CIE Chromaticity Diagram
CRT Displays
Colour Image and Video Representations
Conversion between RGB and CMY:
Summary of Colour
Basics of Video
Types of Colour Video Signals
Analog Video
Digital Video
Chroma Subsampling
CCIR Standards for Digital Video
ATSC Digital Television Standard
Further Reading/Information
Video and Audio Compression
Classifying Compression Algorithms
What is Compression?
Lossless Compression Algorithms (Repetitive Sequence Suppression)
Simple Repetition Suppresion
Run-length Encoding
Lossless Compression Algorithms (Pattern Substitution)
Lossless Compression Algorithms (Entropy Encoding)
Basics of Information Theory
The Shannon-Fano Algorithm
Huffman Coding
Huffman Coding of Images
Adaptive Huffman Coding
Arithmetic Coding
Lempel-Ziv-Welch (LZW) Algorithm
Entropy Encoding Summary
Further Reading/Information
Source Coding Techniques
Transform Coding
A simple transform coding example
Frequency Domain Methods
1D Example
2D (Image) Example
What do frequencies mean in an image?
How can transforms into the Frequecny Domain Help?
Fourier Theory
1D Case
2D Case
The Discrete Fourier Transform (DFT)
Compression
Relationship between DCT and FFT
The Discrete Cosine Transform (DCT)
Differential Encoding
Vector Quantisation
JPEG Compression
Quantization
Uniform quantization
Quantization Tables
Zig-zag Scan
Differential Pulse Code Modulation (DPCM) on DC component
Run Length Encode (RLE) on AC components
Entropy Coding
Summary of the JPEG bitstream
Practical JPEG Compression
Further Reading
Video Compression
H. 261 Compression
Overview of H.261
Intra Frame Coding
Inter-frame (P-frame) Coding
The H.261 Bitstream Structure
Hard Problems in H.261
Motion Vector Search
Propagation of Errors
Bit-rate Control
MPEG Compression
MPEG Video
MPEG Video Layers
B-Frames
Motion Estimation
Coding of Predicted Frames:Coding Residual Errors
Differences from H.261
The MPEG Video Bitstream
Decoding MPEG Video in Software
Intra Frame Decoding
Non-Intra Frame Decoding
MPEG-2, MPEG-3, and MPEG-4
Further Reading/Information
Audio Compression
Simple Audio Compression Methods
Psychoacoustics
Human hearing and voice
Frequency Masking
Critical Bands
Temporal masking
Summary
MPEG Audio Compression
Some facts
Steps in algorithm:
Example:
MPEG Layers
Effectiveness of MPEG audio
Streaming Audio (and video)
Further Exploration
Multimedia Integration, Interaction and Interchange
Integrating Multimedia
Interactive Multimedia
Multimedia Interchange
Quicktime
Introduction
Quicktime Support of Media Formats
QuickTime Concepts
The QuickTime Architecture
QuickTime Components
Quicktime File Format
Further Information
Open Media Framework Interchange (OMFI) Format
Multimedia and Hypermedia Information Encoding Expert Group (MHEG)
The family of MHEG standards
MHEG-5 overview
MHEG Programming Principles
Interaction within a Scene
Availability; Running Status
Interactibles
Visual Representation
Object Sharing Between Scenes
Object Encoding
Conformance
MHEG Coding Examples
An MHEG Player Java Applet -- Futher MHEG Examples
Running the MHEG Engine
MHEG Example -- The Simple MHEG Presentation
MHEG Example -- The Demo MHEG Presentation
More Examples
Relationships to Major Standards
MHEG Implementation
MHEG Future
Further Reading/Information
Dave Marshall
10/4/2001