Короче говоря, в настоящее время я разрабатываю фреймворк, позволяющий реализовать интерфейс типа «перетаскивание и падение» для элементов gstreamer . Идея заключается в том, что в браузере пользователь может выбирать плагины gstreamer и «подключать» их соответственно, создавая полноценный конвейер динамически и без какого-либо программирования (необходимые свойства также выбираются пользователем через интерфейс) *. 1003 *
Моя текущая проблема заключается в проверке возможности соединения выбранных элементов через их приемник и контактные площадки sr c. Из-за ограничений конструкции системы идея в настоящее время означает, что браузер пользователей (без каких-либо установленных зависимостей gstreamer) проверяет возможность подключения элементов и мгновенно выделяет серым цветом неподдерживаемые элементы (через их контактные площадки sr c) в зависимости от элемента, который они выбрали в интерфейсе (через свои панели-приемники).
Моя текущая идея реализации - отправлять пользователю информацию обо всех доступных элементах и их свойствах. Для этого, конечно, мне нужен небольшой по размеру и универсальный формат - именно здесь на помощь приходит .json
. По сути, я пытаюсь передать результаты gst-inspect-1.0
в .json
, и затем запустите некоторые базовые c JavaScript функции на лету в браузере пользователя, чтобы сделать, как описано выше.
Я надеялся, что у кого-то здесь была аналогичная проблема, и, возможно, он захочет поделиться тем, что они сделал, чтобы решить это. На данный момент я думаю об извлечении вывода gst-inspect-1.0
для каждого плагина, доступного через скрипт .py
, который запускается на сервере каждый раз, когда происходит обновление - однако это кажется излишним для задачи. это, похоже, не требует много работы (например, что-то вроде gst-inspect-1.0 --file json --output usb.json urisourcebin
было бы идеально, если бы оно было доступно).
Любая помощь приветствуется!