Pure Java-Based Streaming MPEG Player - PowerPoint PPT Presentation

About This Presentation
Title:

Pure Java-Based Streaming MPEG Player

Description:

Pure Java-Based Streaming. MPEG Player. Osama Tolba, Hector Brice o, and Leonard McMillan ... Applet: no need to pre-install native plug-ins. Streaming: no need ... – PowerPoint PPT presentation

Number of Views:47
Avg rating:3.0/5.0
Slides: 17
Provided by: osama3
Category:

less

Transcript and Presenter's Notes

Title: Pure Java-Based Streaming MPEG Player


1
Pure Java-Based StreamingMPEG Player
Osama Tolba, Hector Briceño, and Leonard
McMillan Laboratory for Computer Science M.I.T.
2
Presentation Overview
  • 1. Motivation
  • 2. System Architecture
  • 3. Novel IDCT Algorithm
  • 4. Results

3
1. Motivation
  • Explosion in multimedia Web content
  • Cross-platform functionality
  • Applet no need to pre-install native plug-ins
  • Streaming no need for large auxiliary storage
  • TV set-top decoders
  • Customized sessions (multiple streams, etc.)

4
Java Pros Java Cons
  • Platform independent
  • Small footprint
  • Compact programs (40KB Jar file)
  • Networking routines
  • Interpreted (slow)
  • Security restrictions
  • Display performance
  • Evolving API 1.0, 1.1
  • Varied results (JIT)

5
2. Modular System Architecture
  • Source-player architecture
  • Customizable session
  • Memory requirements

6
Proxy Server
  • Overcomes security restrictions
  • Forwards bits to decoder
  • Limited buffer
  • Implemented in C

7
3. Forward-Mapping IDCT
  • Decoder bottlenecks
  • FMIDCT McMillan Westover, DCC 92
  • Combined table lookup

8
Forward-Mapping IDCT
Dequantized DCT Coefficients
Luminance or Chroma
K u, v 8x8 Basis
9
IDCT Basis Functions
  • Unique coefficients in each basis function
  • Shared coefficients
  • Only 28 out of 4096

Unique Coefficients
10
Improved FMIDCT
  • Basis function symmetry
  • 4x4 accumulator arrays instead of 8x8
  • Reduced computation, fit in registers

4
H
Q
-H
Q
4
V
D
V
-D
B
A
H
Q
-H
Q
-V
-D
-V
D
K1,1 Type D Symmetry
C
D
11
FMIDCT Flow Chart
For each symmetry type
Retrieve scaled basis vector
Symmetry Types
Accumulate in Qa, Qb, Qc, Qd
Qf Qa Qb Qc Qd Hf (Qa - Qb Qc - Qd)
R Vf R (Qa Qb - Qc - Qd) Df R (Qa - Qb -
Qc Qd) R
Mirroring matrix
12
Dequantizer Cache
p level, qval, qscale, type
  • Level macroblock quantizer scale
  • qval quantized symbol
  • qscale element quantizer scale
  • type intra/inter-frame encoding

Hashing H(p)
In cache?
I u,v dequantize(p)
N
Translate to index of scaled vector
Y
Index cacheEntryH(p)
Store index in cache
13
4. Results
  • 176 x 144 _at_ 28 fps, 352 x 240 _at_ 11 fps
  • Decode 1.8 M pix/sec, Display 670K pix/sec

display
decode
14
User Interface
  • http//compvid.lcs.mit.edu/cv/mpeg/
  • PIP / visual controls
  • Std menus / controls

15
Summary
  • Portable, streaming player
  • Efficient FMIDCT algorithm
  • Modular design, customizable sessions
  • Promising performance, bottlenecks exist
  • Further Work
  • Time vs. quality trade-off
  • Rate control, skip frame display

16
Acknowledgements
  • Sponsored by DARPA (agreement F30602-97-1-0283)
  • http//www.mpeg.org
Write a Comment
User Comments (0)
About PowerShow.com