GStreamer in Windows - need alternate stage separator character

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

GStreamer in Windows - need alternate stage separator character

Wes Miller
Administrator
In Windows the default behavior of script vars like %myvar%, is for all instances of all variables to be substituted at the time the script is invoked.  In other words, variables stop being variable as soon as they have a value.  

The solution is to turn on delayed variable substitution by passing a command arg to cmd.exe (usually in the icon's properties).  Our dear friends at MS, I suppose to keep the expected behavior of %myvar% working as (badly) designed, decided that delayed ass-gnment vars should be indicated by enclosing them in !'s instead of %'s.

And that's the problem.  ! is also gstreamer's pipe stage separator symbol.  In a cmd window with delayed variable assignment turned on, windows sees them as surrounding delayed variables with names like "! ffmpegcolorspace !" -- spaces and all.  

So, dear friends in the gst community, is it possible to use a different separator character with gstreamer?  

If not, who do I ask about adding a new parm to gst-launch that will set a (different) stage separator char?

Wes Miller


p.s. I suppose I could install a bash.exe and write scripts in bash instead of windows "shell" language.  Or use Rexx or python or perl.  This was supposed to be simple.

Reply | Threaded
Open this post in threaded view
|

Re: GStreamer in Windows - need alternate stage separator character

Stefan Sauer
hi,


Wes Miller wrote:

> In Windows the default behavior of script vars like %myvar%, is for all
> instances of all variables to be substituted at the time the script is
> invoked.  In other words, variables stop being variable as soon as they have
> a value.  
>
> The solution is to turn on delayed variable substitution by passing a
> command arg to cmd.exe (usually in the icon's properties).  Our dear friends
> at MS, I suppose to keep the expected behavior of %myvar% working as (badly)
> designed, decided that delayed ass-gnment vars should be indicated by
> enclosing them in !'s instead of %'s.
>
> And that's the problem.  ! is also gstreamer's pipe stage separator symbol.
> In a cmd window with delayed variable assignment turned on, windows sees
> them as surrounding delayed variables with names like "! ffmpegcolorspace !"
> -- spaces and all.  
>
> So, dear friends in the gst community, is it possible to use a different
> separator character with gstreamer?  
>
> If not, who do I ask about adding a new parm to gst-launch that will set a
> (different) stage separator char?
>  
It would not be enough to change it there. You would need to change it
in gst/parse/parse.l.
On the otherhand we could probably have an option that on windows we
replace any "|" pipe symbols with "!" before passing the string to
gst_parse_launch. Does the "|" have a special meaning in cmd.exe?

One you have a idea, how this could work, you can file a bug
(enhancement request) to bugzilla.gnome.org. Ideall containing a patch :)

Stefan

> Wes Miller
>
>
> p.s. I suppose I could install a bash.exe and write scripts in bash instead
> of windows "shell" language.  Or use Rexx or python or perl.  This was
> supposed to be simple.
>
>
>  


------------------------------------------------------------------------------
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: GStreamer in Windows - need alternate stage separator character

wl2776
Administrator
Stefan Kost wrote
On the otherhand we could probably have an option that on windows we
replace any "|" pipe symbols with "!" before passing the string to
gst_parse_launch. Does the "|" have a special meaning in cmd.exe?
Unfortunately, yes. The same, as in unix.
Reply | Threaded
Open this post in threaded view
|

Re: GStreamer in Windows - need alternate stage separator character

Wes Miller
Administrator
In reply to this post by Stefan Sauer



Stefan Kost [mailto:[hidden email]] wrote:

> On the otherhand we could probably have an option that on windows we
> replace any "|" pipe symbols with "!" before passing the string to
> gst_parse_launch. Does the "|" have a special meaning in cmd.exe?


Like all its ancestors back to CP/M, cmd.exe thinks it can pipe data.  So, yes, cmd.exe uses "|" along with "%^*/\@()&+" and the double quote itself.


> One you have a idea, how this could work, you can file a bug
> (enhancement request) to bugzilla.gnome.org. Ideall containing a patch :)


Maybe.....

Thanks much.

Wes



------------------------------------------------------------------------------
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel