mediathekview / MediathekView

Das Programm MediathekView durchsucht die Online-Mediatheken verschiedener Sender
https://mediathekview.de
GNU General Public License v3.0
870 stars 96 forks source link

"Filminformationen abrufen" bei Direktdownloads mit mehr Daten anreichern und ausgrauen für Playlists (MV 14.0.1 nightly) #737

Closed styroll closed 3 months ago

styroll commented 7 months ago

In MV 14.0.1 nightly kann man im Download-Dialog Metadaten zu Videos durch Drücken auf den Button "Filminformationen abrufen…" anzeigen lassen. Das ist ein nützliches Feature. Besten Dank.

grafik

(1) Da das dafür verwendete ffprobe (cool, dass MV im Pfad von Homebrew sucht) viele Daten liefert, schlage ich vor weitere nützliche Daten (Video: Codierung; neu auch Audio) auszulesen und wie folgt darzustellen:

Video: 960x540, 817 kBit/s, 50 fps, HEVC Audio: 48'000 Hz, 128 kBit/s, AAC

Die Angaben wären untereinander (für eine "Zeile" mehr hat es genügend Platz im Downloaddialog-Fenster). Klar, bei Audio ist bei Musikbeiträgen eigentlich nur die Bitrate relevant (da diese je nach Auflösung unterschiedlich sein kann, im Unterschied zu Abtastrate und der Kodierung), die anderen Grössen wären jedoch der Vollständigkeit halber sinnvoll.

Falls “avg” bei der Bildwiederholungsrate durchschnittlich (average) bedeutet: Diese Angabe finde ich nicht in der Ausgabe von ffprobe und wurde wohl durch MV ergänzt. In meinem Beispiel ist die Bildwiederholungsrate konstant, im Unterschied zur Bitrate. “avg” sollte sich also wohl eher darauf beziehen. Allerdings liefert ffprobe weder zur Bitrate noch zur Framerate eine Info, ob diese konstant oder variabel ist. Wenn meine Analyse korrekt ist, dann sollte die Angabe "avg" besser weggelassen werden.

Alle Angaben oben beziehen sich auf das Beispiel gemäss Screenshot bzw. auf diesen Forumsbeitrag, wo auch die Ausgabe von ffprobe ereichtlich ist.

(2) Der Button “Filminformationen abrufen” müsste bei Playlist-Files (SRF, ORF) ausgegraut sein, da es scheint, dass ffprobe dort nichts auslesen kann.

derreisende77 commented 7 months ago

Nun, ich rufe var fr = stream.getAvgFrameRate().intValue() aus der verwendeten Bibliothek auf. Gemäß docu liefert es eine average frame rate zurück also gebe ich auch (avg) als hinweis aus. Wie die lib das intern berechnet habe ich nicht geprüft aber der dev wird sich bei der benennung etwas gedacht haben. Aber wenn es so sehr stört kann ich den text gerne entfernen. Die anderen Infos kann ich wohl ergänzen, muss jedoch prüfen was alles über die lib zurück gegeben wird.

styroll commented 7 months ago

@derreisende77 sagte: Nun, ich rufe var fr = stream.getAvgFrameRate().intValue() aus der verwendeten Bibliothek auf. Gemäß docu liefert es eine average frame rate zurück also gebe ich auch (avg) als hinweis aus.

Ich hab mich auf das bezogen, was MV selbst im Terminal ausgibt, wenn es ffprobe ausruft, dort sehe ich nichts dergleichen. ff·Works, welches intern einerseits dafür ffmpeg bzw. libavformat, andererseits auch Mediainfo verwendet, liefert mir das:

Frame rate mode : Constant
Frame rate : 50.000 FPS

Ich hab nun ein kurzes Video per Handbrake mit variabler Framerate enkodiert. Dann wird mir das auch so ausgegeben:

Frame rate mode : Variable
Frame rate : 29.695 FPS
Minimum frame rate : 25.000 FPS
Maximum frame rate : 30.000 FPS

ff·works bzw. Mediainfo scheinen da irgendwie richtig zu liegen…

Aber folgende Korrektur: Die Bitrate soll beim Beispiel auch konstant sein (?). Ich hatte gestern noch ein anderes Beispiel gecheckt und dort war die Sache wie beschrieben.

@derreisende77 sagte: Die anderen Infos kann ich wohl ergänzen

Besten Dank.

derreisende77 commented 7 months ago

die beiden tools können ganz anders auf ffmpeg zugreifen als ich es aus java kann. aber ich denke die Umsetzung sollte nun ganz gut sein. Bei SRF und co gab es einen Fehler der nun auch gefixt sein sollte und dort Basisinfos angezeigt werden.

MuenchenSued commented 7 months ago

Durch die Änderung passt die Fenstergröße nach Abruf der Filminformation nicht mehr und die Knöpfe "Ok / Abbrechen" werden abgeschnitten. Man kann das Fenster größer ziehen, aber beim nächsten Mal ist es wieder zu klein. 2024-04-08_16-55

derreisende77 commented 7 months ago

@MuenchenSued Der Darstellungsfehler sollte nun mit einem der heutigen commits behoben sein. Im 2. Abschnitt von endet der Satz leider nach "Zudem ist". Kannst Du das bitte nochmals ausführen?

styroll commented 7 months ago

@derreisende77: Detail: Der Begriff "Filminformation" hat im Hauptfenster von MV eine andere Bedeutung (dort geht es nicht um Tech Specs). Evtl. könnte man hier dem Button die Bezeichnung "Codec-Details abrufen…" (statt "Filminformationen abrufen…") zuweisen (analog der Bezeichnung bei VLC). Oder wenn dir das für den gewöhnlichen User zu technisch ist, dann "Medieninformation abrufen…" (nur damit ein anderer Begriff verwendet wird).

derreisende77 commented 7 months ago

@styroll Die Beschriftung wurde angepasst.

MuenchenSued commented 7 months ago

@MuenchenSued Im 2. Abschnitt von endet der Satz leider nach "Zudem ist". Kannst Du das bitte nochmals ausführen?

Ist obsolet. Ich wollte erst noch anmerken, dass es vermutlich nicht nötig ist, dass man die Fenstergröße verändern kann, aber vielleicht gibt es ja lange Pfade oder Titel, bei denen das sinnvoll ist.

Deine Änderung funktioniert.