C语言 如何转义引号内的引号,以便为 gstreamer 命令行定义接收器



如何在引号中使用引号用于gstreamer命令行。这是gstreamer版本1.14.4和ubuntu版本4.9.140-tegra使用bash shell,所有这些都在Jetson Nano开发系统上运行。

我尝试了各种逃生方法,但没有一种奏效。

以下内容在接收器定义中带有引号的双引号,不起作用。

gst-launch-1.0 playbin uri=file:///home/tom/Videos/UHD_demo_Nature.mp4 sink="glupload !  glshader fragment=""`ca
t testfrag.frag`"" ! glimagesinkelement"

我认为这是一个转义序列问题,我尝试了很多逃生方法,但我宁愿不偏向任何关注这个问题的人。 opengl 片段是正确的,并且使用一个简单的命令行示例工作:

gst-launch-1.0 videotestsrc ! glupload ! glshader fragment=""`cat testfrag.frag`"" ! glimagesink

任何想法是命令外壳问题或 gstreamer 问题,我需要纠正双引号。

这是片段:

#version 100
#ifdef GL_ES
precision mediump float;
#endif
varying vec2 v_texcoord;
uniform sampler2D tex;
uniform float time;
uniform float width;
uniform float height;
vec4 myColor;

void main () {
myColor = texture2D( tex, v_texcoord );
gl_FragColor = myColor;
gl_FragColor.r = myColor.b;
gl_FragColor.b = myColor.r;
}

当我运行命令行时,出现以下错误:

Generates an error message:
WARNING: erroneous pipeline: no element "100"

您是否尝试过%22来转义引号?

这个网站显示了 html 编码,我从这一行得到了这个想法:

新 URI 的查询字符串,其中"&"分隔查询元素。包含"&"字符的元素应将其编码为"%26"。

从这个网站。

最新更新