Як я можу встановити 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 дуже обмежені, тому налагодження неможливо для мене.


Чи можете ви трохи розробити? Що не працює?
— Відхилення

Також ви можете сказати нам, для чого вам це потрібно? Можливо, є краща альтернатива, яку ви могли б використати.
— Відхилення

2
Все, що мені потрібно, це відео- / аудіоплеєр командного рядка. Так що зсередини мого коду я можу зателефонувати і вказати його на медіа-файл, нехай він відтворюється, а потім повернеться до коду. Я думаю, що у мене це надто складно, і я повинен намагатися об'єднати hello_video з прикладом hello_audio. Я думав, що gstreamer буде простішим, тому що його фреймворк замість того, щоб навчитися кодувати OpenIL, але я не думаю, що все ще є рамки.
— користувач185955

Я думаю, що на це потрібно звернути увагу, це питання! raspberrypi.stackexchange.com/questions/100 / ...
— Jivings

1
Проблема omxplayer полягає в тому, що завантажувати відео потрібно багато часу, де, як приклад hello_video, це робиться майже миттєво. Мені потрібно буде відтворювати безліч відео швидко один за одним, якби я використовував omx-плеєр, у мене були б великі проміжки між файлами, які не будуть працювати. Ось чому я хочу використовувати gstreamer або якось об'єднати hello_audio і hello_video ... Оскільки я не буду кодувати відео, я завжди буду тим самим кодеком.
— користувач185955

Відповіді:


8

Деталі з повідомлення на форумі Raspberry Pi

Отримайте та встановіть rpi-update при необхідності

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. Я цього не підтвердив.
— goldilocks

Як я можу використовувати 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 і публікують там файли.

Ви можете перевірити, чи розпізнав він апаратні можливості Pi за допомогою цієї команди

gst-inspect-1.0 | grep omx

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


1
На сьогоднішній день це найшвидший і найпростіший метод. Компіляція, як описано нижче у відповіді Ункле Джорджа, не спрацювала для мене, оскільки деякі амортизації застаріли.
— ПТС

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пакет дебютів, який включає всі основні пакети gstreamer.
— shrx
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.