GStreamer Training
Gstreamer Overview
View file |
---|
name | gstreamer-training #1.pptx |
---|
height | 250 |
---|
|
Show If |
---|
|
View file |
---|
name | IPTV_ Gstreamer Training Session_1.mp4 |
---|
height | 250 |
---|
|
|
IP TV-Gstreamer Overview
Show If |
---|
|
View file |
---|
name | IPTV_Training.pptx |
---|
height | 250 |
---|
|
View file |
---|
name | IPTV_ Gstreamer Training Session_2.mp4 |
---|
height | 250 |
---|
|
|
GStreamer Abstraction Layer & Plugin
AAMP has two modes of operation - gstreamer player (when JS/Native API's are used by the application) and gstreamer element (when application manages playbin as in the case of html5 video playback)
AAMP as Gstreamer player
In this mode of operation, AAMP manages the gstreamer pipeline. AAMP creates one playbin for each stream ( Audio or Video) and adds these playbins to pipeline. AAMP manages the pipeline state as well as injects data to the playbins through gstreamer appsrc element. AAMP sets caps of appsrc src pads based on the format of injected data. Buffers and events are sent to gstreamer using these appsrc objects.
AAMP as Gstreamer element
In this mode of operation, AAMP is a gstreamer element. Usually, application manages the lifecycle of the playbin which has aamp as one element. There is a dummy element aampsrc to handle protocol "aamp://" and "aamps://" which is replaced to http internally. aamp gstreamer element manages state of AAMP engine as well as gets media data and injects it to next element. aamp gstreamer element exposes dynamic pads which have caps corresponding to the format of injected data on that srcpad.
...