Intro To Gstreamer
Rand Graham
rmcore.com
Why Gstreamer?
◦ Media Application
◦ Access To Hardware
◦ Plugin
◦ Scriptable Command Line Tools
rmcore.com
Gstreamer Concepts
rmcore.com
Gstreamer Concepts
rmcore.com
Gstreamer Hardware
rmcore.com
Nvidia Jetson TX2
Pascal GPU (256 Cuda Cores)
8 GB 128 bit LPDDR4
Retails for $569
Probably Installed
Build Instructions
BEHOLD! Big Buck Bunny
rmcore.com
Gstreamer Examples
rmcore.com
gst-discoverer-1.0 bbb_sunflower_2160p_60fps_normal.mp4
Topology: container: Quicktime
audio: AC-3 (ATSC A/52)
audio: MPEG-1 Layer 3 (MP3)
video: H.264 (High Profile)
Properties:
Duration: 0:10:34.533333333
Tags:
audio codec: MPEG-1 audio
container format: ISO MP4/M4A
video codec: H.264 / AVC
Gstreamer Examples
rmcore.com
gst-launch-1.0 -e filesrc
location=bbb_sunflower_2160p_60fps_
normal.mp4 !
qtdemux ! h264parse ! mfxh264dec !
mfxvpp width=1280 height=720 !
mfxh264enc ! "video/x-h264,
profile=high" ! matroskamux !
filesink location=bunny720.mkv
Video Transcode
Gstreamer Examples
rmcore.com
gst-launch-1.0 -e filesrc location=bbb.mp4 !
Video and Audio Transcode
qtdemux name=demux demux.audio_0 !
queue ! mpegaudioparse !
mpg123audiodec ! audioconvert !
avenc_aac ! mux. demux.video_0 !
! queue ! h264parse ! mfxh264dec ! mfxvpp width=1280 height=720 !
mfxh264enc ! "video/x-h264, profile=high" ! mux. qtmux
name=mux ! filesink location=bunny.mp4 sync=false
Gstreamer Examples
rmcore.com
gst-launch-1.0 -e filesrc
location=/home/rdg/Videos/test/bbb_sunflower_2160p_60fps_nor
mal.mp4 ! qtdemux name=demux demux.audio_0 ! queue !
mpegaudioparse ! mpg123audiodec ! audioconvert ! avenc_aac !
mux. demux.video_0 ! queue ! h264parse ! mfxh264dec ! mfxvpp
width=1280 height=720 ! mfxh264enc ! "video/x-h264,
profile=high" ! mux. mpegtsmux name=mux !
hlssink
Streaming Video
Thanks!
ANY QUESTIONS?
Connect with me on twitter:
@rdg_rmcore
Read more at my website:
http://rmcore.com/
CREDITS
Special thanks to all the people who made and
released these awesome resources for free:
◦ Presentation template by SlidesCarnival
◦ SVG GStreamer Logo by Christophe Dumas
◦ Big Buck Bunny is (c) copyright 2008,
Blender Foundation /
www.bigbuckbunny.org

Introduction to Gstreamer