No such element factory "vaapih264enc"!

65 views
Skip to first unread message

Алексей

unread,
Dec 29, 2023, 9:05:59 AM12/29/23
to avreg-users
Сменил дистрибутив c Debian на Ubuntu Server 22.04.3 LTS помогите пожалуйста запустить rtsp-proxy.

Сама строка конвертации работает нормально
===================================
sudo gst-launch-1.0 v4l2src device=/dev/video0 ! video/x-raw,format=YUY2 ! videoconvert ! vaapih264enc ! h264parse ! rtph264pay name=pay0 pt=96
Setting pipeline to PAUSED ...
error: XDG_RUNTIME_DIR not set in the environment.
Pipeline is live and does not need PREROLL ...
Got context from element 'vaapiencodeh264-0': gst.vaapi.Display=context, gst.vaapi.Display=(GstVaapiDisplay)"\(GstVaapiDisplayDRM\)\ vaapidisplaydrm1", gst.vaapi.Display.GObject=(GstObject)"\(GstVaapiDisplayDRM\)\ vaapidisplaydrm1";
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
^Chandling interrupt.
Interrupt: Stopping pipeline ...
Execution ended after 0:00:06.747855584
Setting pipeline to NULL ...
Freeing pipeline ...
==============================================

Но вот прокси в упор не видит энкодер vaapih264enc, о чем собственно сообщает:

===============================================
0:03:31.887940379  6850 0x55ee56dda180 WARN               rtspmedia rtsp-media.c:3594:wait_preroll: failed to preroll pipeline
0:03:31.887988720  6850 0x55ee56dda180 WARN               rtspmedia rtsp-media.c:3964:gst_rtsp_media_prepare: failed to preroll pipeline
0:03:31.923187819  6850 0x55ee56dda180 ERROR             rtspclient rtsp-client.c:1087:find_media: client 0x55ee56dea2e0: can't prepare media
0:03:31.924047708  6850 0x55ee56dda180 ERROR             rtspclient rtsp-client.c:3376:handle_describe_request: client 0x55ee56dea2e0: no media
0:03:36.928518449  6850 0x7f6aac002c60 ERROR             rtspclient rtsp-client.c:1054:find_media: client 0x55ee56dea420: not authorized to see factory path /avreg-media/1/media.amp
0:03:36.928628437  6850 0x7f6aac002c60 ERROR             rtspclient rtsp-client.c:3376:handle_describe_request: client 0x55ee56dea420: no media
0:03:36.930539485  6850 0x7f6aac002c60 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:701:gst_element_factory_make_with_properties: no such element factory "vaapih264enc"!
0:03:36.930666586  6850 0x7f6aac002c60 ERROR           GST_PIPELINE gst/parse/grammar.y:851:priv_gst_parse_yyparse: no element "vaapih264enc"
0:03:36.930731602  6850 0x7f6aac002c60 ERROR           GST_PIPELINE gst/parse/grammar.y:939:priv_gst_parse_yyparse: link has no sink [source=@0x7f6ab001c2d0]
0:03:36.930909452  6850 0x7f6aac002c60 ERROR           GST_PIPELINE gst/parse/grammar.y:939:priv_gst_parse_yyparse: link has no source [sink=@0x7f6ab0024260]
0:03:36.933859660  6850 0x7f6aac002c60 WARN        rtspmediafactory rtsp-media-factory.c:1806:default_create_element: recoverable parsing error: no element "vaapih264enc"
0:03:37.068985534  6850 0x7f6aac00f460 WARN          v4l2bufferpool gstv4l2bufferpool.c:842:gst_v4l2_buffer_pool_start:<v4l2src38:pool0:src> Uncertain or not enough buffers, enabling copy threshold
0:03:37.571804538  6850 0x7f6aac00f460 WARN                 basesrc gstbasesrc.c:3127:gst_base_src_loop:<v4l2src38> error: Internal data stream error.
0:03:37.571914238  6850 0x7f6aac00f460 WARN                 basesrc gstbasesrc.c:3127:gst_base_src_loop:<v4l2src38> error: streaming stopped, reason not-linked (-1)
0:03:37.572237844  6850 0x7f6aac00ef00 WARN               rtspmedia rtsp-media.c:3268:default_handle_message: 0x7f6aac0571d0: got error Internal data stream error. (../libs/gst/base/gstbasesrc.c(3127): gst_base_src_loop (): /GstPipe
line:media-pipeline/GstBin:bin38/GstV4l2Src:v4l2src38:
streaming stopped, reason not-linked (-1))
===============================================

avreg-support

unread,
Dec 30, 2023, 7:28:17 AM12/30/23
to avreg-users
Попробуйте очистить   gstreamer  кеш для прокси, он скорее всего будет в каталоге  /var/lib/avreg.

пятница, 29 декабря 2023 г. в 17:05:59 UTC+3, i...@spetslit.ru:
Message has been deleted
Message has been deleted

Алексей

unread,
Jan 25, 2024, 6:54:33 AMJan 25
to avreg-users
Помогло GST_VAAPI_ALL_DRIVERS=1 и это если DRI для vaapi еще не занят Xserver'ом, в противном случае можно указать Driver=fbdev в xorg.conf дабы освободить vaapi для кодирования видео.
суббота, 30 декабря 2023 г. в 15:28:17 UTC+3, avreg-support:

Andrey Nikitin

unread,
Jan 25, 2024, 7:13:56 AMJan 25
to avreg...@googlegroups.com
Алексей писал(а):
> Помогло GST_VAAPI_ALL_DRIVERS=1 и это если DRI для vaapi еще не занят
> Xserver'ом, в противном случае можно указать Driver=fbdev в xorg.conf дабы
> освободить vaapi для кодирования видео.

А какая у вас видеокарта?


P.S. тут про GST_VAAPI_ALL_DRIVERS
https://thiblahute.github.io/GStreamer-doc/vaapi-1.0/index.html

Алексей

unread,
Jan 25, 2024, 7:29:09 AMJan 25
to avreg-users
*-display                
       description: VGA compatible controller
       product: Kabini [Radeon HD 8280 / R3 Series]
       vendor: Advanced Micro Devices, Inc. [AMD/ATI]
       physical id: 1
       bus info: pci@0000:00:01.0
       version: 00
       width: 64 bits
       clock: 33MHz
       capabilities: pm pciexpress msi vga_controller bus_master cap_list rom
       configuration: driver=radeon latency=0
       resources: irq:35 memory:c0000000-cfffffff memory:d0000000-d07fffff ioport:f000(size=256) memory:feb00000-feb3ffff memory:c0000-dffff

Так как DRI занят vaapih264enc, иксы удалось запустить только с fbdev, почему так незнаю, видимо vaapi нужен монопольный доступ к DRI видеокарты.
четверг, 25 января 2024 г. в 15:13:56 UTC+3, Andrey Nikitin:

Алексей

unread,
Jan 29, 2024, 8:13:55 AMJan 29
to avreg-users
Удалось победить, все дело в том что /dev/dri/renderD128 находится в пользовательской группе render, по этому usermod -aG render avreg решает проблему доступа прокси к DRI для vaapi.

четверг, 25 января 2024 г. в 15:29:09 UTC+3, Алексей:

Andrey Nikitin

unread,
Jan 30, 2024, 2:43:40 AMJan 30
to avreg...@googlegroups.com
Алексей писал(а):
👏👏
Reply all
Reply to author
Forward
0 new messages