mirror of
https://github.com/Brandon-Rozek/website.git
synced 2024-11-09 10:40:34 -05:00
Typo fix
This commit is contained in:
parent
2766ee1bf4
commit
9c4203b6d2
1 changed files with 49 additions and 0 deletions
49
content/blog/gstreamer.md
Normal file
49
content/blog/gstreamer.md
Normal file
|
@ -0,0 +1,49 @@
|
|||
---
|
||||
title: "GStreamer"
|
||||
date: 2020-02-08T20:46:36-05:00
|
||||
draft: false
|
||||
images: []
|
||||
---
|
||||
|
||||
GStreamer is a pipeline based multimedia framework that goes from capture, processing, to a sink such as a X window or UDP sink.
|
||||
|
||||
To install on Ubuntu run,
|
||||
|
||||
```bash
|
||||
sudo apt install gstreamer1.0-tools
|
||||
```
|
||||
|
||||
Pipelines are indicated via `!`.
|
||||
|
||||
To capture your webcam feed and display it in a X window, run the following:
|
||||
|
||||
```bash
|
||||
gst-launch-1.0 v4l2src device=/dev/video0 ! videoconvert ! ximagesink
|
||||
```
|
||||
|
||||
For the PiCar project I'm on, I need to send the video from the raspberry pi over the network as fast as possible. The next couple commands have options that reflect this.
|
||||
|
||||
On the PiCar, I send h264 video over the network. You might need to install an additional package for h264 encoding to work.
|
||||
|
||||
```bash
|
||||
sudo apt install gstreamer1.0-plugins-ugly
|
||||
```
|
||||
|
||||
To send h264 video over the network,
|
||||
|
||||
```bash
|
||||
gst-launch-1.0 v4l2src device=/dev/video0 ! videoconvert ! x264enc ! rtph264pay ! udpsink host=192.168.0.2 port=5000
|
||||
```
|
||||
|
||||
To send it as fast as you can,
|
||||
|
||||
```bash
|
||||
gst-launch-1.0 v4l2src device=/dev/video0 ! videoconvert ! x264enc interlaced=true tune=zerolatency speed-preset=ultrafast ! rtph264pay ! udpsink host=192.168.0.2 port=5000
|
||||
```
|
||||
|
||||
To receive it and display it on an X-window,
|
||||
|
||||
```bash
|
||||
gst-launch-1.0 -v udpsrc port=5000 ! application/x-rtp,payload=96 ! rtph264depay ! decodebin ! videoconvert n-threads=4 ! ximagesink
|
||||
```
|
||||
|
Loading…
Reference in a new issue