Redesign für Mediathekview 14.0.0
-
@mark sagte in Redesing für Mediathekview 14.0.0:
@thesasch sagte in Redesing für Mediathekview 14.0.0:
Hallo Mark, magst du mal “großen Speicherhunger” für uns definieren? Groß ist ja leider ein dehnbarer begriff. Aber auf einem aktuellen PC mit 32GB RAM ist 4GB nicht groß. Wenn man ein Laptop mit 2GB RAM hat, was schon etwas älter ist, dann wären 4GB nur mit auslagern von Speicher möglich.
Daher magst du uns mal eine Referenz geben, was du für groß und klein hältst?
Ja, gerne. Ich habe aus dem Systemmonitor von KDE folgende Information rausgeholt:
“The process java (with pid 8151) is using approximately 1001.8 MB of memory.
It is using 994.6 MB privately, and a further 26.1 MB that is, or could be, shared with other programs.
Dividing up the shared memory between all the processes sharing that memory we get a reduced shared memory usage of 7.1 MB. Adding that to the private usage, we get the above mentioned total memory footprint of 1001.8 MB.”
Java läuft ohne Mediathekview nicht, also wird der Speicher nur von Mediathekview verbraucht.Vielen Dank fürs nachsehen. Das alleine die Filmliste im Rohformat schon 128MB hat ist dir aber bewusst. D.h. man könnte es jetzt so entwickeln das diese Liste nur ein einziges Mal im Speicher existiert und bei jedem Zugriff alle Informationen aus dieser Liste genommen werden. D.h. jedes mal wenn du was suchst oder scrollen willst muss im Speicher durch diese 128MB durchgehen. Das würde ein ziemlich langsames Oberflächenverhalten erzeugen und du würdest dich darüber beschweren das die Oberfläche nicht schnell genug reagiert.
Jetzt ist es so das die Filmliste und die restliche Funktionalität durchaus nicht unkomplex sind und dafür das du ein einigermaßen ansprechendes Oberflächenverhalten hast, wird hier einiges in anderen Formaten vorgehalten. Das braucht aber seinen Speicher. Und daher finde ich 1 GB für eine Software die dir 50.000 Objekte anzeigt nicht unbedingt viel.
Zum Vergleich wenn ich mein Lightroom öffne ohne irgendwas zu machen dann sind bei 25.000 Objekten in der Übersicht auch 500MB verbraucht, wobei hier immer die Bilder nachgeladen werden müssen die gerade nicht sichtbar sind. D.h. jedes mal wenn ich das scrollen anfange. Gut der Vergleich ist nicht ganz offensichtlich, aber beide Programme zeigen dir eine Liste an Objekten an. Das eine in Textform, das andere in Bildform. Und ich muss sagen das ich in MV jederzeit an jede Stelle in der Liste springen kann ohne das hier Daten nachgeladen werden müssen.
Fazit: Ich persönlich finde 1 GB durchaus berechtigt.
Viele Grüße
Sascha -
Beim (manuellen) Neuladen der Filmliste werden bisher zuerst alle Objekte der alten Filmliste im RAM vergessen und dann wird versucht, die neue Liste zu laden. Da in letzter Zeit immer wieder einmal keine neue Filmliste geladen werden konnte, fiel mir dieses Vorgehen negativ auf. Denn dadurch wird wieder die alte Filmliste geladen und alle Tabellen, die noch dazu gehören, werden neu angelegt.
Performanter wäre es in diesem Fall, die alte Filmliste erst dann zu vergessen, wenn die neue Filmliste schon auf der Festplatte angekommen ist und als aktueller als die alte erkannt wurde. -
(Ich habe das hier mal abgespltitet, da es im anderen Beitrag eher um das zukünftige Aussehen als um gewünschte Features gehen sollte.)
-
@thesasch sagte in Feature Sammlung MediathekView 14.0.0:
Fazit: Ich persönlich finde 1 GB durchaus berechtigt.
Jein. Ich bin kein Programmierer, aber ich würde durchaus hinterfragen, ob die ganze Liste immer im Speicher vorgehalten werden muss. Ich scrolle eigentlich nie durch die gesamte Liste, sondern suche eigentlich immer mit bestimmten Suchworten. Nun gibt es unter Linux und KDE mittlerweile solche Desktopsuchmaschinen, die quasi den ganzen Rechner verschlagworten und in einer Datenbank speichern. Zwischenzeitlich war das auch nicht so perfomant, aber mittlerweile geht es. Im idle-Zustand nimmt das Programm 10MB Speicher ein, wenn ich eine Suche starte und gleich Ergebnisse bekomme, dann sind es 30MB. Ich bin wie gesagt kein Programmierer, aber frage mich, ob das nicht auch für MediathekView möglich wäre, zu markieren welche Sender nicht im Speicher vorzuhalten sind. Es ist schon gut die Liste vollständig zu haben, aber es wäre gut, wenn zwischen einer vollen Liste und einer eingeschränkten Liste, die man selbst konfiguriert hin- und herschalten könnte.
-
@mark Man kann das ganze auch als Datenbank aufsetzen oder ggf. auf unnötige Informationen im Speicher anfangs verzichten. So müssen z.B. die URLs und die Beschreibung nicht im Speicher gehalten werden sondern nur ein Pointer in die Liste. Oder man lädt sich nur immer einen kleinen Teil und schmeißt ihn hinterher wieder weg. Früher - als Speicher knapp war - gab es Editoren, die immer nur 2kByte im Speicher hatten und den Rest auf der Diskette. Es gibt dadurch natürlich andere Einschränkungen, z.B. Verlangsamung beim Filtern und Suchen.
-
@menchensued sagte in Feature Sammlung MediathekView 14.0.0:
@mark Man kann das ganze auch als Datenbank
Das ist aktuell auch mein Plan. Eine lokale Datnebank in die die Filme geladen werden.
Bzgl. Geschwindigkeit kann man immer die aktuell angezeigten im Ram vorhalten + nochmal die gleiche Menge derer die quasi auf der nächsten Seite kommen in den Ram laden. Damit geht es schnell man hat aber nicht die gesamte Liste im RAM.Ganz Allgemein wollen wir in der zukunft dann auch auf Serverseite von der Liste als Datei weg hin zu einer (sehr wahrscheinlich REST) API. Bei dieser kann dann der Client neue Filme anfragen indem er das Datum der letzten aktualisierung mitsendet und sich als Update alle Änderungen seit dem Holt.
-
Ich habe es zwar schon mal gesagt (ich glaube jedoch nur Alex), aber ich mache es gerne nochmal:
Eine Web-API um auf alles zuzugreifen gibt es bereits. Mit MVW2 (die Server Komponente ist schon mehr oder weniger fertig) wäre es auch wesentlich mächtiger als die aktuelle und ihr könntet da nach allem Filtern wonach ihr jetzt auch tut und bald noch mehr (social features wie anzahl der Downloads, Bewertungen und wahrscheinlich auch Kommentare). “Gib mir alle neuen Beiträge seit dd.MM.YYYY” ist auch möglich.
Die Datenbank von MediathekViewWeb braucht mit der aktuellen Liste übrigens nicht mal 350 MB Speicher. Und da ist noch der Overhead mit dem Datenbank-Server dabei…
Was ich auch schon mal vorgeschlagen habe: einen “Web”-Schalter, sprich wie MVW für jede Query den Server befragen, das braucht dann - bis auf die Ergebnisse - gar kein RAM.
-
Falls realisierbar, würde ich erweiterte Möglichkeiten für die Erstellung von Downloads für sinnvoll halten. Ich bitte zu beachten, daß ich kein Programmierer bin, nur Anwender.
Im Moment habe ich regelmäßig die Situation, daß ich weiß, daß die Sendung X am Tag Y um die Uhrzeit T ausgestrahlt werden wird, auf dem Sender Z.
Wenn sich ein Download allein mit diesen Angaben erstellen ließe, nämlich
- Sender
- Datum
- Startzeit
- [optional?] Dauer oder Sendungsende,
also ohne die Pflicht zur Thema- oder Titel-Angabe oder einer irgendwo-Suche, ließen sich auf diese Weise Downloads für zukünftige Sendungen im voraus erstellen, die dann gefunden werden würden ganz unabhängig von ihrer Benennung durch den Sender (vorausgesetzt natürlich, daß die Sendung überhaupt in der Mediathek zugänglich gemacht worden ist).
Bei den Angaben zur Start- und Enduhrzeit bzw. Sendungslänge könnte die grundsätzliche oder individuelle Festlegung einer Abweichungstoleranz helfen, das automatisierte Finden der Sendung nicht daran scheitern zu lassen, daß die in den Mediatheken veröffentlichten Angaben vielleicht um wenige Minuten abweichen von den Angaben, die man in Fernsehzeitschriften etc. findet und zur Grundlage für seinen Downloadwunsch verwendet. Von MV nach diesen Angaben nicht gefundene Sendungen könnten in der Downloadliste entsprechend markiert werden.
Ich bin auf diese Idee gekommen, weil ich häufiger bestimmte Sendungen zunächst nicht finde, weil aufgrund der fehlenden Angaben durch die Sender meine entsprechenden Abfragebegriffe keine Treffer erzielen. Schaue ich mir die verfügbaren Sendungen des fraglichen Senders dann aber für den entsprechenden Zeitraum an, stelle ich fest, daß die Sendung durchaus online gestellt wurde, aber zum Teil mit nichtssagenden Sammelüberschriften.
Ließe sich ein solcher Download auch als Serie einrichten, z. B. erstelle einen Download für die Sendung, die montags bis freitags auf dem Sender X läuft von xx:xx - yy:yy Uhr, ließen sich damit auch Serien mit inkonsistenten Bezeichnungen abdecken.
-
@sina sagte in Feature Sammlung MediathekView 14.0.0:
Ich bin auf diese Idee gekommen, weil ich häufiger bestimmte Sendungen zunächst nicht finde, weil aufgrund der fehlenden Angaben durch die Sender meine entsprechenden Abfragebegriffe keine Treffer erzielen. Schaue ich mir die verfügbaren Sendungen des fraglichen Senders dann aber für den entsprechenden Zeitraum an, stelle ich fest, daß die Sendung durchaus online gestellt wurde, aber zum Teil mit nichtssagenden Sammelüberschriften.
Gute Idee. Das erging mir auch schon so.
-
Könnte man die MV-Benutzeroberfläche unter Windows dahingehend erweitern, dass der Maus-rechts-Klick überall funktioniert (also cut, paste & copy)? Teilweise gehts ja. Oder ist das zu aufwendig? Denkt ihr bitte mal nach darüber? Vielleicht erbarmt sich einer
Danke -
Was ich mir schon sehr lange wünsche, ist …
- Einträge sowohl in der »Downloads«-Liste, der »Filme«-Liste und der Abos-Liste mit der Backspace-Taste (Rückschritt-Taste) löschen zu können (meinetwegen auch mit Delete (Entf.), und zwar nicht nur einzelne, sondern auch mehrere ausgewählte Einträge.
In der »Filme«-Liste kann ich zwar mehrere Beiträge auswählen, sobald ich aber per Rechtsklick »als gesehen markieren« auswählen will, ist nur noch eine Zeile ausgewählt, was das alles sehr mühselig macht.
(macOS) -
@bonobo sagte: mit der Backspace-Taste (Rückschritt-Taste) löschen können (meinetwegen auch mit Delete (Entf.)
Das geht doch: “fn + backspace” = “del” (forward delete)
@bonobo sagte: und zwar nicht nur einzelne, sondern auch mehrere ausgewählte Einträge.
Da hilft die gedrückte cmd-Taste
@bonobo sagte: bald ich aber per Rechtsklick »als gesehen markieren« auswählen will, ist nur noch eine Zeile ausgewählt
Das geht über das Menü “Filme” statt über das Kontextmenü. Und schneller bist du sowieso mit “ctrl + G”.
@bonobo sagte: Einträge […] in der »Filme«-Liste […] löschen
Dort kannst du eh nichts löschen (das würde auch keinen Sinn machen), höchstens ausblenden.
-
@bonobo sagte in Feature Sammlung MediathekView 14.0.0:
In der »Filme«-Liste kann ich zwar mehrere Beiträge auswählen, sobald ich aber per Rechtsklick »als gesehen markieren« auswählen will, ist nur noch eine Zeile ausgewählt, was das alles sehr mühselig macht.
(macOS)Dieses nervende Verhalten gibts nicht nur auf dem Mac und ist eigentlich unüblich.
-
Speicherung von Suchen
Ich suche in der Filmliste hauptsächlich nach den immer gleichen Begriffen. Dennoch lohnt sich für mich die Anlage von Abonnements dafür nicht, weil ich von den vielen gefundenen Sendungen stets nur in Ausnahmen etwas herunterlade. Ein Beispiel für solch eine Suche ist der Suchbegriff
SWR Aktuell Baden-Württemberg
im Thema/Titel-Feld.Mittlerweile habe ich rund dreißig Suchbegriffe in einer Textdatei gespeichert, aus der heraus ich sie nach jeder Filmlistenaktualisierung einzeln in die entsprechenden MediathekView-Filter hineinkopiere.
Wenn eine zukünftige MV-Version durchgeführte Suchen speichern, und dabei außer dem eigentlichen Suchbegriff auch die anderen Filtereinstellungen wie Sender, Zeitraum usw. als Set mit erfassen könnte, wäre dies für mich ein großer Komfort- und Zeitgewinn. Wenn sich dann noch einzelne Einträge aus einer solchen Suchhistorie-Liste gezielt entfernt ließen, wäre dies eine für mich perfekte Umsetzung.
-
@sina sagte in Feature Sammlung MediathekView 14.0.0:
Wenn eine zukünftige MV-Version durchgeführte Suchen speichern, und dabei außer dem eigentlichen Suchbegriff auch die anderen Filtereinstellungen wie Sender, Zeitraum usw. als Set mit erfassen könnte, wäre dies für mich ein großer Komfort- und Zeitgewinn. Wenn sich dann noch einzelne Einträge aus einer solchen Suchhistorie-Liste gezielt entfernt ließen, wäre dies eine für mich perfekte Umsetzung.
Z. Zt. gibt es dafür bis zu fünf Filterprofile. Einen Wegfall dieser Begrenzung würde auch ich begrüßen.
-
Hallo,
ich würde mir wünschen, daß zum Download ein externes Programm beauftragt werden kann. Im einfachsten Falle die Ausgabe der URL in je eine Textdatei. Noch besser, wenn das Format einstellbar wäre. Mindestinhalt: URL und Name der Zieldatei.
Derzeit habe ich einen Raspberry Pi 2 am Laufen, mit dem ich mich remote verbinde. Da suche ich mir die Filme aus und starte die Downloads. Gespeichert wird auf dem Server. Vorteil: Ich kann meine Workstation unabhänging von MV ausschalten/rebooten/whatever. Nachteile: MV auf dem Pi ist recht zäh. Download ist langsam mit (mir) unbekanntem Grund.
Mit URLs in Textdateien könnte ich MV wieder auf der Workstation laufen lassen. Auf dem Server dann ein Cronjob, welcher die Downloads unabhängig von der Workstation erledigt.
-
@kosmo In den Einstellungen kannst Du Dir eigene Sets erstellen und dort Parameter an beliebige externe Programme übergeben. Schau mal in die Hilfe zu diesen Funktionen, vielleicht reicht Dir das ja aus. Aber bitte dran denken, dass die URL nicht immer zum .MP4-Format führt, manchmal muss .M3U8 gestreamt werden und das kann normalerweise ein Download Manager nicht.
-
@menchensued
Hallo,ich habe an den Einstellungen lange herumgespielt, aber die “Hilfsprogramme” werden bei mir nicht benutzt; z.B.:
<?xml version=“1.0” encoding=“UTF-8”?>
<Mediathek><Programmset>
<Name>echo</Name>
<Praefix>http</Praefix>
<Suffix>mp4,mp3,m4v,flv</Suffix>
<Zielpfad>/mnt/Videos05/MV/0-Test</Zielpfad>
<Zieldateiname>%q_%t_%T.mp4</Zieldateiname>
<Thema-anlegen>false</Thema-anlegen>
<Abspielen>false</Abspielen>
<Speichern>true</Speichern>
<Button>true</Button>
<Abo>true</Abo>
<Laenge>false</Laenge>
<Laenge-Feld>false</Laenge-Feld>
<max-Laenge>25</max-Laenge>
<max-Laenge-Feld>10</max-Laenge-Feld>
<Aufloesung>hd</Aufloesung>
<Infodatei>true</Infodatei>
<Spotlight>false</Spotlight>
<Untertitel>true</Untertitel>
</Programmset>
<Programm>
<Programmname>echo</Programmname>
<Programmpfad>/bin/echo</Programmpfad>
<Programmschalter> %f >> **</Programmschalter>
<Praefix>http://</Praefix>
<Suffix>mp4</Suffix>
<Restart>true</Restart>
<Downloadmanager>true</Downloadmanager>
</Programm></Mediathek>
EDIT:
Ich habe noch etwas mehr rumgespielt und mit der folgenden Einstellung eine mögliche Lösung gefunden. Nur daß MV die Aktion noch ausführen müsste<?xml version=“1.0” encoding=“UTF-8”?>
<Mediathek><Programmset>
<Name>echo</Name>
<Zielpfad>/mnt/Videos05/MV/0-Test</Zielpfad>
<Zieldateiname>%q_%t_%T</Zieldateiname>
<Thema-anlegen>false</Thema-anlegen>
<Abspielen>false</Abspielen>
<Speichern>true</Speichern>
<Button>true</Button>
<Abo>true</Abo>
<Laenge>false</Laenge>
<Laenge-Feld>false</Laenge-Feld>
<max-Laenge>25</max-Laenge>
<max-Laenge-Feld>10</max-Laenge-Feld>
<Aufloesung>hd</Aufloesung>
<Infodatei>true</Infodatei>
<Spotlight>false</Spotlight>
<Untertitel>true</Untertitel>
</Programmset>
<Programm>
<Programmname>echo</Programmname>
<Programmpfad>/bin/echo</Programmpfad>
<Programmschalter>‘%f’ > **.download</Programmschalter>
<Praefix>http://</Praefix>
<Suffix>mp4</Suffix>
<Restart>true</Restart>
<Downloadmanager>true</Downloadmanager>
</Programm></Mediathek>
In der Konsole ist dann das zu sehen:
…INPUTSTREAM: ‘https://pdodswr-a.akamaihd.net/swr/swr-fernsehen/eisenbahn-romantik/893528.xl.mp4’ > /mnt/Videos05/MV/0-Test/HD_Eisenbahn-Romantik_Reise_nach_Jerusalem.download
. ----------------------------------------
Download ist fertig und hat geklappt
Programm ist ein Downloadmanager
Programmset: echo
Ziel: /mnt/Videos05/MV/0-Test/HD_Eisenbahn-Romantik_Reise_nach_Jerusalem
Startzeit: 15:29:46
Endzeit: 15:29:46
Restarts: 0
Dauer: 0 s
Dauer: <1 Min.
URL: https://pdodswr-a.akamaihd.net/swr/swr-fernsehen/eisenbahn-romantik/893528.xl.mp4
Programmaufruf: /bin/echo ‘https://pdodswr-a.akamaihd.net/swr/swr-fernsehen/eisenbahn-romantik/893528.xl.mp4’ > /mnt/Videos05/MV/0-Test/HD_Eisenbahn-Romantik_Reise_nach_Jerusalem.download
Programmaufruf[]: /bin/echo<>‘https://pdodswr-a.akamaihd.net/swr/swr-fernsehen/eisenbahn-romantik/893528.xl.mp4’<>><>/mnt/Videos05/MV/0-Test/HD_Eisenbahn-Romantik_Reise_nach_Jerusalem.downloadDer fett markierte Befehl wäre richtig, wird nur leider nicht ausgeführt.
EDIT:
/bin/echo ‘https://pdodswr-a.akamaihd.net/swr/swr-fernsehen/eisenbahn-romantik/893528.xl.mp4’ > /mnt/Videos05/MV/0-Test/HD_Eisenbahn-Romantik_Reise_nach_Jerusalem.download -
Hallo @sina ,
vielleicht hilft Dir bezüglich Deines Posts bis zur Implementierung in MV die Alternative MTPlayer von @xaver weiter. MTPlayer hat die von Dir gewünschten Features. Das Programm ist zwar nochpre
, funktioniert bei mir unter Windows aber bis auf Kleinigkeiten schon recht gut. Nachtrag: Aufgrund seiner Abstammung, findet man sich darin auch sehr schnell zurecht.Hinweis zur aktuellen Version
MTPlayer_1pre__2017.11.03.zip
:
Meine AV-Software BitDefender schlägt beim Ausführen von den unten aufgelisteten Dateien an und verschiebt sie in die Quarantäne (Threat Defense - ohne besondere Angaben; BitDefender ist hier wirklich wenig auskunftsfreudig), beanstandet sie jedoch nicht, wenn ich sie von BitDefender scannen lasse (Die.exe
n zeigen offensichtlich aus Sicht von BitDefender ein merkwürdiges Verhalten beim Ausführen):MTPlayer__Start.exe
MTPlayer__ohne_Speicher__Start.exe
- (
MTPlayer__Portable.exe
habe ich nicht getestet)
Direktes Ausühren von
MTPlayer.jar
oder der.bat
-Dateien verläuft bei mir normal ohne Auffälligkeiten.Habe noch weitere Tests mit
MTPlayer__Start.exe
gemacht:- Auf
https://www.virustotal.com/de/
wird mit 67 Scannern nichts gefunden - Auf
https://virusscan.jotti.org/de
mit 18 Scannern gibt es eine Beanstandung:
ClamAV - 05.11.2017 - PUA.Win.Packer.Devcpp-1
Weitere Suche im Netz zu PUA.Win.Packer (d.h. Potentially Unwanted Application) deutet eher auf ein False-Positive hin. Muss jetzt sowieso erstmal nur die
.jar
oder eine.bat
für den Aufruf benutzen, da ich an den Einstellungen des BitDefender erstmal nichts verändern will.