[vlc-devel] [vlc-commits] lua: convert playlist parser to stream filter

Rémi Denis-Courmont remi at remlab.net
Wed May 17 18:34:27 CEST 2017

Le keskiviikkona 17. toukokuuta 2017, 16.54.24 EEST Thomas Guillem a écrit :
> Hello,
> This commit causes every playlist lua scripts to be probed for all
> inputs.

That seems like the intended behaviour. It would be nice if Lua probing were 
partially offloaded to native code and also if Lua scripts remained cached in 
RAM. But that is not something that the original Lua run-time author or 
anybody else ever bothered with.

It would also be nice if stream filters and demuxers were probed in a unified 
priority order. And it would have been easy if it had been done for access and 
access_demux as it should have been done. But it was not done either.

> There are probed from stream_FilterAutoNew() in InputDemuxNew().
> This cause a massive performance issue when preparsing a lot of files,
> this can double or triple the parse duration for one file.

TBH, I have not perceived any subjective degradation. Optical drive accesses, 
preparsing, art fetching, adn the UI have made directory parsing slow enough 
to notice for years already.

> Also, since lua playlists normally only check the url, a matching lua
> "stream-filter" will be added 16 times (because of the loop inside
> stream_FilterAutoNew()) and playback will fail since the first filter
> will consume the stream data. See
> http://git.videolan.org/gitweb.cgi?p=vlc.git;a=blob;f=share/lua/playlist/you
> tube.lua;h=7b63f91fa84a5da799e4a09a375448661deaf6df;hb=HEAD#l228 for a probe
> example.

Yes. That´s fixed now.


More information about the vlc-devel mailing list