Advanced Adaptive Media Player (AAMP) Overview

 
Introduction to AAMP
AAMP Features
AAMP Architecture
AAMP Playback (HLS/DASH)
Unified Video Engine (UVE) Interface
AAMP Debugging and Testing
 
O
v
e
r
v
i
e
w
 
o
n
 
A
A
M
P
 
Introduction to AAMP
 
01
 
02
 
03
 
04
 
Advanced Adaptive Media Player
 
Player library that uses Gstreamer to playback IP Video
 
Capable of APPLE HLS and MPEG DASH playback
 
RDK-M licensed
 
Contributed to RDK community by Comcast
 
05
 
Introduction to AAMP – History of AAMP
 
Introduction to AAMP – Why AAMP?
 
AAMP – Supported Platforms
 
AAMP Features
1
4
3
2
5
P
l
a
y
b
a
c
k
 
Live/VOD/
cDVR streams
 
APPLE HLS
and MPEG
DASH streams
 
HTML5 Video
tag based
playback
 
Java Script
Player based
playback
 
Ad inserted
streams
S
u
p
p
o
r
t
e
d
 
D
R
M
s
 
HLS: Adobe Access and Vanilla AES
 
DASH : PlayReady and WideVine
6
 
HLS with
Fragmented
mp4
 
AAMP Features (Cont.)
 
DD+ and ATMOS, on supported platforms
 
4K streaming with SVP on supported platforms
 
C
o
d
e
c
 
S
u
p
p
o
r
t
 
AAMP Architecture
 
AAMP Architecture – AAMP as a Player
 
A
A
M
P
 
AAMP Architecture – AAMP as a Plugin
 
AAMP
 
AAMP Workflow : HLS Playback
1
3
5
2
4
6
Download Manifest
& Parse
Identify & Download
Fragments
Decrypt
Demux
Push to GStreamer
Video
Displayed
 
AAMP Workflow : DASH Playback
 
Unified Video Engine (UVE)
1
2
4
3
AAMPs JavaScript binding
interfaces
 
What is
UVE?
Already used by
ChannelStore, PlutoTV and
MDU Camera apps
Interface targeting OTT app
vendors for migrating apps
to STB
Easy to integrate to any
JavaScript application
 
AAMP Debugging and Testing
 
Interactive standalone
command-line application
Built along with AAMP
Used to test AAMP player
http urls can be entered
directly to start playback
 
command-line application
similar to aampcli
Invokes AAMP in plugin
mode
aamp:// URLs is provided
to start playback
 
$gst-launch-1.0 playbin uri=
aamp://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8 
video-sink=westerossink
audio-sink=omxhdmiaudiosink
 
$ rdkbrowser2.sh 
http://127.0.0.1/player.html
 
Logging
Audio codec
selection
Bitrate selection
Toggle ABR
 
Preferred DRM (in case of CENC)
Connection timeout, retry intervals
Virtual channel map
etc...
Slide Note
Embed
Share

AAMP is a versatile player library capable of HLS and DASH playback, developed as an open-source lightweight IP video player. It supports multiple DRMs, offers improved performance, and reduces costs. AAMP features Java-script-based playback, audio/video buffering management, codec support for 4K streaming, and a flexible architecture enabling HTML5-based playback.

  • Media Player
  • AAMP
  • Video Streaming
  • Open Source
  • HLS

Uploaded on Jul 18, 2024 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. Overview on AAMP Introduction to AAMP AAMP Features AAMP Architecture AAMP Playback (HLS/DASH) Unified Video Engine (UVE) Interface AAMP Debugging and Testing

  2. Introduction to AAMP 01 Advanced Adaptive Media Player 02 Player library that uses Gstreamer to playback IP Video What is AAMP? 03 Capable of APPLE HLS and MPEG DASH playback RDK-M licensed 04 Contributed to RDK community by Comcast 05

  3. Introduction to AAMP History of AAMP Started as an IP Player PoC for a low end set top box Light weight player for HLS with Adobe Access Support added for DASH playback with PlayReady and WideVine DRM Used for providing 4K VOD of 2017 Winter Olympics Made GA in 2018 1 2 3 4 5 HISTORY OF AAMP

  4. Introduction to AAMP Why AAMP? IP Stream Playback Lightweight IP Video player Support multiple DRMs 2 4 6 1 3 5 Need for open source IP Player Improved performance Reduced costs

  5. AAMP Supported Platforms RDK Linux 1 2 Supported Platforms Win32 OSX 4 3

  6. AAMP Features 1 3 5 Java Script Player based playback HLS with Fragmented mp4 Live/VOD/ cDVR streams Playback APPLE HLS and MPEG DASH streams HTML5 Video tag based playback Ad inserted streams 6 2 4 HLS: Adobe Access and Vanilla AES Supported DRMs DASH : PlayReady and WideVine

  7. AAMP Features (Cont.) Codec Support 4K streaming with SVP on supported platforms DD+ and ATMOS, on supported platforms Miscellaneous Variety of configuration options Log and event support for tune/ anomaly metrics

  8. AAMP Architecture Java Script Player or application directly creates AAMP Player Instance Audio /Video buffers are pushed to playbin using appsrc AAMP manages the Gstreamer pipeline AAMP as a Player Library Audio /Video buffers are pushed to Gstaamp s srcpads AAMPs Gstreamer plugin Gstaamp is loaded in the Gstreamer pipeline Enables HTML5 based playback AAMP as a Plugin 1 2 3 4 5 Gstaamp creates AAMP player instance Webkit manages the Gstreamer pipeline

  9. AAMP Architecture AAMP as a Player JS Player XRE NR AAMPWebVideoItem WPEWebProcess AAMP AAMP JS Bindings libCurl DASH Manager Libdash/libxml HLS Manager HLS DRM Manager Access DRM/openssl DASH DRM Manager PR/WV CDM MPEG2TS Trickmode handler AAMP PR/WV Plugins Gstreamer Plugins playbin (appsrc) AAMP Gstreamer Application

  10. AAMP Architecture AAMP as a Plugin WPE Browser MediaPlayerPrivateGstreamer AAMP JS Controller Gstreamer Playbin AAMP Gstreamer Plugins AAMP Gstreamer Plugin AAMP PR/WV Plugins DASH DRM Manager PR/WV CDM HLS Manager DASH Manager Libdash/libxml MPEG2TS Trickmode handler HLS DRM Manager Access DRM/openssl libCurl

  11. AAMP Workflow : HLS Playback 1 3 5 Download Manifest & Parse Push to GStreamer Decrypt 2 4 6 Identify & Download Fragments Demux Video Displayed

  12. AAMP Workflow : DASH Playback Tune Request (Manifest URL) DRM License Server Manifest/Fragment Collector AAMP DRM Session Manager PR/WV CDM AAMP PR/WV Plugins Gstreamer Pipeline aapsrc qtdemux Decoder Plugins

  13. Unified Video Engine (UVE) Interface targeting OTT app vendors for migrating apps to STB AAMPs JavaScript binding 1 2 interfaces What is UVE? Already used by Easy to integrate to any JavaScript application 4 3 ChannelStore, PlutoTV and MDU Camera apps

  14. AAMP Debugging and Testing aampcli playbintest aamp.cfg file is used for configuration support Interactive standalone command-line application Built along with AAMP Used to test AAMP player http urls can be entered directly to start playback command-line application similar to aampcli Invokes AAMP in plugin mode aamp:// URLs is provided to start playback Configuration support available for Logging Audio codec selection Bitrate selection Toggle ABR Preferred DRM (in case of CENC) Connection timeout, retry intervals Virtual channel map etc... RDKBrowser2 $ rdkbrowser2.sh http://127.0.0.1/player.html gst-launch using playbin $gst-launch-1.0 playbin uri=aamp://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8 video-sink=westerossink audio-sink=omxhdmiaudiosink

Related


More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#