Как я могу установить GStreamer gst-omx?


16

На прошлой неделе у нас были самые трудные времена, когда плагин gst-omx работал с gstreamer на Raspberry PI.

Интересно, кто-нибудь здесь сделал это и мог бы показать мне, как?

Я установил wheezy, так как git://git.collabora.co.uk/git/user/gkiagia/gst-omx0.10-debian.gitтребуется тестовая версия gstreamer.

Gstreamer отлично работает на малине, используя обычные плагины, поэтому аппаратного ускорения нет.

Как только я установил gst-omx, он попал в черный список для gstreamer, и я полностью застрял, так как мои знания Linux очень ограничены, поэтому отладка для меня невозможна.


Можете ли вы уточнить немного? Что не работает?
— Jivings

Кроме того, вы можете сказать нам, для чего вам это нужно? Возможно, есть лучшая альтернатива, которую вы могли бы использовать.
— Jivings

2
Все, что мне нужно, это видео / аудио плеер командной строки. Так что внутри моего кода я могу вызвать код и указать его на файл мультимедиа, дать ему воспроизвести и вернуться к коду. Я думаю, что я слишком усложнил это, и я должен попытаться объединить hello_video с примером hello_audio. Я думал, что gstreamer будет легче, потому что это фреймворк вместо того, чтобы учиться кодировать OpenIL, но я не думаю, что фреймворк еще не все
— user185955

Я думаю, что вам нужно посмотреть на этот вопрос! raspberrypi.stackexchange.com/questions/100/…
— Jivings

1
Проблема с omxplayer заключается в том, что загрузка видео занимает много времени, тогда как в примере с hello_video это происходит практически мгновенно. Мне нужно будет проигрывать много видео подряд один за другим, если бы я использовал omx player, у меня были бы большие промежутки между файлами, которые не будут работать. Вот почему я пытаюсь использовать gstreamer или как-то объединить hello_audio и hello_video ... Поскольку я сам буду кодировать видео, это всегда будет один и тот же кодек.
— user185955

Ответы:


8

Подробности из сообщения на форуме Raspberry Pi

При необходимости получите и установите rpi-обновление

sudo wget http://goo.gl/1BOfJ -O /usr/bin/rpi-update && sudo chmod +x /usr/bin/rpi-update
sudo apt-get -y install git-core

Обновление до последних пакетов и прошивок

sudo apt-get update
sudo apt-get upgrade -y
sudo rpi-update
sudo reboot

Получить исходный код gst-omx из ветки малины

cd $HOME 
git clone -b 0.10 git://anongit.freedesktop.org/gstreamer/gst-omx

Установите пакеты Gstreamer и пакеты, необходимые для сборки omx

sudo apt-get install -y autoconf gtk-doc-tools libtool 

Автоматически сгенерируйте скрипт настройки, настройте, создайте и установите gst-omx

cd gst-omx
./autogen.sh --noconfigure
./configure --prefix=/home/pi/omx
make 
make install

Настройте среду gst-omx для пользователя pi

cp  omx/gstomx-raspberry.conf $HOME/omx/lib/gstreamer-0.10/gstomx.conf
cd $HOME
echo -e \\n# Gstreamer environment >> .profile
echo export GST_PLUGIN_PATH=$HOME/omx/lib/gstreamer-0.10/ >> .profile
echo export GST_OMX_CONFIG_DIR=$HOME/omx/lib/gstreamer-0.10/ >> .profile
echo export LD_LIBRARY_PATH=$HOME/omx/lib/gstreamer-0.10/ >> .profile
. ./.profile

Установите инструменты GStreamer

sudo apt-get install gstreamer0.10-tools

Убедитесь, что gst-omx установлен правильно.

Если он имеет следующую команду, должны показать эти плагины:

> gst-inspect-0.10 | grep omx
openmax  omxmpeg4videodec: OpenMAX MPEG4 Video Decoder
openmax  omxh264dec: OpenMAX H.264 Video Decoder

Проблемы с плагинами omxmpeg, попавшими в черный список

Существует конфликт с omx и gstreamer-plugins-bad, поэтому следующий список очистил черный список:

sudo aptitude remove libgstreamer-plugins-bad0.10-0

Включить подключаемый модуль omxh264enc для аппаратного кодирования h.264

Пока что этот плагин не работает, но вот как его включить. Добавьте следующее в $ GST_OMX_CONFIG_DIR / gstomx.conf

[omxh264enc]
type-name=GstOMXH264Enc
core-name=/opt/vc/lib/libopenmaxil.so
component-name=OMX.broadcom.video_encode
rank=256
in-port-index=200
out-port-index=201
hacks=no-empty-eos-buffer;no-component-role

В соответствии с пользователем Анон, имя мерзавец филиал изменилось, так что под Получить GST-Omx источник в отрасли малиновый , git clone -b raspberryдолжно быть git clone -b 0.10. Я не подтвердил это.
— Златовласка

Как я могу использовать gstreamer для отправки видео на nginx-rtmp из модуля CSI Camera ??
— WillyWonka

4

Добавьте эту линию репо в /etc/apt/sources.list

deb http://vontaene.de/raspbian-updates/ . основной

Тогда просто ....

sudo apt-get update
sudo apt-get install gstreamer1.0

Этот сторонний репозиторий размещается на форумах Pi . Они компилируют последние версии проекта gst-omx и публикуют там файлы.

Вы можете проверить, распознал ли он аппаратные возможности Пи, используя эту команду

gst-inspect-1.0 | grep omx

введите описание изображения здесь


1
На данный момент это самый быстрый и простой способ. Компиляция, как описано ниже в ответе Unkle George, не сработала для меня, так как некоторые зависимости устарели.
— PTS

4

По состоянию на апрель 2015 года репозитории Raspbian включают GStreamer 1.2 и плагины OpenMAX, поэтому самый простой способ - это ответ ppumkin, но без редактирования /etc/apt/sources.list:

sudo apt-get update
sudo apt-get install gstreamer1.0

затем проверьте с помощью:

gst-inspect-1.0 | grep omx

У меня нет gstreamer1.0в хранилище. Как мне это добавить?
— Shrx

Нет пакета gstreamer1.0, но apt-get должен использовать его как регулярное выражение и загрузить все пакеты gstreamer1.0 .... apt-cache search ^gstreamer1.0Показывает ли какие-либо пакеты?
— М. Рубио-Рой

Он находит пакеты, связанные с gstreamer, я просто подумал, что должен быть настоящий gstreamer1.0пакет deb, включающий все основные пакеты gstreamer.
— Shrx
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.