Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Probleme mit Kapitel Namen #27

Closed
alurio opened this issue Jun 30, 2020 · 11 comments
Closed

Probleme mit Kapitel Namen #27

alurio opened this issue Jun 30, 2020 · 11 comments
Labels
enhancement New feature or request

Comments

@alurio
Copy link

alurio commented Jun 30, 2020

Hallo !
Ich benutze den Listen Audiobook Player aus dem Playstore. Deine Ansonsten grandiose Software produziert dort neuerdings den Fehler ,dass die Kapitel alle CHO heißen Hat wohl irgendwas was mit M4b zu tun,so verstehe ich jedenfalls dass was mir der Entwickler des Listen Audiobook Player geschrieben hat.

Der Fehler passiert bei frisch mit der neusten Version umgewandelten Büchern.

Komischerweise finde ich gerade nicht die Option dir einen File zu schicken.

What is happening is that these files were not tagged correctly with embedded chapters. Mp3 files can embedded multiple chapter information which my app will use, similar to an m4b file. Here in the file you sent me the id3 title tag is "Kapitel 1", however, it has a single embedded chapter with the title "ch0". From your original screenshot it seems that all of your audio files have a single embedded chapter named "ch0".
I suppose what I can do is ignore it if there is only one embedded chapter and assume it is only correct when there are at least two chapters.

best,
-jared

Kannst du da was machen ?

@audiamus
Copy link
Owner

Ah.

Die Schwierigkeit liegt hier in der Form der Auswertung durch diesen Player. Die eigentliche Information zum Titel des Stücks steckt bei MP3 ja im normalen Satz an Metadaten, codiert nach ID3v2.3 oder ID3v2.4. Das ist auch der Ort, wo die meisten Player suchen. Und dort steht der Kapitelname denn auch in voller Schönheit.

Die zusätzliche und separate Kapitel-Info außerhalb von ID3, die dem Stück mitgegeben wird, wurde in der Tat mit Version 1.12 neu gemacht und geändert. Sie dient gezielt dazu, die korrekte Spieldauer anzugeben. Denn MP3 hat dazu keine andere mir bekannte definierte Möglichkeit, außer der Abschätzung aus den Kenngrößen des Audiostroms. Und mehr als die Zeit lesen die anderen Medienspieler hier auch nicht heraus.

Entsprechend habe ich nun dort die präzise Zeitangabe für das Stück untergebracht. Der Text zu diesem Kapitel-Tag allerdings ist bislang ein reiner Platzhalter, den möglicherweise auch FFmpeg selbst vergibt, wohl in der Tat "Ch0".

Ich kann versuchen, den tatsächlichen Titel des Stücks noch mal dorthin zu kopieren und den Platzhalter "Ch0" zu ersetzen. Hier muss man allerdings aufpassen. Es wird immer nur genau ein Kapitel-Tag geschrieben, unabhängig vom inneren Aufbau des Stücks, denn dessen Zweck ist die Angabe der genauen Spieldauer des gesamten Stücks.

Das heißt auch, dass im Modus "Eine Datei" mit Format MP3 eine Kapitelstruktur zwar rein technisch unterzubringen wäre, dieses aber dann wieder auf Kosten der Angabe der Spieldauer gehen würde. Aber von der Kombination "Eine Datei" und MP3 kann ich sowieso immer nur abraten, da besonders ineffizient.

Die nächste Version, an der ich fleißig arbeite, beschäftigt sich übrigens mit den Kapitelgrenzen. Insbesondere seit wir mit expliziten Kapitelnamen aus der content_metadata.json arbeiten, ja ursprünglich durch Deine Anregung entstanden, stelle ich fest, dass die Kapitelmarken nicht immer richtig positioniert sind. In Version 1.13 wird es daher eine Überprüfung dieser Stellen geben. Basierend auf einem einfachen heuristischen Ansatz werden die Kapitelmarken dann ggf. leicht verschieben. Grundlage dabei ist die Verteilung von Stille in unmittelbarer Nähe der ursprünglichen Kapitelmarke.

@alurio
Copy link
Author

alurio commented Jun 30, 2020 via email

@audiamus
Copy link
Owner

Wo steht denn die Spieldauer respektive der Platzhalter Cho drin?

Das ist halt wohl nicht wirklich genormt, und den allermeisten Tools unbekannt. Aber ffprobe kann es lesen.

Da findet man dann so etwas wie dies:

Duration: 00:05:20.28, start: 0.000000, bitrate: 66 kb/s
Chapter #0:0: start 0.000000, end 320.204000
Metadata:
title : ch0

@alurio
Copy link
Author

alurio commented Jun 30, 2020 via email

@audiamus
Copy link
Owner

Die ID3-Tags habe ich nicht verändert. Gemäß gängiger MP3-Nutzung steht dort der Titel des Stücks. Werten Deine Player denn die Standard-Tags nicht aus? Oder nur, wenn diese zusätzlichen Kapitel-Metaeinträge nicht vorhanden sind? Damit würden sie aber eine Inkompatibilität zu allen anderen Playern schaffen.

Sicherlich ist so etwas historisch gewachsen. Rein technisch gesehen unterscheiden sich Hörbücher nicht von anderen Audio-Medien. Und was ich so in den verschiedenen Foren lese, stehen die Standard-Player wie VLC auch für MP3-Hörbücher hoch im Kurs.

Wie geschrieben kann ich versuchen, den tatsächlichen Titel des Stücks aus dem ID3-Tag zusätzlich in den Titel-Tag zu kopieren. Wenn das nicht hilft, wäre zukünftig noch eine Abschalt-Option des Kapiteleintrags denkbar, für diese speziellen Player. Denn die korrekte Zeitangabe ist schon wichtig. Der Punkt stand seit Ewigkeiten auf meiner Todo-Liste, aber es bedurfte eines externen Anstoßes, die Ursache für die falschen Angaben der Player zu finden.

@audiamus
Copy link
Owner

Schon interessant wie immer wieder neues aufkommt. Du hättest
wahrscheinlich auch nicht gedacht, dass sich dass Programm so auswächst.

Ja, nicht schlecht. Wir näheren uns jetzt den 20,000 Downloads hier auf GitHub.

@alurio
Copy link
Author

alurio commented Jun 30, 2020 via email

@alurio
Copy link
Author

alurio commented Jun 30, 2020

Hey

Na wenn die korrekte Zeitangabe dir wichtig ist , bzw lange auf der To do Liste stand ist kopieren der Kapitelinformation bzw des Namens , dort wo ffmpg momentan noch Ch0 rein schreibt dann wohl der.richtige Lösungsansatz, ich hoffe das ist machbar und Wünsche mir dies hiermit herzlich für die kommende Programmversion

Viele Grüße

@audiamus audiamus added the enhancement New feature or request label Jul 1, 2020
@audiamus
Copy link
Owner

audiamus commented Jul 1, 2020

Habe mir das gestern Abend angeschaut. Wird so eingebaut. Der Inhalt vom ID3-Tag "title" wird in den Tag "title" von Chapter Metadata kopiert.

@alurio
Copy link
Author

alurio commented Jul 1, 2020

Wunderbar!

Dann sollten die Hörbuchplayer, die ja offenbar von der Metadata und Cho schwer verwirrt sind wieder Ruhe geben.

Viele Grüße

@audiamus
Copy link
Owner

audiamus commented Jul 4, 2020

Eingebaut in 1.13.

@audiamus audiamus closed this as completed Jul 4, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants