Wie übertrage ich Sprachnotizen mit ihren Titeln?

iTunes speichert den Titel der Sprachnotiz nicht, was sie ziemlich nutzlos macht. Sie sehen aus wie DATE######.m4a.

Ich arbeite mit diesen Memos, jede Lösung würde passen, sogar Jailbreak, ich muss wirklich einen Weg finden.

iTunes 12.2.1.16, Windows 7, iPhone 3GS, iOS 6

Antworten (7)

Ich hatte über 700 Sprachnotizen auf meinem iPhone, von denen ich viele umbenannt habe, damit ich die benötigten in den Aufzeichnungen leichter finden kann.

Um das Problem des Verschiebens von Datensätzen in mein Dateisystem mit Dateinamen zu lösen, habe ich diese Problemumgehung für mich gefunden. Ich beschreibe es Schritt für Schritt.

  1. Synchronisieren Sie mit iTunes und erhalten Sie eine Wiedergabeliste mit Aufzeichnungen.
  2. Gehen Sie zur Wiedergabeliste und gehen Sie zu Datei → Bibliothek → Wiedergabeliste exportieren und speichern Sie die TXT-Datei.
  3. Öffnen Sie die Datei in Notepad++ und drücken Sie Strg+A, um den gesamten Text auszuwählen, drücken Sie einmal die Tabulatortaste, um Leerzeichen am Anfang jeder Zeile zu erhalten.
  4. Löschen Sie die erste Zeile mit den Spaltennamen.
  5. Gehen Sie zu Bearbeiten → Spalteneditor, wählen Sie im geöffneten Fenster die "einzufügenden Zahlen" beginnend bei 0 mit Erhöhung um 1 und das Dezimalsystem, drücken Sie OK - es wird die Nummerierung der Zeilen enthalten.
  6. Drücken Sie Strg+F und wechseln Sie zur Registerkarte „Ersetzung“. Aktivieren Sie dann die Verwendung von regulären Ausdrücken. Ändern

    ^(\d*)\s*([^\t]*)\t([^\t]*\t){29}[^\t\n]*\\([^\t\n\\]*).*$
    

    Zu

    set memoNames[$1]="$2.m4a"\nset memoLocations[$1]="$4"
    

    (Möglicherweise hängt der zu ersetzende Regex von der Version von iTunes ab, da er gemäß den Spalten in der Exportdatei erstellt wird.)

    Das Ergebnis sollte in etwa so aussehen

    set memoNames[0]="my custom name.m4a"
    set memoLocations[0]="20130327 172842.m4a"
    set memoNames[1]="some other custom name.m4a"
    set memoLocations[1]="20130327 172954.m4a"
    

    und so weiter (Gesamtzahl der Zeilen ist die Anzahl Ihrer Sprachnotizen × 2)

  7. Erstellen Sie als Nächstes eine Batchdatei (z. B. rename_records.bat) mit Inhalten mit diesem Code

    @echo off
    setlocal EnableDelayedExpansion
    #INSERT_HERE_YOUR_REPLACED_DATA#
    set "x=0"
    echo starting renaming loop
    timeout 2
    :RenameLoop
    if defined memoNames[%x%] (
        set nameFrom=!memoLocations[%x%]!
        set nameTo=!memoNames[%x%]!
        call echo renaming #%x% %nameFrom% in %nameTo%
        REM ren %%memoLocations[%x%]%% %%memoNames[%x%]%%
        set /a "x+=1"
        GOTO :RenameLoop
    )
    echo Total length of files is %x%
    pause
    
  8. Ersetzen Sie #INSERT_HERE_YOUR_REPLACED_DATA#in Ihrer bat-Datei das Ergebnis von Schritt 6

  9. Wenn Sie kyrillische Symbole haben, fügen Sie diese Zeile am Anfang Ihrer Fledermausdatei hinzu

    chcp 1251 >nul
    
  10. Hinweis: Bevor Sie Ihre bat-Datei ausführen, kopieren Sie Ihre Aufzeichnungen aus der iTunes-Mediathek in einen anderen Ordner, um sicherzustellen, dass Sie Ihre Aufzeichnungen nicht verlieren.

  11. Legen Sie Ihre Bat-Datei in den Ordner, den Sie in Schritt 10 erstellt haben, und führen Sie sie aus.

Es scheint, dass dies ein seit langem bestehender Fehler in iTunes sein könnte. Mir ist aufgefallen, dass, wenn Sie die Metadaten des Sprachmemos über „Get Info“ bearbeiten, bevor Sie es aus iTunes exportieren, NUR bearbeitete Metadatenfelder intakt bleiben, wenn Sie die Datei an anderer Stelle oder in iTunes exportieren und erneut öffnen. Ich habe einen Fehlerbericht bei Apple eingereicht, aber bis dahin haben wir einige Optionen.

Hier sind 2 Problemumgehungen:

1.) AM EINFACHSTEN - Wenn es Ihnen egal ist , den Zeitstempel des Sprachmemos beizubehalten:

  1. Wählen Sie alle Sprachnotizen aus, die Sie exportieren möchten.
  2. Öffnen Sie Get Info, gehen Sie zur Registerkarte Optionen.
  3. Ändern Sie die „Medienart“ von „Sprachnotiz“ in „Musik“.
  4. Exportieren Sie die Sprachnotizen.

Dadurch wird die Datei umbenannt, als wäre es ein Song, und der Dateiname wird zu den „Name“-Metadaten. Die Zeitstempeldaten gehen verloren, aber wenn Sie das ursprüngliche, nicht exportierte Element wieder in „Voice Memo“ konvertieren, wird der ursprüngliche Dateiname mit dem Zeitstempel irgendwie wiederhergestellt.

2.) AM MEISTEN genau – Um alle Metadaten beizubehalten

  1. Öffnen Sie den Artikel in "Get Info"
  2. Nehmen Sie eine triviale Bearbeitung an allen Metadatenfeldern vor, die Sie beibehalten möchten. Persönlich füge ich einfach jedem "Namen" ein Leerzeichen hinzu. Für gemeinsame Felder, die für mehrere Sprachnotizen gleich sind (Künstler, Album, Genre), können Sie eine Stapelbearbeitung durchführen.
  3. Exportieren Sie die Sprachnotizen. Der Dateiname ist ein hässlicher Zeitstempel (mit Hexadezimalzahl), aber wenn Sie die Datei woanders öffnen (oder erneut in iTunes), sind die zuvor bearbeiteten Metadaten immer noch vorhanden.
Am 22.03.2021 wurde diese Problemumgehung deaktiviert. Was für ein Dreck Apple ist.

Syncios ist eine sicherere Alternative zu Tongbu . Im Gegensatz zu iTunes bieten beide eine einfache Lösung zum Herunterladen von Sprachnotizen mit ihren Titeln, vorausgesetzt, Sie achten auf die Länge der Titelzeichen und die verbotenen Zeichen.

Ich habe die Schritt-für-Schritt-Anleitung von @Andrew Kozelski mit Windows 10 getestet, aber die Batchdatei hat die Dateien nicht umbenannt. Also habe ich einige Korrekturen vorgenommen und jetzt funktioniert es:

@echo off
setlocal EnableDelayedExpansion
#INSERT_HERE_YOUR_REPLACED_DATA#
echo starting renaming loop
timeout 2
:RenameLoop
if defined memoNames[%x%] (
    set nameFrom=!memoLocations[%x%]!
    set nameTo=!memoNames[%x%]!
    call echo !memoNames[%x%]!
    call echo renaming #%x% !nameFrom! in !nameTo!
    ren !nameFrom! !nameTo!
    set /a "x+=1"
    GOTO :RenameLoop
)
echo Total length of files is %x%
pause

Wenn Sie deutsche Mutationen/Umlaute benötigen, verwenden Sie chcp 65001(utf-8-Codierung) nach dem @echo offBefehl.

Inspiriert von @Andrew Kozelskis Ansatz habe ich einen UNIX-Shell-Skript-Oneliner erstellt, der ein ähnliches Ergebnis erzielt. Dies kann nützlich sein, wenn Sie wie ich iTunes und Windows in einer VM ausführen, aber alles andere unter Linux erledigen.

  1. (Gleich wie die ersten beiden Schritte unter Windows) Bringen Sie Ihre Sprachnotizen in eine Wiedergabeliste und exportieren Sie sie als Textdatei (z. B. "playlist.txt").
  2. Ziehen Sie die Dateien per Drag-and-Drop aus der Wiedergabeliste in ein Windows Explorer-Fenster und erstellen Sie Dateien mit Namen wie "20190327 062535.m4a".
  3. Führen Sie in UNIX-Land den folgenden Befehl aus (alle eine Zeile):

    iconv -f UTF-16 -t UTF-8 playlist.txt | tr -d "\r" | awk 'BEGIN {FS="\t"}; NR>1 {sub(/^.*\\/,"",$31); sub(/\.m4a$/,"",$31); print "mv " "\""$31".m4a\" " "\""$31" "$1".m4a\""}' | sh

Das Ergebnis sind alle Ihre umbenannten Dateien mit dem hinzugefügten Titel: "20190327 062535 my title here.m4a".

Erklärung des Befehls:

  • iconvwird verwendet, um von UTF-16 in UTF-8 zu konvertieren, was eine gesündere Codierung für Dateinamen ist.
  • trlöscht das CR-Zeichen und konvertiert die Datei effektiv von DOS-Zeilenenden in UNIX-Zeilenenden.
  • awkmacht mehrere Dinge:

    • Setzen Sie das Feldtrennzeichen auf Tabulator, da iTunes tabulatorgetrennte Daten exportiert.
    • Überspringen Sie die erste Zeile, die eine Überschrift ist
    • Extrahieren Sie das 31. Feld (das ist der vollständige Pfad, den iTunes zum Speichern der Datei verwendet) und entfernen Sie alles bis einschließlich des letzten umgekehrten Schrägstrichs, um den Basisnamen der Datei zu erhalten, indem Sie ihn durch die leere Zeichenfolge ersetzen. Beachten Sie, dass der umgekehrte Schrägstrich einmal (\\) und nicht zweimal (\\\) maskiert wird, da er von awk als Escape-Zeichen maskiert werden muss, aber nicht von bash, da der gesamte awk-Befehl in einfache Anführungszeichen eingeschlossen ist.
    • Entfernen Sie auch das Suffix „.m4a“, da wir es später wieder hinzufügen werden.
    • Drucken Sie eine Befehlszeile, die den mvBefehl zum Verschieben (Umbenennen) der Datei verwendet.
  • Leiten Sie schließlich das Ergebnis an um shalle Umbenennungsbefehle auszuführen.

Ersetzen Sie das Finale shdurch , lessum die Befehle zu überprüfen, bevor Sie sie ausführen.

Dies könnte wahrscheinlich vereinfacht werden, wenn es unter Windows ausgeführt wird (unter Verwendung des Windows-Subsystems für Linux), da Sie direkt aus dem Repository von iTunes kopieren könnten.

Ein großes Dankeschön an Apple, dass Sie diesen Prozess so glatt und einfach gemacht haben, und ich bin sicher, dass sie das Wiedergabelisten-Ausgabeformat von iTunes in Zukunft nicht ändern werden, weil sie sich so sehr um Abwärtskompatibilität und Interoperabilität mit anderen Tools kümmern.

FÜR DIE LÖSUNG SIEHE DEN LETZTEN SATZ :))

Ich bin bei Schritt 6 hängen geblieben, als Sie auf „regulärer Ausdruck“ geklickt und dann den „Code“ in den anderen „Code“ geändert haben. Ich bin mir nicht sicher, wo ich das bearbeiten soll, aber. Befindet es sich in der Spalte "Suchen nach:" und "Ersetzen durch:"?

Wie auch immer, als ich meine Wiedergabeliste in Text exportiert habe. Ich bemerkte, dass die Titelspalte erschienen war. Und es hat die Namen der Dateien, wie Sie sie auf Ihrem iPhone gespeichert haben!

Es existiert also. Nur nicht auf die herkömmliche Art und Weise.

Wenn Sie sich nicht sicher sind. Klicken Sie mit der rechten Maustaste auf eine der Spalten und wählen Sie „Titel“ und die Dateinamen werden angezeigt. Beachten Sie, dass „Datum“ und „Änderungsdatum“ beide identisch sind und die Daten sind, an denen Sie es zuletzt bearbeitet haben, einschließlich des Titels.

Wenn Sie die Sprachdateien kopieren und einfügen, sind die Namen, die Sie den Dateien geben, immer noch vorhanden, sie werden nur als „Titel“ bezeichnet. Um die Titel auf einem Windows-PC anzuzeigen, öffnen Sie einfach den Dateispeicherort und dort, wo „Name“ oben links in den in diesem Ordner aufgelisteten Dateien steht, klicken Sie mit der rechten Maustaste und wählen Sie „Titel“ aus der Liste und dann „Titel“. oder Namen, die Sie den Dateien genannt haben, sollten dann erscheinen.