Я работаю над проектом, в котором хочу динамически вставлять изображение (например, красное) в видеопоток GStreamer с помощью appsrc. Моя цель — отправить это изображение со скоростью 30 кадров в секунду, сохраняя при этом конечный вывод конвейера со скоростью 60 кадров в секунду.
Я написал тестовый код, но столкнулся с проблемами при отправке буфера в приложенияrc. Я не уверен, правильно ли настроены ограничения appsrc или правильно ли я обрабатываю буферы и временные метки.
Вот что у меня есть:
При отправке буферов с помощью appsrc.emit("push-buffer", gst_buffer) возникают ошибки .
Сообщения об ошибках из шины не всегда понятны.
Я не уверен, правильно ли настроены ограничения appsrc.
Я не уверен, что смогу справиться с pts (временные метки) и продолжительность буфера, учитывая, что конвейер выводит скорость 60 кадров в секунду, а мои внедренные изображения — 30 кадров в секунду.
Что я ищу< /h2>
Обзор моей конфигурации appsrc, особенно заглавных букв.
Совет или рабочий пример правильной обработки временных меток и буфера продолжительность в этом контексте.
Если возможно, предложения о том, как синхронизировать введенный поток со скоростью 30 кадров в секунду с конечным выходным сигналом со скоростью 60 кадров в секунду в GStreamer.
Я работаю над проектом, в котором хочу динамически вставлять изображение (например, красное) в видеопоток GStreamer с помощью appsrc. Моя цель — отправить это изображение со скоростью 30 кадров в секунду, сохраняя при этом конечный вывод конвейера со скоростью 60 кадров в секунду. Я написал тестовый код, но столкнулся с проблемами при отправке буфера в приложенияrc. Я не уверен, правильно ли настроены ограничения appsrc или правильно ли я обрабатываю буферы и временные метки. Вот что у меня есть: [code]import cv2 import numpy as np import gi import time import threading from fractions import Fraction
gi.require_version('Gst', '1.0') from gi.repository import Gst, GLib
# Start the pipeline pipeline.set_state(Gst.State.PLAYING)
# Retrieve the camera element appsrc = pipeline.get_by_name('display_screen') appsrc.set_property('caps', Gst.Caps.from_string("video/x-raw,format=RGB,width=667,height=74,framerate=30/1")) appsrc.set_property("format", Gst.Format.TIME) appsrc.set_property("block", True)
except KeyboardInterrupt: pass finally: # Cleanup pipeline.set_state(Gst.State.NULL) [/code] Проблема [list] [*]При отправке буферов с помощью appsrc.emit("push-buffer", gst_buffer) возникают ошибки . [*]Сообщения об ошибках из шины не всегда понятны. [*]Я не уверен, правильно ли настроены ограничения appsrc. [*]Я не уверен, что смогу справиться с pts (временные метки) и продолжительность буфера, учитывая, что конвейер выводит скорость 60 кадров в секунду, а мои внедренные изображения — 30 кадров в секунду. [/list] Что я ищу< /h2> [list] [*]Обзор моей конфигурации appsrc, особенно заглавных букв. [*]Совет или рабочий пример правильной обработки временных меток и буфера продолжительность в этом контексте. [*]Если возможно, предложения о том, как синхронизировать введенный поток со скоростью 30 кадров в секунду с конечным выходным сигналом со скоростью 60 кадров в секунду в GStreamer. [/list] Заранее спасибо за вашу помощь и идеи!
Я работаю над проектом, в котором мне нужно декодировать файл H.264 с помощью одного кадра. Исходный файл был закодирован в формате NV12. Теперь я хочу декодировать его обратно в NV12, а затем преобразовать в JPEG. Мне удалось добиться этого с...
Мне нужно декодировать файл H.264 с одним кадром. Исходный файл был закодирован в формате NV12. Теперь я хочу декодировать его обратно в NV12, а затем преобразовать в JPEG. Мне удалось добиться этого с помощью инструмента командной строки...
Я использую C# (.net 7) и GSTREAMER для обработки потока RTSP и привести видео в элемент WPF Image . Я стремлюсь использовать appsink для обработки видео кадров. Ниже приведено определение трубопровода, которое я использую:
string...
Я пишу экспериментальные приложения Gstreamer в C ++ на Linux. Пытаясь создать AppSRC для излучения алгоритмически сгенерированных кадров, я нашел в Интернете несколько способов установить колпачки исходных площадок AppSRC. Я предполагаю, что...
Я новичок в потоковой передаче onvif с использованием Python.
Я хотел бы прочитать видеопоток с камеры и напрямую сохранить видео на своем ftp-сервере. Я мог бы придумать следующий фрагмент кода.
from ftplib import FTP
from io import BytesIO
import...