Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! Nicht nur ubuntuusers hat nen neuen Look, auch Lastfm hat seine Beta-Version plötzlich und überraschend zum Standard erhoben - mit nicht unerheblichen Folgen für Last-Exit.... 😢 Die Senderauswahl spielt einigermaßen verrückt! Last-Exit scheint momentan immer auf den letzten eingestellten Sender zurückzugreifen, wenn ich versuche, einen der abgespeicherten Sender aus dem Dropdownmenü aufzurufen - zumindest als nicht-zahlender Benutzer habe ich echte Probleme, auf die gewohnten Einstellungen zurückzugreifen... Wie geht es anderen mit Last-Exit und dem neuen Lastfm? Es war ja zunächst ähnlich laahhhmmm wie inyoka 😀 ; ich denke, die lastfm-Umstellung wäre nun wirklich nicht nötig gewesen...
(Interessant in diesem Zusammenhang: Vagalume lässt sich überhaupt nicht aus der Ruhe bringen; es greift weiterhin auch für Nicht-Abonnenten auf eigene und andere Playlists zu, "ignoriert" dabei auch die neuesten hochgesetzten Limits für Playlists etc pp - vielleicht finde ich ja raus, wie’s dort funktioniert, dann könnte man das auch vielleicht auch für Last-Exit einbauen 😉 ) so long
hank
|
Grek336
Anmeldungsdatum: 28. November 2007
Beiträge: 408
|
Ich habe "Anderer Sender ...", "Musik, klingt wie" gewählt und Coldplay eingegeben, dann den Suchen Button gedrückt. Last-Exit hat mir Coldplay gespielt.
Dann wieder Anderer Sender ... (da gab es Probleme weil er weiterhin Anderer Sender ... angezeigt hat, darum erste einen anderen Künster aus der Dropdown-Liste gewählt und dann wieder Anderer Sender ...), Musik, klingt wie gewählt und Whitney Houston eingegeben. Last-Exit hat Celine Dion gespielt. Wenn ich die bereits vorgeschlagenen Künstler aus der Dropdown-Liste wähle schaltet er allerdings nicht um.
Wenn ich vorher allerdings auf Play/Stop klicke und dann einen neuen Künstler wähle funktioniert es schon. Sender eines Nachbarn und Sender mit Empfehlung habe ich bisher nicht benutzt. Die anderen beiden Einträge sind bei mir ausgegraut. Grüße aus Berlin PS: Wegen der neuen Festplatte und jetzt Inyoka bin ich nicht dazu gekommen weiter an Last-Exit (deinen Patch testen) und Vagalume (wollte auch die Patches testen) weiterzuarbeiten. Aber demnächst. ☺
|
Axel
Anmeldungsdatum: 23. August 2006
Beiträge: 541
|
Solang man noch den alten Player noch nutzen kann seh ich das recht harmlos an 😀 ich krieg noch nichtmal nen neues Update angeboten ☺ naja wie gesagt wenn ich irgendwie helfen kann sagt bescheid... mfg Axel
|
Axel
Anmeldungsdatum: 23. August 2006
Beiträge: 541
|
Solang man noch den alten Player noch nutzen kann seh ich das recht harmlos an 😀 ich krieg noch nichtmal nen neues Update angeboten ☺ naja wie gesagt wenn ich irgendwie helfen kann sagt bescheid... mfg Axel
|
Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! @Axel Es geht nicht um ein Update des Last-fm-(oder des Last-Exit-)Players, sondern darum, dass die Lastfm-Seite komplett neu aufgesetzt worden ist, und sich bei dem Zugriff zumindest auf die Playlists was geändert hat:
über externe Player geht's aber anscheinend auch noch so;
nur "zickt" Last-Exit bei einigen Sachen jetzt etwas rum - s.o,; ich kann z.B. auch keine Tag-Radios mehr anwählen; wenn auch die eigene Playlist nach etwas Hin und Her zumindest für den eingeloggten Benutzer (auch wenn er nicht zahlt) greifbar bleibt. so long hank
|
Axel
Anmeldungsdatum: 23. August 2006
Beiträge: 541
|
😉 weißt doch meiste im missverstehen 😛 hmm ja das mit dem Tag-Radio könnte den einen Fehler erklären, den ich im 64Thread geposted habe... ansonsten ist mir aber noch nichts aufgefallen... werde mich auch mal ans Testen machen... mfg Axel PS was verstehst du unter "playlists" Musik wie [Interpret] kann ich mir z.b. auf der LastFm seite anhören!?
PS2: also mein (kurzer) Test: geht alles in Last-Exit, bis auf nach Tag Radios suchen, schon eingespeicherte Tag Radios laufen aber...
|
Grek336
Anmeldungsdatum: 28. November 2007
Beiträge: 408
|
Mal etwas anderes. Weil Last-Exit ja häufiger hängen bleibt habe ich mir folgendes überlegt: Da Last-Exit eine Temporäre-Datei /tmp/lastexit-Benutzername verwendet könnte man doch durch vergleichen des Änderungsdatums der Datei mit der aktuellen Systemzeit herausbekommen ob Last-Exit noch aufnimmt. Wenn die Zeitdiffernz zu groß ist könnte man Last-Exit beenden und neu starten. Dazu währe es allerdings notwendig zwei Dinge zu wissen: 1) Wie übergebe ich Last-Exit per Kommandozeilen-Parameter die Adresse (z.B. lastfm://artist/All Saints/similarartists) und 2) wo speichert Last-Exit seine Konfiguration ab. Schließlich muss es sich ja seine Einstellungen und die Drop-Down-Liste (Momentan läuft:) behalten. Theoretisch beherrscht Last-Exit auch den D-Bus. Da ich davon aber keine Ahnung habe wüsste ich nicht wie ich Last-Exit darüber Fernsteuern könnte. Allerdings habe ich von Programmierung mittlerweile wenig Ahnung. ☹ In Frage kommen würde ein Shell-Script oder ein Python-Programm (natürlich ginge jede geeignete Programmiersprache). Ich persönlich würde vermuten das es mit Python am einfachsten währe ein kleines Programm dafür zu schreiben. Es wird kein Compiler benötigt und man kann den Quellcode schnell mit einem Editor anpassen. Wo finde ich eigentlich die Seite des Entwicklers von Last-Exit bzw. wo gibt es ein Forum in dem man dumme 😉 Fragen stellen kann? Grüße aus Berlin
|
Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! @ grek336
1) Wie übergebe ich Last-Exit per Kommandozeilen-Parameter die Adresse (z.B. lastfm://artist/All Saints/similarartists) und
weiß ich leider auch nicht 😐 2) wo speichert Last-Exit seine Konfiguration ab. Schließlich muss es sich ja seine Einstellungen und die Drop-Down-Liste (Momentan läuft:) behalten.
Die gespeicherten Sender findest du in ~/.config/Last-Exit/recent.xml; Einstellungen in ~/.gconf/lastexit/%gconf.xml; da wird - wie ich gerade mit Schrecken feststellen muss- das Password im Klartext gespeichert!!! Großes NO-NO! 👿
Wo finde ich eigentlich die Seite des Entwicklers von Last-Exit bzw. wo gibt es ein Forum in dem man dumme 😉 Fragen stellen kann?
Die Homepage von Last-Exit ist im Wiki unten verlinkt, und da findet man auch Weiteres; stell' denen aber bitte keine Fragen, die die patches betreffen; die mögen die nicht so sonderlich... Wg. eines Skriptes: Frag doch mal johnnyff, der scheint da ganz firm zu sein... so long hank
|
Grek336
Anmeldungsdatum: 28. November 2007
Beiträge: 408
|
Ein last-exit "lastfm://artist/All Saints/similarartists" hat funktioniert Da meine ~/.config/Last-Exit/recent.xml so aussieht:
<?xml version="1.0"?>
<recent-files>
<station>
<name> Whitney Houston’s Similar Artists</name>
<path>lastfm://artist/Whitney Houston/similarartists</path>
</station>
<station>
<name> Victoria Beckham’s Similar Artists</name>
<path>lastfm://artist/Victoria Beckham/similarartists</path>
</station>
<station>
<name> Mutya Buena’s Similar Artists</name>
<path>lastfm://artist/Mutya Buena/similarartists</path>
</station>
<station>
<name> Coldplay’s Similar Artists</name>
<path>lastfm://artist/Coldplay/similarartists</path>
</station>
</recent-files> müsste es reichen wenn man aus dem ersten Eintrag <path>...</path> die dazwischen stehende URL extrahiert und an last-exit als ersten Parameter übergibt. Das stimmt übrigens nicht ganz: 🤓 Einstellungen in ~/.gconf/lastexit/%gconf.xml
richtig ist ~.gconf/apps/lastexit/%gconf.xml Liegt es an der neuen Foren-Software oder gibt es johnnyff nicht mehr?) :roll
Doch es gibt ihn er heißt nur johnyff Grüße aus Berlin
|
Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! @Axel - sorry, wollte dich nicht übergehen PS was verstehst du unter „playlists“ Musik wie [Interpret] kann ich mir z.b. auf der LastFm seite anhören!?
Playlists kannst du dir auf der Lastfm-Seite mit deinen Lieblingsliedern (was auch immer) erstellen, und dann entweder dort auf der site im Flash-Player abspielen (aber wie gesagt, dort nur als zahlender Kunde), oder auch mit Last-Exit und co... "Musik wie..." geht natürlich auch, nur kannst du mit der eigenen Playlist etwas genauer beeinflussen, was du hörst 😉 @ Grek336 richtig ist ~.gconf/apps/lastexit/%gconf.xml
Ooops, was ein Lapsus...
Liegt es an der neuen Foren-Software oder gibt es johnnyff nicht mehr? :roll
Vorhin war er noch aktiv; schau hier mal; aber ich sehe gerade: ich hab’ ihm ein n zuviel verpasst... so long hank
|
Grek336
Anmeldungsdatum: 28. November 2007
Beiträge: 408
|
Da es mich immer gestört hat das Last-Exit immer wieder hängen geblieben ist habe ich mich darangesetzt und versucht ein Programm zu schreiben das feststellt ob Last-Exit noch aufnimmt und falls nicht Last-Exit beendet und wieder neue startet. Nach dem ich mir im Forum mit meiner Frage einen Rüffel 😉 geholt habe ist jetzt meine erste funktionsfähige Version fertig. Ich warne alle Programmierer vor meinen Code aber ich stelle ihn trotzdem hier auf die Seite. Grundsätzlich müsste das Programm auch für Vagalume anwendbar sein. Nur bei TheLastRipper funktioniert es nicht das es die temporäre Datei überwacht die das Programme anlegt. 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112 | #!/usr/bin/python
# -*- coding: utf-8 -*-
import popen2
import subprocess
import os
import time
DateiNichtGefunden = 0
WarteZeit = 60
time.sleep(WarteZeit)
#LastExit = popen2.Popen3("last-exit lastfm://artist/Dannii Minogue/similarartists")
LastExit = subprocess.Popen(["last-exit","lastfm://artist/Dannii Minogue/similarartists"])
time.sleep(WarteZeit)
LastExitPid=LastExit.pid
while True:
time.sleep(WarteZeit)
LastExitRueckgabewert = LastExit.poll()
if LastExitRueckgabewert != None:
if LastExitRueckgabewert == 0:
break
else:
time.sleep(WarteZeit)
LastExit = subprocess.Popen(["last-exit","lastfm://artist/Dannii Minogue/similarartists"])
time.sleep(WarteZeit)
LastExitPid=LastExit.pid
DateiNichtGefunden = 0
continue
else:
try:
DateiZeit = os.path.getatime("/tmp/lastexit-michael")
except OSError:
if DateiNichtGefunden > 0 :
#Kill = popen2.Popen3("/bin/kill -TERM "+str(LastExit.pid))
Kill = subprocess.Popen(["/bin/kill","-TERM",str(LastExitPid)])
time.sleep(WarteZeit/10)
LastExitRueckgabewert = LastExit.poll()
KillRueckgabewert = Kill.poll()
if KillRueckgabewert != None :
if KillRueckgabewert == 0:
time.sleep(WarteZeit/10)
LastExit = subprocess.Popen(["last-exit","lastfm://artist/Dannii Minogue/similarartists"])
time.sleep(WarteZeit)
LastExitPid=LastExit.pid
DateiNichtGefunden = 0
continue
else:
Kill = subprocess.Popen(["/bin/kill","-KILL",str(LastExit.pid)])
time.sleep(WarteZeit/10)
LastExitRueckgabewert = LastExit.poll()
KillRueckgabewert = Kill.poll()
if KillRueckgabewert != None :
if KillRueckgabewert == 0:
time.sleep(WarteZeit/10)
LastExit = subprocess.Popen(["last-exit","lastfm://artist/Dannii Minogue/similarartists"])
time.sleep(WarteZeit)
LastExitPid=LastExit.pid
DateiNichtGefunden = 0
continue
else:
print("Last-Exit konnte nicht beendet werden.")
break
else:
print("kill -KILL reagiert nicht")
break
else:
print("kill -TERM reagiert nicht")
break
else:
DateiNichtGefunden = DateiNichtGefunden+1
continue
else:
SystemZeit = time.time()
DateiNichtGefunden = 0
ZeitDifferenz = DateiZeit-SystemZeit
if ZeitDifferenz < -WarteZeit :
Kill = subprocess.Popen(["/bin/kill","-TERM",str(LastExit.pid)])
time.sleep(WarteZeit/10)
LastExitRueckgabewert = LastExit.poll()
KillRueckgabewert = Kill.poll()
if KillRueckgabewert != None :
if KillRueckgabewert == 0:
time.sleep(WarteZeit/10)
LastExit = subprocess.Popen(["last-exit","lastfm://artist/Dannii Minogue/similarartists"])
time.sleep(WarteZeit)
LastExitPid=LastExit.pid
DateiNichtGefunden = 0
continue
else:
Kill = subprocess.Popen(["/bin/kill","-KILL",str(LastExit.pid)])
time.sleep(WarteZeit/10)
LastExitRueckgabewert = LastExit.poll()
KillRueckgabewert = Kill.poll()
if KillRueckgabewert != None :
if KillRueckgabewert == 0:
time.sleep(WarteZeit/10)
LastExit = subprocess.Popen(["last-exit","lastfm://artist/Dannii Minogue/similarartists"])
time.sleep(WarteZeit)
LastExitPid=LastExit.pid
DateiNichtGefunden = 0
continue
else:
print("Last-Exit konnte nicht beendet werden.")
break
else:
print("kill -KILL reagiert nicht")
break
else:
print("kill -TERM reagiert nicht")
break
else:
continue
|
Grüße aus Berlin und alles Gute zum Neuen Jahr
|
Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! Das Skript ist ja 'ne gute Idee; ich hab in letzter Zeit auch Probleme mit Abbrüchen gehabt. Für Vagalume funktioniert das aber leider nicht richtig; der Player wird zwar gestartet, aber unabhängig von der Wiedergabe/Aufzeichnung wird er jede Minute neu gestartet... Das ist ja nicht so ganz im Sinne des Erfinders... Muss ich mir nochmal genauer anschauen, vielleicht hab' ich auch bei der Anpassung was übersehen. Für Last-Exit hab' ich es noch nicht ausprobiert, weil ich eigentlich nur noch Vagamule benutze (der id3-tags wegen). so long hank
|
Grek336
Anmeldungsdatum: 28. November 2007
Beiträge: 408
|
Hallo Heinrich Schwietering ☺ Bei mir läuft "die Krankheit" 😉 (das Programm) mit Last-Exit seit dem 1. Januar fast ununterbrochen und macht was es soll. Vagalume wollte ich schon lange ausprobieren. Mal sehen woran es liegt. Ich habe hier noch Gutsy und damit Vagalume 0.6 bzw Vagamule 0.6. Ich weiß nicht wie die neue Vagamule Version 0.7 die temporäre Datei handhabt. Bei mir kann ich mit einem geöffneten Nautilus-Fenster beobachten wie sich die beiden Dateien lastexit-michael und lastfm-michael verändern, insbesondere die Änderungszeiten. Hier ein Bildschirmfoto von /tmp: Ungültiges MakroDieses Makro ist nicht verfügbar Grüße aus Berlin
- Bilder
|
Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! Vagalume-0.7 mit dem multiple-usage-patch legt die Temporärdatei als /tmp/vagalume-"Lastfm-Benutzername" ab; das hab' ich aber im modifizierten Skript auch so angegeben. Das Skript würgt Vagalume nach 2 Minuten (genau genommen 1:58) ab; und starte dann neu... Werd's mal mit Last-Exit testen. so long hank EDIT: Selbes Problem mit Last-Exit; nach ca. 2 Minuten wird der Player gekillt uns startet dann neu... eventuell ein Problem, das unter gutsy nicht auftritt, aber für intrepid relevant ist? Ich könnte es nochmal auf hardy testen, gutsy hab' ich nicht mehr... Unter intrepid wird aber die Ansicht nicht mehr regelmäßig aktualisiert; das war früher tatsächlich anders; vielleicht kann das skript das so nicht mehr erkennen, und "vermutet" daher, dass sich nichts geändert hat, also nicht mehr aufgezeichnet wird?
|
Grek336
Anmeldungsdatum: 28. November 2007
Beiträge: 408
|
Hallo Heinrich Schwietering. Ich habe das Programm etwas modifiziert damit es nicht auf last-exit festgelegt ist und teste es gerade mit meinem modifiziertem Vagalume 0.6. In der letzten halben Stunde scheint es gut funktioniert zu haben. Ich werde mal sehen ob ich mir in meiner Intrepid VirtualBox VM ein Vagamule 0.7 bau bzw. ein fertiges herunterlade. Die Modifikation meines Programms will drei Parameter plus einen optionalen haben: Name des Programms das aufgerufen werden soll (also "last-exit" oder "vagalume" oder irgend was anderes) Die LastFMUrl (also z.B. "lastfm://artist/Girls Aloud/similarartists") (wird als Parameter dem Programm aus 1 übergeben) Die zu überwachende Datei (also z.B. "/tmp/lastfm-michael") Den Überwachungsintervall in Sekunden (z.B "60") (ist optional 60 ist Vorgabe) (Werte kleiner 5 Sekunden werden nicht akzepiert)
Es kommt manchmal vor das last-fm nicht richtig funktioniert dann startet bei mir auch alle paar Minuten last-exit neu. Das ist schon mal 30 Minuten so gegangen. Siehe dir mal die Änderungszeiten der temporären Dateien an. Falls die immer wieder stehen bleiben, 0 Byte groß sind oder garnicht erst angelegt werden stimmt mit fast-fm etwas nicht oder der Aufruf von vagalume oder lastexit bzw. der URL-Parameter ist fehlerhaft. So: Viel Zeit ist vergangen und ich habe das Programm noch weiter umgeschrieben. Mal sehen was ich da für einen "Mist" 😉 zustande gebracht habe. Grüße aus Berlin PS: Debug ist leider im Programm fest verankert statt als Parameter übergeben zu werden.
- WatchDog.py (5.9 KiB)
- Download WatchDog.py
|