Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Video 不要使用display gstreamer aarch 64 linux_Video_Gstreamer_Video Processing_Wayland_Google Coral - Fatal编程技术网

Video 不要使用display gstreamer aarch 64 linux

Video 不要使用display gstreamer aarch 64 linux,video,gstreamer,video-processing,wayland,google-coral,Video,Gstreamer,Video Processing,Wayland,Google Coral,我正在谷歌珊瑚开发板上使用gstreamer,并在上面执行视频分析。 平台详细信息如下: Linux Holder horse 4.9.51-imx#1 SMP抢占5月14日星期二20:34:37 UTC 2019 aarch64 GNU/Linux 我有一个管道的形式: GST_DEBUG=*gl*:5 gst-launch-1.0 videotestsrc ! video/x-raw,width=640,height=480,framerate=15/1 ! queue max-size-

我正在谷歌珊瑚开发板上使用gstreamer,并在上面执行视频分析。 平台详细信息如下:

Linux Holder horse 4.9.51-imx#1 SMP抢占5月14日星期二20:34:37 UTC 2019 aarch64 GNU/Linux

我有一个管道的形式:

GST_DEBUG=*gl*:5 gst-launch-1.0 videotestsrc  ! video/x-raw,width=640,height=480,framerate=15/1 ! queue max-size-buffers=1 leaky=downstream  ! glupload ! queue max-size-buffers=1 leaky=downstream ! glfilterbin filter=glcolorscale  ! video/x-raw,format=RGBA,width=320,height=180 ! videoconvert ! video/x-raw,format=RGB,width=320,height=180 ! appsink name=appsink sync=false emit-signals=true max-buffers=1 drop=true
从终端运行时,它工作正常。然而,当我作为后台执行管道时,它失败了,因为后台服务没有显示的权限。无论如何,我不想显示窗口,我只想将数据连接到appsink,这样我就可以对其执行视频分析


所以,任何人都知道,如何强制它不使用display,而只是将数据转发到appsink。请提供帮助

我相信您已经就相同的问题与我们联系,我已经回答了,但这是服务文件,其他人可以参考:

[Unit]
Description=Back service
After=weston.target

[Service]
ExecStart=/home/mendel/service_script.sh
Environment=XDG_RUNTIME_DIR=/run/user/1000

[Install]
WantedBy=multi-user.target
问题是,我认为您需要设置
XDG\u RUNTIME\u DIR
env变量

这对我有用:

mendel@bored-quill:~$ sudo systemctl status back
● back.service - Back service
   Loaded: loaded (/lib/systemd/system/back.service; disabled; vendor preset: enabled)
   Active: active (running) since Thu 2020-03-05 14:48:57 UTC; 6h ago
 Main PID: 13522 (service_script.)
    Tasks: 10 (limit: 797)
   Memory: 19.2M
   CGroup: /system.slice/back.service
           ├─13522 /bin/bash /home/mendel/service_script.sh
           └─13523 gst-launch-1.0 videotestsrc ! video/x-raw,width=640,height=480,framerate=15/1 ! queue max-size-buffers=1 leaky=downstream ! glupload ! queue max-size-buffers=1 leaky=downstream ! glfilterbin f

Mar 05 21:43:02 bored-quill service_script.sh[13522]: 6:54:05.284750061 13523 0xaaaad4400a30 DEBUG             gleglimage gsteglimage.c:431:_drm_direct_fourcc_from_info: Getting DRM fourcc for RGBA
Mar 05 21:43:02 bored-quill service_script.sh[13522]: 6:54:05.284849062 13523 0xaaaad4400a30 DEBUG             gleglimage gsteglimage.c:661:gst_egl_image_from_dmabuf_singleplaner: fourcc AB24 (875708993) n_plane
Mar 05 21:43:02 bored-quill service_script.sh[13522]: 6:54:05.285265825 13523 0xffff900040f0 DEBUG           glbasememory gstglbasememory.c:178:gst_gl_base_memory_init: new GL buffer memory:0xffff8035dcc0 size:1
Mar 05 21:43:02 bored-quill service_script.sh[13522]: 6:54:05.285372385 13523 0xffff900040f0 DEBUG          glbasetexture gstglmemory.c:340:gst_gl_memory_init: new GL texture context:<glcontextegl0> memory:0xfff
Mar 05 21:43:02 bored-quill service_script.sh[13522]: 6:54:05.285269905 13523 0xaaaad442b630 DEBUG      gldownloadelement gstgldownloadelement.c:419:gst_gl_download_element_prepare_output_buffer:<gldownloadeleme
Mar 05 21:43:02 bored-quill service_script.sh[13522]: 6:54:05.286813716 13523 0xffff900040f0 DEBUG                gldebug gstgldebug.c:320:_gst_gl_debug_callback:<glcontextegl0> low: GL debug marker from third p
Mar 05 21:43:02 bored-quill service_script.sh[13522]: 6:54:05.286898196 13523 0xffff900040f0 DEBUG               glfilter gstglfilter.c:981:gst_gl_filter_filter_texture: calling filter_texture with textures in:2
Mar 05 21:43:02 bored-quill service_script.sh[13522]: 6:54:05.287709642 13523 0xaaaad4400a30 DEBUG             gleglimage gsteglimage.c:431:_drm_direct_fourcc_from_info: Getting DRM fourcc for RGBA
Mar 05 21:43:02 bored-quill service_script.sh[13522]: 6:54:05.287806243 13523 0xaaaad4400a30 DEBUG             gleglimage gsteglimage.c:661:gst_egl_image_from_dmabuf_singleplaner: fourcc AB24 (875708993) n_plane
Mar 05 21:43:02 bored-quill service_script.sh[13522]: 6:54:05.288226006 13523 0xffff900040f0 DEBUG           glbasememory gstglbasememory.c:178:gst_gl_base_memory_init: new GL buffer memory:0xffff8035dcc0 size:1
mendel@bored-纬管:~$sudo systemctl状态返回
● back.service-back服务
已加载:已加载(/lib/systemd/system/back.service;已禁用;供应商预设:已启用)
有效:自2020-03-05星期四14:48:57 UTC起有效(运行);6小时前
主PID:13522(服务脚本)
任务:10项(限制:797项)
内存:19.2百万
CGroup:/system.slice/back.service
├─13522/bin/bash/home/mendel/service_script.sh
└─13523 gst-launch-1.0 videotestsrc!视频/x-raw,宽度=640,高度=480,帧速率=15/1!队列最大缓冲区大小=1泄漏=下游!笨蛋!队列最大缓冲区大小=1泄漏=下游!glfilterbin f
3月5日21:43:02钻孔毛笔服务脚本.sh[13522]:6:54:05.284750061 13523 0xAAD4400A30调试gleglimage gsteglimage.c:431:_drm_direct_fourcc_from_info:获取RGBA的drm fourcc
3月5日21:43:02钻孔鹅毛笔服务脚本.sh[13522]:6:54:05.284849062 13523 0xAAAAD440A30调试gleglimage gsteglimage.c:661:gst_egl_图像_来自_dmabuf_单平面:fourcc AB24(875708993)n_平面
3月5日21:43:02钻孔毛笔服务\u script.sh[13522]:6:54:05.285265825 13523 0xFFFF90004F0调试GLBASEMORY GSTGLBASEMORY.c:178:gst\u gl\u base\u memory\u init:新gl缓冲区内存:0xffff8035dcc0大小:1
Mar 05 21:43:02钻孔毛笔服务\u script.sh[13522]:6:54:05.285372385 13523 0xFFFF90004F0调试glbasetexture GSTGLMORY.c:340:gst\u gl\u memory\u init:新gl纹理上下文:内存:0xfff

3月5日21:43:02无聊的鹅毛笔服务脚本.sh[13522]:6:54:05.28526905 13523 0xAAAD442B630调试gldownloadelement gstgldownloadelement.c:419:gst\u gl\u下载\u元素\u准备\u输出\u缓冲区:不是问题的答案,而是调试的想法。您可以使用screen调试代码。启动时运行
screen-dmS\u script.sh
。然后,您可以使用
screen-ls
列出屏幕应用程序,并使用“screen-r”恢复屏幕。OpenGL通常在驱动程序中运行的X会话上实例化。因此,它需要运行X会话是“正常的”。您可能想对“OpenGL headless”进行一些研究,以找到替代方法。感谢我在管道中试验GST_GL_WINDOW=gbm。现在它对我也起了作用。