---
title: "📷 Тестовый источник видео Gstreamer"
date: 2024-06-05T19:09:57+03:00
draft: false
tags: [tips, linux, video, development]
---

Для отладочных целей (или нет) в **GStreamer** предусмотрен источник видео `videotestsrc`.

![](https://cdn.a2s.su/blog/2024/videotestsrc.png)

Что-бы его запустить, досточно выполнить следующую команду.

```shell
gst-launch-1.0 -v videotestsrc ! xvimagesink
```

Можно задать разрешение изображения, например 320 на 240 пикселей,
или 1280 на 720 пикселей.

```shell
# 320 на 240 пикселей
gst-launch-1.0 -v videotestsrc ! video/x-raw,width=320,height=240 ! xvimagesink

# 1280 на 720 пикселей
gst-launch-1.0 -v videotestsrc ! video/x-raw,width=1280,height=720 ! xvimagesink
```

Что-бы использовать поток в коде, нужно заменить параметр `xvimagesink` на `appsink`.

```c++
std::string source = "videotestsrc ! video/x-raw,width=320,height=240 ! appsink";

cv::VideoCapture capture = cv::VideoCapture(source);
// or
cv::VideoCapture capture = cv::VideoCapture(source, cv::CAP_GSTREAMER);
```
