[vlc-devel] Re: patch modules/control/telnet.c (9649): fix race on close

Ted Deppner ted at psyber.com
Tue Dec 28 07:10:37 CET 2004

On Sat, Dec 25, 2004 at 01:27:04PM +0100, Cl?ment Stenac wrote:
> > I'm also interested in patches to VLM that would add a "stop at end of
> > playlist" (maybe control handle stopatend) and a percentage played status
> > option as well (control handle status?).  And of course a working playlist
> > in VLM again.  :)
> Could you be more explicit on what you call playlist in the case of VLM.
> Normal playlist and "vlm playlist" are currently independant. We have
> been looking at how to integrate them neatly (VLM items being put in a
> separate node in the playlist, VLM being able to use other playlist
> items, ...). What would you like to see ? 

I'm not so familiar with the inards of vlc or vlm as of yet, so some of
your terminology is unclear to me.  That said, at present it seems that
once a media is played, no further vlm commands other than 'control handle
stop' have any affect on playing process.

So, what I'd like to see at a minimum would be the following:

 - playlist that can be made to loop.  5 items, restart with first item
   when last one completes.  Not sure if this makes more sense as vlm
   spawning separate playing instances in sequence, or launching a single
   play instance that has the complete play list and loop behavior.  (I
   think this is crux of your query above.)
 - ability to get a filename and percentage done in the current player.
   Ie, play list item 5 named abc.mpg is presently at 64% played.  Perhaps
   "control handle status".

 - ability to signal player to stop at the end of the present file, or at
   the end of the play list...  ie, we've been playing a 30 minute loop
   for 4 hours, and now we want to stop this stream at the end of this
   play.  Perhaps "control handle stopateoi" (end of [playlist] item) and
   "stopateol" (end of playlist).

The background for this is in a broadcast IP video environment.  I'm
building streaming servers that will play static content, ie a "welcome"
video on channel 1, a place holder on a PEG channel ("local news and
events seen here at ..."), and so forth.  Basically short videos that will
loop for days on end.

VLM's present capabilies will satisfy this need.  However, there's no
graceful way (think monkey watching TV) to stop the Welcome video on
channel 1 and then play a promo.

I'm writing a control system using perl and mysql to manage multiple
servers running vlm... I don't need all the complex bahavior in vlm, just
the building blocks and hooks.

Lastly, as a "hoped for" item, would be an option to turn on "event
reporting".  Ie, "setup handle eventreporting", and then an easy to parse
single line per event as it happens.  This would save a periodic "show
media" to verify where things are at.  (Think of a perl program watching
this output via "nc 4212".)

  - ##EVENT media <handle> playing file /pathto/z.mpg
  - ##EVENT media <handle> error on file /pathto/y.mpg: file not found
  - ##EVENT media <handle> done playing file /pathto/h.mpg
  - ##EVENT media <handle> no more items in play list, stopped.

With these pieces, one could seamlessly handle scheduling of programs such
that one starts after another ends with ease.

Hope this is clear, not too pie in the sky, and helpful.  As I have time
and ability I'll be happy to test anything or contribute more.  I'm new to
broadcast video, relatively new to vlm's codebase, so please let me know
if I'm missing things.

I can mock up some actual use cases with VLM commands if desired.

Ted Deppner

This is the vlc-devel mailing-list, see http://www.videolan.org/vlc/
To unsubscribe, please read http://developers.videolan.org/lists.html

More information about the vlc-devel mailing list