Page 1 of 1

Play stream for a set time?

Posted: 25 Feb 2010 03:09
by Soundy
Hey folks, sorry if this is covered somewhere already, I've searched a bit but haven't come up with anything...

I want to be able to play an http stream for a set period of time, then switch to a new stream. Ultimately I'll be wanting to toggle through a number of streams, either in sequence, or changing randomly. Only way I've come up with so far is to create a looped batch file and run a process killer every so often to kill the running copy, so it can restart with the next stream on command line, but that's clunky and ugly... and I figure with everything else it can do, VLC must be able to handle this too?

Thanks, all!

Re: Play stream for a set time?

Posted: 25 Feb 2010 18:18
by Soundy
No comments yet (yeah yeah, I know, don't be so impatient, noob :D)? I was wondering, can I "push" commands to a running copy of VLC? Like, could I start it with a playlist of my streams, then have something "command" it on schedule to skip to the next playlist item?

Just had another thought I might try: if I set VLC to only allow one instance, then have a schedule call it again with a new stream URL, it should just take over the running copy with the new URL, yes? Something like:
<batch file>
:top
vlc url1 params
pause 60s
vlc url2 params
pause 60s
vlc url3 params
pause 60s
goto top
</batch file>

Any thoughts on how this would work?

Main thing I really need i for the transition to be seamless, without jumping back to the desktop or flickering out of fullscreen. It doesn't have to do a fancy dissolve or anything (although that would sure be sexy).

Re: Play stream for a set time?

Posted: 26 Feb 2010 08:04
by Soundy
Okay, the above idea does work... sort of. Switches cleanly, just one little glitch: the marquee doesn't change.

Code: Select all

:top start vlc --config=vlcrc.marquee "http://192.168.0.22/now.jpg?snap=spush" --fullscreen --sub-filter "marq{marquee='Camera 2'}" sleep 10 start vlc --config=vlcrc.marquee "http://192.168.0.23/now.jpg?snap=spush" --fullscreen --sub-filter "marq{marquee='Camera 1'}" sleep 10 goto top
So far so good ("sleep" is a little DOS utility, sleep.exe), except the marquee text stays stuck on whatever the first one is...?

Edit: added a "--no-save-config" to the command line too, no difference :(

Edit2: tried with "refresh" and "timeout" parameters for the marq sub-string... no luck there either. I see what's going on - it's not opening a new instance, it's just reloading the new stream in the existing one, so it's not loading the new parameters I'm defining. The question is, how to get around this? I don't suppose unique versions of vlcrc for each instance will help either?

Re: Play stream for a set time?

Posted: 03 Mar 2010 21:21
by Soundy
Still no luck with this... anyone with any ideas? Anything? Please?? :)