2023-02-15, 19:18
I'm currently making an addon, it autoexec into a Slideshow that each 30 seconds it checks if the files in the folder have been modified.
The prob is that i dont want it to be every 30 secs, but each time the Slideshow loops
# Genera lista de imagebes e inicia Slideshow
l1 = xbmcvfs.listdir(picfolder)
xbmc.executebuiltin('SlideShow(%s)' %(picfolder))
xbmc.log('[Recarga-Wlideshow] Slideshow iniciado, Monitoreando',2)
# Espera que inicie el Slideshow
sleep(6)
# Monitoreo durante slideshow
while not monitor.abortRequested():
# Si el slideshow sigue corriendo, compara el contenido del directorio
if xbmc.getCondVisibility('Window.IsActive(slideshow)'):
l2 = xbmcvfs.listdir(picfolder)
# Reinicia Slideshow si el contenido del directorio ha cambiado
if l1 != l2:
xbmc.log('[Recarga-Slideshow] El contenido de la carpeta ha cambiado, reiniciando Slideshow',2)
xbmc.executebuiltin('SlideShow(%s)' %(picfolder))
l1 = l2
else:
startProgram()# subprocess.run
# Si el slideshow ya no esta corriendo (O el usuario salio), sal del script
else:
break
# Espera 60 segundos, break si un abort es pedido
if monitor.waitForAbort(30):
break
xbmc.log('[Recarga-slideshow] Terminado, Saliendo',2)
The prob is that i dont want it to be every 30 secs, but each time the Slideshow loops
# Genera lista de imagebes e inicia Slideshow
l1 = xbmcvfs.listdir(picfolder)
xbmc.executebuiltin('SlideShow(%s)' %(picfolder))
xbmc.log('[Recarga-Wlideshow] Slideshow iniciado, Monitoreando',2)
# Espera que inicie el Slideshow
sleep(6)
# Monitoreo durante slideshow
while not monitor.abortRequested():
# Si el slideshow sigue corriendo, compara el contenido del directorio
if xbmc.getCondVisibility('Window.IsActive(slideshow)'):
l2 = xbmcvfs.listdir(picfolder)
# Reinicia Slideshow si el contenido del directorio ha cambiado
if l1 != l2:
xbmc.log('[Recarga-Slideshow] El contenido de la carpeta ha cambiado, reiniciando Slideshow',2)
xbmc.executebuiltin('SlideShow(%s)' %(picfolder))
l1 = l2
else:
startProgram()# subprocess.run
# Si el slideshow ya no esta corriendo (O el usuario salio), sal del script
else:
break
# Espera 60 segundos, break si un abort es pedido
if monitor.waitForAbort(30):
break
xbmc.log('[Recarga-slideshow] Terminado, Saliendo',2)