GStreamer for Computer Vision

Описание к видео GStreamer for Computer Vision

You might have heard of something called “GStreamer”. I know what you think. This is some old and boring geek-and-nerd stuff from Linux, right? But what is it? What is the use of GStreamer? If we want computer vision or audio (speech, music) processing, can GStreamer help us?

In this video, We’ll try to answer these questions.

GStreamer is over 20 years old, and might not be the current “hot topic”. However, as we will see below, it’s very important for computer vision, especially at the “professional” and “deployment” levels, when you progress beyond toy demos and suddenly start to discover that the “real world is not that simple”.

GStreamer is a part of the GNOME project (like in the “GNOME desktop”), and while I (as an experienced Linux user) personally strongly prefer the KDE desktop to GNOME desktop, GNOME libraries are very nice. Note that GStreamer is also used by the Qt GUI library and thus KDE desktop.

💻 Trainee program: https://www.it-jim.com/trainee-program/
✍️ Our blog: https://www.it-jim.com/blog/
🤝 Careers: https://www.it-jim.com/careers/

🦾 Clutch: https://clutch.co/profile/it-jim#summary
📲 Goodfirms: https://www.goodfirms.co/company/it-jim

❤️ Subscribe to our socials:

  / it-jim  
  / jimitjim  
  / itjimitjim  
  / jimitjim  
https://t.me/ai_jam

Read more:

https://www.it-jim.com/blog/gstreamer...

https://www.it-jim.com/blog/gstreamer...

00:44 - What is GStreamer
01:27 - Languages
02:40 - Platforms
03:25 - Why GStreamer
04:28 - Aren't there libraries for various formats?
05:50 - Why not OpenCV: part 1
07:31 - How about we convert things externally?
09:10 - The solution: One Library to Rule Them All
11:18 - GStreamer as a PipeLine Library
12:35 - GStreamer PipeLine
13:25 - Pads have capabilities (Caps)
14:50 - GStreamer from a terminal
15:45 - gst-launch-1.0 PipeLine Syntax Basics
17:40 - What does it mean?
18:20 - Visualise GStreamer Pipeline
18:50 - Brunching Pipeline
20:23 - Play audio + video with uridecodebin
22:01 - Let's go really low level
23:42 - Now, lets try encoding!
24:40 - Let's decode and re-encode!
25:43 - A few extra pipeline tricks
26:53 - Realtime vs Offline: sync flag
28:10 - GStreamer and OpenCV
29:10 - Nvidia DeepStream
30:21 - Let;s code: GStreamer in C/C++
30:31 - GStreamer code and tutorials
31:40 - Adding GStreamer to your C++ or C projects
32:18 - fun1.cpp - A minimal C++ example (in gst_app_tutorial)
33:24 - My assertion function and macro
33:43 - Create a pipeline from a string
34:34 - Play the pipeline
35:56 - Waiting for the pipeline to finish
36:53 - Creating pipeline by hand (fun2.cpp)
38:08 - Memory management
39:23 - GStreamer and threads
40:41 - GStreamer for CV and audio: appsrc and appsink
41:00 - Problem Statement
42:09 - What are appsrc and appsink?
43:15 - Appsink example: video1 (from my tutorial)
44:42 - video1, details
45:21 - Sample processing loop 1
45:49 - Sample processing loop 2
46:40 - Appsrc example, video 2
47:45 - video 2 details 1
48:21 - video 2 details 2
49:10 - video 2 details 3
50:37 - Further appsrc + appsink examples

Комментарии

Информация по комментариям в разработке