SHOUTcast -Simpleplayer

flk
Developer
Developer
Beiträge: 73
Registriert: Sa 12. Jan 2013, 10:19
Hat sich bedankt: 3 Mal
Danksagung erhalten: 5 Mal

Re: SHOUTcast -Simpleplayer

#61

Beitrag von flk »

Das müsste man doch hier erledigen können ... also statt dem print Befehl. Den hatte ich nur zum Testen drin

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

end
Benutzeravatar
BPanther
Administrator
Administrator
Beiträge: 13405
Registriert: Do 11. Jan 2007, 00:06
Wohnort: Berlin
Hat sich bedankt: 659 Mal
Danksagung erhalten: 1364 Mal
Kontaktdaten:

Re: SHOUTcast -Simpleplayer

#62

Beitrag von BPanther »

Stop war bei meinen Tests nicht nötig, läuft einfach durch. Aber kann sicherlich nicht schaden, da ich nicht weiß, ob es vielleicht den RAM dann zumüllt wenn das nicht vorher gestoppt wird.
MfG BPanther
KEIN SUPPORT PER PN -> Bitte das Forum nutzen und das Wiki lesen.


Bild Bild
Thx udog für das Bild.
TV: Sony Bravia KDL-46HX755
Boxen mit NMP und Unicable2 (Jess):
SH4: 7x UFS910 (1W, 128MB), 1x UFS910 (14W, 64MB), 1x UFS912, 2x UFS913, 1x AV700, 1x AV7000, 1x AV7500 (DVB-S/C/T), 1x Edision Argus Pingulux, 1x Vizyon820HD
MIPS: 1x VU+DUO, 1x VU+DUO2, 1x DM8000, 1x DM800
ARM: 3x AX 4K HD51 (DVB-S/SX/C/T/T2), 1x VU+Solo4K (DVB-S/SX (FBC)/C/T/T2 (DUAL)), 1x VU+Duo4K (DVB-S/SX (FBC)/C (FBC)), 3x E4HD 4K Ultra (DVB-S/SX/C/T/T2)
ARM: 1x VU+Duo4KSE (DVB-S/SX (FBC)/C (FBC)), 1x VU+Ultimo4K (DVB-S/SX (FBC)/C (DUAL)), 1x VU+Uno4KSE (DVB-S/SX (FBC)/C (FBC)), 2x VU+Zero4K (DVB-S/SX)
Benutzeravatar
fritz
Moderator
Moderator
Beiträge: 1336
Registriert: Mi 13. Jul 2011, 23:15
Wohnort: Bundesdorf
Hat sich bedankt: 72 Mal
Danksagung erhalten: 215 Mal

Re: SHOUTcast -Simpleplayer

#63

Beitrag von fritz »

Testversion 3 des ARD-radionet-Players
ard_radionet_test2.zip
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Folgende Benutzer bedankten sich beim Autor fritz für den Beitrag:
thomas (Mi 20. Feb 2019, 16:50)
Bewertung: 7.69%
Axas E4HD, AX HD 51, wwio Bre2ze 4K & Zgemma H7C
astra 19,2°E & DVB-T2 & DVB-C (Vodafone West)
Benutzeravatar
BPanther
Administrator
Administrator
Beiträge: 13405
Registriert: Do 11. Jan 2007, 00:06
Wohnort: Berlin
Hat sich bedankt: 659 Mal
Danksagung erhalten: 1364 Mal
Kontaktdaten:

Re: SHOUTcast -Simpleplayer

#64

Beitrag von BPanther »

Wie Du es wolltest... ;)
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Folgende Benutzer bedankten sich beim Autor BPanther für den Beitrag:
thomas (Mi 20. Feb 2019, 16:50)
Bewertung: 7.69%
MfG BPanther
KEIN SUPPORT PER PN -> Bitte das Forum nutzen und das Wiki lesen.


Bild Bild
Thx udog für das Bild.
TV: Sony Bravia KDL-46HX755
Boxen mit NMP und Unicable2 (Jess):
SH4: 7x UFS910 (1W, 128MB), 1x UFS910 (14W, 64MB), 1x UFS912, 2x UFS913, 1x AV700, 1x AV7000, 1x AV7500 (DVB-S/C/T), 1x Edision Argus Pingulux, 1x Vizyon820HD
MIPS: 1x VU+DUO, 1x VU+DUO2, 1x DM8000, 1x DM800
ARM: 3x AX 4K HD51 (DVB-S/SX/C/T/T2), 1x VU+Solo4K (DVB-S/SX (FBC)/C/T/T2 (DUAL)), 1x VU+Duo4K (DVB-S/SX (FBC)/C (FBC)), 3x E4HD 4K Ultra (DVB-S/SX/C/T/T2)
ARM: 1x VU+Duo4KSE (DVB-S/SX (FBC)/C (FBC)), 1x VU+Ultimo4K (DVB-S/SX (FBC)/C (DUAL)), 1x VU+Uno4KSE (DVB-S/SX (FBC)/C (FBC)), 2x VU+Zero4K (DVB-S/SX)
flk
Developer
Developer
Beiträge: 73
Registriert: Sa 12. Jan 2013, 10:19
Hat sich bedankt: 3 Mal
Danksagung erhalten: 5 Mal

Re: SHOUTcast -Simpleplayer

#65

Beitrag von flk »

Ich habe die Sache mit dem posix.fork() noch ein bisschen weiter verfolgt. Meine Erkenntnis ist, dass wir da nichts bei der Verwendung falsch gemacht haben, sondern, dass es so schlicht nicht funktionieren kann. Das Problem besteht darin, dass mit posix.fork ein komplett neuer Prozess gestartet wird. Dieser hat dann keinen Zugriff auf die Ressourcen des ursprünglichen lua Scripts. Das läuft solange einwandfrei, wie nur auf Systemressourcen zugegriffen wird. Man kann z.B. problemlos print in die Konsole absetzen oder z.B flag files anlegen lassen. Sobald man aber vom Kindprozess aus auf Neutrino Api Funktionen zugreifen will, bekommt man einen Ressource busy Fehler.

Man müsste das also von Neutrino aus lösen. Wenn man eine allgemeingültige Lösung will eine Threading Funktion für die Lua Api bereitstellen, die intern dann openthreads nutzt oder ansonsten eine Anbindung schaffen, damit man von Lua aus den Bildbetrachter einbinden kann. Klingt beides nach schwierigen Aufgaben :(
Folgende Benutzer bedankten sich beim Autor flk für den Beitrag:
udog (Do 21. Feb 2019, 15:16)
Bewertung: 7.69%
Benutzeravatar
udog
Moderator
Moderator
Beiträge: 1634
Registriert: Mi 6. Jul 2011, 11:18
Wohnort: Thüringer (Altenburger Land)
Hat sich bedankt: 313 Mal
Danksagung erhalten: 198 Mal
Kontaktdaten:

Re: SHOUTcast -Simpleplayer

#66

Beitrag von udog »

Hallo in die Runde
Ich hatte mir nochmal Gedanken gemacht wegen dem Picture Viewer während der Shoutcast wiedergabe :mrgreen:
Hatte doch noch das Lua Bootlogowechselplugin angeschaut damit funktioniert das ganze zumindest händig (ohne Diashow)
Vorraussetzung ist man legt das auf die rote Taste.
-man braucht Bilder die in einem Ordner zusammen mit einer xml Datei auf einen Server kommen.... bei mir heißt die boot.xml (nur einfache testbilder mal genutzt )
mit folgenden Inhalt
zb. so
boot.xml

Code: Alles auswählen

<?xml version="1.0" encoding="UTF-8"?>
<bild>Bild1.jpg</bild>
<bild>Bild2.jpg</bild>
<bild>Bild3.jpg</bild>
<bild>Bild4.jpg</bild>
<bild>Bild5.jpg</bild>
<bild>Bild6.jpg</bild>
<bild>Bild7.jpg</bild>
<bild>Bild8.jpg</bild>
<bild>Bild9.jpg</bild>
die komplette Lua sieht so aus, kann aber noch gekürzt werden da wir ja einiges nicht brauchen.

Code: Alles auswählen

--logo LUA Plugin.
--udog
--2014

--Objekte
function init()
	server = 'http://Udogxxxxxxxx/xxxx/mein Ordner/';  --hier Sever anpassen
	xmldatei = 'boot.xml'; --name der xml anpassen
	pictures = {};
	maxPicture = 0;
	pictureNumber = 0;
	n = neutrino();
end

-- Xml mit Bildernamen auslesen und Array speichern.
function getPictures()
	local fname = "/tmp/tmp_pictures.xml";

	os.execute("wget -q -O " .. fname .. " '" .. server .. xmldatei .. "'" );

	local fp = io.open(fname, "r")
	if fp == nil then
		print("Error opening file '" .. fname .. "'.")
		os.exit(1)
	else
		local s = fp:read("*a")
		fp:close()

		i = 1;

		for picture in string.gmatch(s, "<bild>(.-)</bild>") do
			pictures[i] = picture;
			i = i + 1;
		end

		maxPicture = i - 1;
		pictureNumber = 1;

		if pictures[1] ~= nil then
			getPicture();
		end

	end

end

--herunterladen des Bildes
function getPicture()
	local fname = "/tmp/tmp_bootpicture.jpg"
	os.execute("wget -q -U Mozilla -O " .. fname .. " '" .. server .. pictures[pictureNumber] .. "'");
	showPicture();
end

--Anzeigen der Bilder
function showPicture()
	oldPictureNumber = pictureNumber;

	local spacer = 8;
	local x  = 180;
	local y  = 70;
	local dx = 900;
	local dy = 590;

	w = cwindow.new{x=x, y=y, dx=dx, dy=dy, title="Picture Viewer", btnRed="Zurück", btnGreen="Vor", btnYellow="Diashow"};
	w:paint();

	n:DisplayImage("/tmp/tmp_bootpicture.jpg", 220, 130, 800, 450)

	neutrinoExec();
	CloseNeutrino()

	if oldPictureNumber ~= pictureNumber then
		getPicture();
	end

end

--Fenster anzeigen und auf Tasteneingaben reagieren
function neutrinoExec()
	repeat
		msg, data = n:GetInput(500)
		-- Taste Rot zeigt das vorherige Bild an
		if (msg == RC['left'] or msg == RC['page_left']) then
			if pictureNumber == 1 then
				pictureNumber = maxPicture
			else
				pictureNumber = pictureNumber - 1;
			end
			msg = RC['home'];
		-- Taste Grün zeigt den Text wieder an
		elseif (msg == RC['right'] or msg == RC['page_right']) then
			if pictureNumber == maxPicture then
				pictureNumber = 1;
			else
				pictureNumber = pictureNumber + 1;
			end
			msg = RC['home'];
		-- Taste Gelb speichert das Bootlogo
		elseif (msg == RC['yellow']) then
			getBootlogo(pictureNumber);
		end
	-- Taste Exit oder Menü beendet das Fenster
	until msg == RC['home'] or msg == RC['setup'];
end

--Fenster schließen
function CloseNeutrino()
	w = nil
	collectgarbage();
end

--[[
MAIN
]]
init();
getPictures();
os.execute("rm /tmp/tmp_boot*.*");
wer sich auskennt könnte den Rahmen noch schmaler machen und die Diashow integrieren.
Die Adresse der Bilddateien kann vielleicht auch ein Stick an der Box oder ein dafür gemountetes Verzeichniss sein.
soll nur mal zum testen sein...siehe video


Videotest

Bildwechsler.rar
hier darf gebastelt werden 8)
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Benutzeravatar
BPanther
Administrator
Administrator
Beiträge: 13405
Registriert: Do 11. Jan 2007, 00:06
Wohnort: Berlin
Hat sich bedankt: 659 Mal
Danksagung erhalten: 1364 Mal
Kontaktdaten:

Re: SHOUTcast -Simpleplayer

#67

Beitrag von BPanther »

Vergiss dabei nicht, daß es nicht um den wechsel ansich geht, den habe ich ja eingebaut gehabt. Es geht ja darum, daß mehrere unterschiedliche Dinge gleichzeitig abgearbeitet werden sollen. Der Logowechsler macht ja nur im Grunde die eine Sache. Logo ändern, dann auf Tastendruck warten, also in Reihenfolge. In dem Moment wenn was abgespielt wird (Inet-Radio), wird das lua an der Stelle angehalten und gewartet, bis das abspielen wieder angehalten wird, die Kontrolle hat dann der Player übernommen. Erst wenn das abspielen gestoppt wird und der Player somit beendet wird, wird das lua weiter abgearbeitet.
MfG BPanther
KEIN SUPPORT PER PN -> Bitte das Forum nutzen und das Wiki lesen.


Bild Bild
Thx udog für das Bild.
TV: Sony Bravia KDL-46HX755
Boxen mit NMP und Unicable2 (Jess):
SH4: 7x UFS910 (1W, 128MB), 1x UFS910 (14W, 64MB), 1x UFS912, 2x UFS913, 1x AV700, 1x AV7000, 1x AV7500 (DVB-S/C/T), 1x Edision Argus Pingulux, 1x Vizyon820HD
MIPS: 1x VU+DUO, 1x VU+DUO2, 1x DM8000, 1x DM800
ARM: 3x AX 4K HD51 (DVB-S/SX/C/T/T2), 1x VU+Solo4K (DVB-S/SX (FBC)/C/T/T2 (DUAL)), 1x VU+Duo4K (DVB-S/SX (FBC)/C (FBC)), 3x E4HD 4K Ultra (DVB-S/SX/C/T/T2)
ARM: 1x VU+Duo4KSE (DVB-S/SX (FBC)/C (FBC)), 1x VU+Ultimo4K (DVB-S/SX (FBC)/C (DUAL)), 1x VU+Uno4KSE (DVB-S/SX (FBC)/C (FBC)), 2x VU+Zero4K (DVB-S/SX)
Antworten

Zurück zu „AX 4K HD51 - Allgemeines“