Я пытаюсь следовать этому простому примеру для потоковой передачи видео WebM VP8 по протоколу RTP.
Я использую 64-разрядную версию Arch Linux, скомпилировал и установил версию gstreamer, о которой они говорят (то есть версию git), и следовал эти инструкции.
Насколько я понимаю, сборка из репозитория git создает gstreamer-1.0, так что это то, что у меня есть.
У меня GST_PLUGIN_PATH
и GST_PLUGIN_SYSTEM_PATH
указывают на /home/nschoe/usr/lib/gstreamer-1.0 (я полностью установил этот gstreamer-1.0 в свой домашний каталог).
Когда я попробовал команду gst-launch-1.0 -v videotestsrc ! vp8enc ! rtpvp8pay ! udpsink host=127.0.0.1 port=9001
, я получаю сообщение об ошибке:
GST_PIPELINE ./grammar.y:687:priv_gst_parse_yyparse: no element "vp8enc"
После некоторые исследования, я обнаружил, что vp8enc должен быть в gst-plugins-good, который я установил.
Но когда я запускаю gst-inspect-1.0 -a | grep -i gst-plugins-good | grep -i vp8
, я получаю:
rtpvp8depay: Source module gst-plugins-good
rtpvp8pay: Source module gst-plugins-good
Так что я не понимаю, почему у меня нет vp8enc и vp8dec. Кроме того, когда я запускаю locate vpx.so
, у меня есть следующие результаты (усеченные до соответствующих результатов):
/home/nschoe/usr/lib/gstreamer-1.0/libgstvpx.so
/usr/lib/libvpx.so
Первый, скорее всего, исходит из gst-plugins-good, который я клонировал из git и установил в свой домашний каталог, последний я установил из Arch linux pacman, потому что я думал, что это решит мою проблему.
Можете ли вы сказать мне, почему я не могу использовать этот плагин vp8enc?
Заранее благодарим вас за ваше время.