PRESENTED BY :
GAURAV KUMAR SRIVASTAVA
Downloaded from FaaDoOEngineers.com
Company profile
Company Name:: Canon Inc.
Founded:: August 10, 1937
Headquarters:: Tokyo, Japan.
Chairman & CEO:: Fujio Mitarai
Canon ISDC:: noida and
bangalore
Downloaded from FaaDoOEngineers.com
Discussion topics
Time based media
Media processing model
Media framework
Jmf architecture
Jmf classes and interfaces
Applet video player
Streaming media
Streaming protocols: RTP
Downloaded from FaaDoOEngineers.com
WHAT IS TIME BASED MEDIA?
Any data that changes meaningfully with respect to time can
be characterized as time-based media.
Audio clips, MIDI sequences, movie clips, and animations are
common forms of time-based media.
Such media data can be obtained from a variety of sources,
such as local or network files, cameras,microphones, and live
broadcasts.
Downloaded from FaaDoOEngineers.com
MEDIA PROCESSING MODEL
Downloaded from FaaDoOEngineers.com
Media framework : its design goals
Java Media Framework (JMF) is a large and versatile API for
manipulation and processing of time-based media in Java
applications and applets.
This optional package which can capture,playback
stream,transcode multimedia formats ,extends the java 2
standard edition for multimedia developers,by providing a
powerful toolkit to develpop a scalable,cross plateform
technology.
Downloaded from FaaDoOEngineers.com
Architecture of jmf
Downloaded from FaaDoOEngineers.com
Jmf architecture
Managers
DataSources
Players
Processors
DataSinks
Downloaded from FaaDoOEngineers.com
Managers
JMF uses four managers:
Manager--handles the construction of Players, Processors,
DataSources, and DataSinks. This level of indirection allows new
implementations to be integrated seamlessly with JMF.
PackageManager--maintains a registry of packages that contain
JMF classes, such as custom Players, Processors, DataSources, and
DataSinks.
CaptureDeviceManager--maintains a registry of available capture
devices.
PlugInManager--maintains a registry of available JMF plug-in
processing components, such as Multiplexers, Demultiplexers,
Codecs, Effects, and Renderers.
Downloaded from FaaDoOEngineers.com
Managers..
Downloaded from FaaDoOEngineers.com
Data Sources
JMF media players usually use DataSources to manage the transfer of
media-content. A DataSource encapsulates both the location of media
and the protocol and software used to deliver the media.
A DataSource is identified by either a JMF MediaLocator or a URL
(universal resource locator).
JMF data sources can be categorized according to how data transfer is
initiated:
Pull Data-Source--the client initiates the data transfer and controls
the flow of data from pull data-sources.
Push Data-Source--the server initiates the data transfer and controls
the flow of data from a push data-source. Push data-sources include
broadcast media, multicast media, and video-on-demand (VOD).
Downloaded from FaaDoOEngineers.com
Players
A Player processes an input stream of media data and renders
it at a precise time. A DataSource is used to deliver the input
media-stream to the Player.The rendering destination depends
on the type of media being presented.
Data
source
player
Downloaded from FaaDoOEngineers.com
Processor
Specialized type of Player that provides control over
processing performed on the input media stream
Downloaded from FaaDoOEngineers.com
Processor stages
Downloaded from FaaDoOEngineers.com
Processor stages..
Downloaded from FaaDoOEngineers.com
Data Storage and Transmission
Data Sink is used to read data from a DataSource and
render the media to an output destination.
Its typical actions are writing the data to a file across the
network etc..
Downloaded from FaaDoOEngineers.com
Simple applet movie player
Simple Java Applet that demonstrates how to create a simple media
player with a media event listener. It will play the media clip right away
and continuously loop.
<!-- Sample HTML
<applet code=TVApplet width=587 height=510>
<param name=file value=playme.mov">
</applet> -->
Downloaded from FaaDoOEngineers.com
Basic steps..
initialization
Retrieve applets FILE parameter
Use this to locate media file and build URL
Create Player using the Manager object
Register applet as a ControllerListener
Downloaded from FaaDoOEngineers.com
Controlling the player
Starting the Player
public void start() {
if (player != null)
player.realize();
}
Stopping the Player
public void stop() {
if (player != null) {
player.stop();
player.deallocate();
}
}
Downloaded from FaaDoOEngineers.com
Applet video player..
Player has methods to get references to
visual components
player.getVisualComponent()
player.getGainControl()
player.
getControlPanelComponent()
Downloaded from FaaDoOEngineers.com
Extensibility
Jmf functionality can be extended in two ways:
Direct
implementati
ons
Plug-ins
codec
effect
mux
demux
Data
sink
player
process
or
Data
source
Downloaded from FaaDoOEngineers.com
Streaming media and Rtp
When media content is streamed to a client in real-time, the client can
begin to play the stream without having to wait for the complete stream
to download.
Transmitting media data across the net in real-time requires high
network throughput.
Consequently, the protocols used for static data dont work well for
streaming media.
Downloaded from FaaDoOEngineers.com
Streaming protocols
TCP
UDP
http,ftp are
based on tcp
Low
bandwidth,
Slow
streaming
Unreliable
slow
RTP
Dedicated for
real time data
transmission
High speed
streaming
Downloaded from FaaDoOEngineers.com
RTP architecture
Real time transport protocol
Real time media frameworks and applications
Real time control protocol(RTCP)
Real time transport protocol(RTP)
Other network and transport
protocols(eg,tcp)
UDP
IP
Downloaded from FaaDoOEngineers.com
RTP reception
An incoming rtp stream is handled by a session
manager
The presentation of the stream is handled by a player
Data
source
network
player
Session manager
Data
source
player
Downloaded from FaaDoOEngineers.com
Rtp transmission
Session manager creates and sends streams for the content and control the
transmission.
Data
source
file
Data
source
Session
manager
network
processor
Data
source
Data
sink
file
Capture device
Downloaded from FaaDoOEngineers.com
Conferencing :
WEB CAM
FILE
UPLOAD
SERVLET
JMF
RECEIVER
APPLET
JMF
CAPTURE
APPLET
UPLOAD
THREAD
sender
DIRECTORY
OF FILE
CLIPS
server
receiver
Downloaded from FaaDoOEngineers.com
Queries?
Downloaded from FaaDoOEngineers.com