Seite 4 von 5

Re: SHOUTcast -Simpleplayer

Verfasst: Mo 18. Feb 2019, 21:01
von udog
fritz das dass nicht einfach ist weiß ich selbst.
Dachte nur weil es im Radiomodus klappt :wink_:
hier mal kurzer Test mit paar kleinen New York Bildern...................
http://udog.dyn.vh0st.me/images/Samsung ... 205423.mp4

trotzdem HUT ab...Dein Plugin ist duffte...so kann man dass öfter mal nutzen ohne groß suchen zu müssen :thumbs: :thumbs: :thumbs:

Re: SHOUTcast -Simpleplayer

Verfasst: Mo 18. Feb 2019, 22:58
von fritz
Nicht dass Verärgerung aufkommt, das ist keine Frage des "wollens" sondern des "könnens", ich kann deinen Wunsch leider nicht umsetzen, da ich nicht weis wie ;)

Re: SHOUTcast -Simpleplayer

Verfasst: Mo 18. Feb 2019, 23:16
von BPanther
Ich habe dazu eine Idee, weil ich woanders sowas gesehen habe durch Zufall. -> https://github.com/koreader/koreader/bl ... nsaver.lua
Da könnte man doch sicherlich was von gebrauchen für das was udog will... ;)

Re: SHOUTcast -Simpleplayer

Verfasst: Di 19. Feb 2019, 00:14
von fritz
Ich kann leider damit nichts anfangen, einer der wenigen der vermutlich was damit anfangen könnte dürfte "SatBaby" sein, aber den erreicht man nicht mehr.
Wenn einer Kontakt zu Ihm hätte könnte Er ja vorsichtig mal anklopfen.

Re: SHOUTcast -Simpleplayer

Verfasst: Di 19. Feb 2019, 00:28
von BPanther
Hmm, ich kann mir das auch nochmal anschauen ob ich da was hinbekomme - aber auch ich verspreche da nichts.

Re: SHOUTcast -Simpleplayer

Verfasst: Di 19. Feb 2019, 03:44
von BPanther
Habe eine Weile rumgebastelt und mich belesen. So geht das leider nicht, denn anscheinend läßt LUA keine Funktionen im Hintergrund laufen. Egal was man versucht, Schleifen wie while, repeat etc. bringen LUA dazu immer zu warten, bis die Bedingung erfüllt ist - erst dann geht es weiter. Scheint also so leider nicht zu funktionieren. Dennoch habe ich zumindest eine Zufallsfunktion für Bilder eingebaut (Zeile 189 ist der Path vergeben, derzeit /var/boot/), d.h. immer wenn der Radiosender gewechselt wird (oder neu gestartet wird) wird ein anderes Bild angezeigt. Mehr kann ich leider auch nicht tun...

Re: SHOUTcast -Simpleplayer

Verfasst: Di 19. Feb 2019, 07:51
von TangoCash

Code: Alles auswählen

local posix = require "posix"
local pid = posix.fork()

if pid == 0 then 
  -- this is the child process
  print(posix.getpid('pid') .. ": child process")

else 
  -- this is the parent process
  print(posix.getpid('pid') .. ": parent process")

  -- wait for the child process to finish
  posix.wait(pid) 

end

-- both processes get here
print(posix.getpid('pid') .. ": quitting")
luaposix kann mit fork einen 2. prozess starten...

Any code after the posix.fork() executed in both parent and child. The child process has been detached from parent process. The only different is the pid.

Re: SHOUTcast -Simpleplayer

Verfasst: Di 19. Feb 2019, 10:27
von fritz
@BPanther
es müsste auch random Bildwechsel nach einen fest eingestellten Wert gehen wenn ich dass alte ISS-Plugin richtig verstanden habe war dort so eine Funktion drin.

Re: SHOUTcast -Simpleplayer

Verfasst: Di 19. Feb 2019, 10:41
von fritz
Ergänzung, im ISS-Plugin gibt es eine Zeile mit ...

Code: Alles auswählen

timeout      = 120     -- Wartezyklen (jeweils 500 ms)
und

Code: Alles auswählen

...
	repeat
		os.execute('wget -q -O - '..image..' > /tmp/iss-location.jpg')
		if  size_x == size_tv_x
		then
			p_tv:paint()
		else
			start_x = math.random(x_beg, x_end)
			start_y = math.random(y_beg, y_end)
			p:hide()
			p = cpicture.new{x=start_x, y=start_y, dx=size_x, dy=size_y, image='/tmp/iss-location.jpg'}
			p:paint()
		end
		i = 0
		repeat
			i = i + 1
			msg, data = n:GetInput(500)
		until msg == RC.ok or msg == RC.home or msg == RC.red or i == timeout
leider habe ich aktuell eine Denkblokade so dass ich wenig helfen kann.

ps.: Es könnte vermutlich sogar eine wechselnde Bildposition möglich sein, d.h. wenn man kleinere Bilder verwenden will und die an unterschiedlichen Stellen angezeigt werden sollen.

Re: SHOUTcast -Simpleplayer

Verfasst: Di 19. Feb 2019, 11:31
von BPanther
Müsste man testen. Die Bilder-Zufallsfunktion einfach nur neu aufrufen nach X Sekunden gefolgt von ShowPicture. Das Problem ist nämlich, ein repeat ... z.B. Bilderwechsel hier ... until PlayFile durchläuft die Schleife nur einmalig. Daher muß es anders laufen.

Re: SHOUTcast -Simpleplayer

Verfasst: Di 19. Feb 2019, 12:02
von BPanther
Bei dem ISS Teil ist nichts, was die Ausführung blockieren könnte, daher funktioniert das mit dem Timeout, PlayFile blockiert aber. Daher war das mit den Schleifen hier bisher erfolglos. Mit dem Posix-Fork habe ich eben auch mal kurz gespielt, aber da hatte ich ein ähnliches Problem - und zusätzlich konnte ich Neutrino selbst dann nicht mehr beenden, ist immer wieder ins LUA gespungen. Das muß sich wohl jemand anschauen, der da mit dem Posix besser klarkommt.

Re: SHOUTcast -Simpleplayer

Verfasst: Di 19. Feb 2019, 13:14
von fritz
Ich bekomme es auch nur so, wie du, hin dass das Bild einmal beim Senderwechsel ausgewählt wird und dass dieses Bild bis zum Senderwechsel als Hintergrund angezeigt wird, ich hätte dort gerne ein zeitgesteurtes wechseln aufs default-Bild und dass das default-Bild jedesmal im Auswahlmenü als Hintergrund angezeigt wird.
Ich habe mich dazu am "ARD-Radionet" vergriffen die ARD liefert zu jeden Sender dem Sie dort aufgenommen haben auch ein Bild mit.
Wenn ich z.B. den hr3 auswähle wird das Bild vom hr3 als Hintergrund genommen und solange ich hr3 höre wird das Bild angezeigt, beim wechseln auf hr2 dann das Bild von hr2.

Aussehen tut dass z.B. so ..
screenshot_ard_radionet_test.png
oder z.B. so
screenshot_ard_radionet_test2.png
Mir gefällt da auch nicht dass das Bild auf die volle Bildschirmgrösse aufgeblasen wird (bei SD-Bildern unschön, bei HD-Bildern o.k.) und wie bei dir ist kein Bildwechsel ohne Umschalten (Senderwechsel) möglich.

Es fehlt mir noch dass saubere automatische löschen des Bildes beim Senderwechsel oder beim beenden des Plugins aus dem /tmp, ich habe aktuell hardcore einfach das blinde löschen jedes "jpg" oder "png" dort eingebaut damit der /tmp nicht voll gemüllt wird.

ps.: habe den Beitrag etwas überarbeitet damit klar wird was ich meine ;)

Re: SHOUTcast -Simpleplayer

Verfasst: Di 19. Feb 2019, 15:29
von udog
Gefällt mir ausgesprochen gut fritz.... :thumbs:
jetzt will ich niemanden ärgern aber das ist/wäre ja toll :mrgreen:

Zeigen Sie den Song-Titel und das Cover mit den Metadaten von SHOUTCast an
streamUrl = 'http://198.100.125.242:80/7.html

https://translate.googleusercontent.com ... gTJWtx-CZg

Re: SHOUTcast -Simpleplayer

Verfasst: Di 19. Feb 2019, 17:52
von flk
Evtl. geht das so mit posix.fork()
ich habe den Code direkt oben unter 'local json = require "json"' eingefügt

Es wird im Hintergrund minütlich change_picture() ausgeführt und schreibt auch brav ins Log.

Probleme mit dem Ausschalten hatte ich beim Test nicht

Code: Alles auswählen

local posix = require "posix"
local pid = posix.fork()

if pid == 0 then 
  -- Kindprozess
  tick = 0
  time = 0
  running = true

  function sleep(n)
    os.execute("sleep " .. tonumber(n))
  end

  function change_picture()
    print("Code zum Bild wechseln")
  end

  function timer()
    tick = tick+1
    if tick == 60 then
      time = time+1
      tick = 0
    end
    if tick == 15 then
      change_picture()
    end
    sleep(1)
  end

  running = true
  while running do
    timer()
  end
end

-- restliches Programm

Re: SHOUTcast -Simpleplayer

Verfasst: Di 19. Feb 2019, 18:32
von fritz
Ich befürchte dass wird nicht ausreichen, den ich glaube dass das anzeigen des "alten" Bildes erst gestoppt werden muss und dann das "neue" wieder mit vplay:ShowPicture ("...") ecta. gestartet werden, ohne stoppen der Anzeige und neu starten denke ich wird es wohl nicht gehen.