Jak mogę zainstalować GStreamer gst-omx?


16

Miałem najtrudniejszy czas w ciągu ostatniego tygodnia, próbując uzyskać wtyczkę gst-omx do współpracy z gstreamer na Raspberry PI.

Zastanawiam się, czy ktoś to zrobił i może mi pokazać, jak?

Zainstalowałem wheezy, ponieważ git://git.collabora.co.uk/git/user/gkiagia/gst-omx0.10-debian.gitpotrzebuje testowej wersji gstreamer.

Gstreamer działa dobrze na malinie przy użyciu zwykłych wtyczek, więc nie ma przyspieszenia sprzętowego.

Po zainstalowaniu gst-omx pojawia się na czarnej liście gstreamer i całkowicie utknąłem, ponieważ moja wiedza na temat Linuksa jest bardzo ograniczona, więc debugowanie jest dla mnie niemożliwe.


Czy potrafisz się trochę rozwinąć? Co nie działa?
Jivings,

Czy możesz nam również powiedzieć, do czego jest to potrzebne? Być może istnieje lepsza alternatywa, której możesz użyć.
Jivings,

2
Wszystko czego potrzebuję to odtwarzacz wideo / audio z linii poleceń. Aby z wnętrza mojego kodu mogłem wywołać kod i skierować go w kierunku pliku multimedialnego, pozwolić mu odtworzyć, a następnie powrócić do kodu. Wydaje mi się, że to skomplikowałem i powinienem spróbować połączyć hello_video z przykładem hello_audio. Myślałem, że gstreamer będzie łatwiejszy, ponieważ jest to framework zamiast uczyć się, jak kodować OpenIL, ale nie sądzę, że framework jest już dostępny.
user185955

Myślę, że musisz spojrzeć na to pytanie! raspberrypi.stackexchange.com/questions/100/…
Jivings

1
Problem z omxplayerem polega na tym, że ładowanie wideo zajmuje dużo czasu, a jak w przykładzie hello_video robi to niemal natychmiast. Będę musiał odtwarzać wiele filmów w krótkich odstępach czasu, jeden po drugim, gdybym używał odtwarzacza omx, miałbym duże przerwy między plikami, które nie działają. Właśnie dlatego chcę użyć gstreamer lub w jakiś sposób połączyć hello_audio i hello_video ... Ponieważ źle koduję filmy, moje ja zawsze będzie to ten sam kodek.
user185955

Odpowiedzi:


8

Szczegóły z postu na forum Raspberry Pi

W razie potrzeby pobierz i zainstaluj aktualizację 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

Zaktualizuj do najnowszych pakietów i oprogramowania układowego

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

Pobierz źródło gst-omx z gałęzi malin

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

Zainstaluj pakiety Gstreamer i pakiety wymagane do zbudowania omx

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

Automatycznie wygeneruj skrypt konfiguracyjny, skonfiguruj, utwórz i zainstaluj gst-omx

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

Skonfiguruj środowisko gst-omx dla użytkownika 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

Zainstaluj GStreamer Tools

sudo apt-get install gstreamer0.10-tools

Sprawdź, czy gst-omx został poprawnie zainstalowany.

Jeśli ma następujące polecenie, powinny wyświetlić te wtyczki:

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

Problemy z umieszczaniem wtyczek omxmpeg na czarnej liście

Wystąpił konflikt z omx i gstreamer-plugins-bad, więc następujące wyczyściło czarną listę:

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

Włącz wtyczkę omxh264enc dla sprzętowego kodowania h.264

Jak dotąd ta wtyczka wydaje się być zepsuta, ale oto jak ją włączyć. Dodaj następujące elementy do $ 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

Według jednego użytkownika anon, nazwa git oddział zmienił się, więc pod Get GST-OMX źródła z branży malinowym , git clone -b raspberrypowinno być git clone -b 0.10. Nie potwierdziłem tego.
goldilocks

Jak mogę użyć gstreamer do wysłania wideo do nginx-rtmp z moudule CSI Camera ??
WillyWonka

4

Dodaj tę linię repo do /etc/apt/sources.list

deb http://vontaene.de/raspbian-updates/ . Główny

Więc po prostu ....

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

To repozytorium strony trzeciej jest hostowane przez członka spoza forów Pi . Kompilują najnowsze wersje projektu gst-omx i publikują tam pliki.

Za pomocą tego polecenia możesz sprawdzić, czy rozpoznał możliwości sprzętowe Pi

gst-inspect-1.0 | grep omx

wprowadź opis zdjęcia tutaj


1
Na razie jest to najszybsza i najłatwiejsza metoda. Kompilowanie, jak opisano poniżej w odpowiedzi Unkle George, nie działało dla mnie, ponieważ niektóre depresje były nieaktualne.
PTS

4

Według stanu na kwiecień 2015 r. Repozytoria Raspbian obejmują GStreamer 1.2 i wtyczki OpenMAX, więc najprostszym sposobem jest odpowiedź ppumkina, ale bez edycji /etc/apt/sources.list:

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

następnie sprawdź za pomocą:

gst-inspect-1.0 | grep omx

Nie mam gstreamer1.0w repozytorium. Jak mogę to dodać?
shrx

Nie ma pakietu gstreamer1.0, ale apt-get powinien użyć go jako wyrażenia regularnego i pobrać wszystkie pakiety gstreamer1.0 ... Czy apt-cache search ^gstreamer1.0pokazuje jakieś paczki?
M. Rubio-Roy,

Znajduje pakiety związane z gstreamer, pomyślałem, że powinien istnieć gstreamer1.0pakiet deb, który zawiera wszystkie podstawowe pakiety gstreamer.
shrx
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.