C# Feedback zum Projekt - tone: audio tagger in C#

So, v0.0.7 ist raus...

Ich habe mal endlich einige Ratschläge von hier (rudimentär) umgesetzt:
  • Apache Lizenz hinzugefügt
  • Library für die Metadata-Geschichte extrahiert
Außerdem spuckt tone dump --format=json jetzt nicht nur metadaten, sondern auch Informationen über die Datei und die Audiospur aus:

Code:
> tone dump christmasmiscellany2018_01_various_64kb.mp3 --format=json
{
  "audio": {
    "bitrate": 64,
    "format": "MPEG Audio (Layer III)",
    "formatShort": "MPEG",
    "sampleRate": 22050.0,
    "duration": 437680.0,
    "channelsArrangement": {
      "description": "Mono (1/0.0)",
      "nbChannels": 1
    }
  },
  "meta": {
    "album": "A Christmas Miscellany 2018",
    "albumArtist": "",
    "artist": "Lucy Maud Montgomery",
    "chaptersTableDescription": "",
    "composer": "",
    "comment": "https://archive.org/details/a_christmas_miscellany_2018_1807_librivox",
    "conductor": "",
    "copyright": "",
    "description": "",
    "discNumber": 0,
    "discTotal": 0,
    "genre": "speech",
    "lyrics": null,
    "originalAlbum": "",
    "originalArtist": "",
    "popularity": 0.0,
    "publisher": "",
    "publishingDate": "0001-01-01T00:00:00",
    "recordingDate": "0001-01-01T00:00:00",
    "title": "01 - A Christmas Of Long Ago (1906)",
    "trackNumber": 1,
    "trackTotal": 0,
    "chapters": [],
    "embeddedPictures": [],
    "additionalFields": {
      "tlen": "437.63"
    }
  },
  "file": {
    "size": 3506239,
    "created": "2022-07-04T07:17:08.937+02:00",
    "modified": "2022-07-04T07:17:08.937+02:00",
    "accessed": "2022-07-17T15:30:00.9758516+02:00",
    "path": "Eden Phillpotts/Santa Claus",
    "name": "christmasmiscellany2018_01_various_64kb.mp3"
  }
}
Das ist besonders praktisch in kombination mit dem --query parameter, z.B. wenn man die Dauer in Millisekunden rausfinden will:
Bash:
> tone dump christmasmiscellany2018_01_various_64kb.mp3 --format=json --query="$.audio.duration"
437680
 
Docker bei einer Desktop Anwendung?
Das erklär mal
Ergänzung ()

Neeeiiin nicht dieses dumme json
 
Hat er Dir doch schon erklärt. Im Gegensatz zu Dir der alles pauschal als schaizz, dumm und ugly bezeichnet. Dich und Deine seltsame Ansichten kann man dadurch wesentlich weniger ernst nehmen als den Ersteller dieses Themas.

Ich finde Json auch wesentlich übersichtlicher als das aufgeblähte XML... Und in C# brauchst Du da auch keine zusätzliche Lib mehr für...
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: VD90, sandreas, Myron und eine weitere Person
Ich persönlich finde ja immer !string.IsNullOrWhitespace(metadata.Path) schöner als metadata.Path != ""
Ist mir jetzt aber nur spontan aufgefallen.
 
  • Gefällt mir
Reaktionen: sandreas
heulendoch schrieb:
Ich persönlich finde ja immer !string.IsNullOrWhitespace(metadata.Path) schöner als metadata.Path != ""
Hab ich bestimmt vergessen... guck ich mir noch mal an. Wobei ich wohl string.IsNullOrEmpty nehmen würde - unter Linux und macOS kann man Verzeichnisse mit einem oder mehr Leerzeichen anlegen:

Bash:
mkdir ' '
cd ' '
mkdir 'test'
pwd
 
Oma Erna schrieb:
Warum zum Teufel ugly stupid json? Was ist falsch an XML?
Du kannst damit eine externe Lib einsparen was in dem Fall gut ist.

Oma Erna schrieb:
nichts hat eine js api, du willst dich an js anbiedern. würde ich so nicht machen, ist aber aber natürlich deine entscheidung.
in c# braucht man json nicht, meine meinung.
Warum sollte man sich den schrecklichen XML Serializer von .NET freiwillig antun wenn keine Notwendigkeit besteht?
  • Unterstützt er nur eine alte XML Version.
  • Bietet keine async API.
  • Ist deutlich langsamer als NewtonSoft.Json oder System.Text.Json.
 
  • Gefällt mir
Reaktionen: VD90 und sandreas
Und die v0.0.8.

Ein paar wichtige fixes beim Verarbeiten von Taggern und Dateien... dazu
  • Ergänzungen in der JavaScript API zum Schreiben von Dateien
  • Man kann nun die Grenzen der "echten" Audiodaten ausgeben lassen - das ist ein großer Vorteil, wenn man die Datei zum Wiedererkennen Hashen will, OHNE Änderungen in den Metadaten zu berücksichtigen. Ich verwende das z.B. in Kombination xxhash in meinem Projekt tonehub
 
  • Gefällt mir
Reaktionen: Boa-P
Und die v0.0.9.

Verbesserungen:
  • Graceful abbrechen der Anwendung bei STRG+C - vermeidet defekte Dateien beim Taggen (siehe auch hier)
  • --prepend-movement-to-description fügt den Namen der Serie eines Hörbüchs der Beschreibung automatisch hinzu, sofern vorhanden
  • Dokumentation überarbeitet (mehr Beispiele, bessere Erklärungen zu taggers)
 

Ähnliche Themen

Zurück
Oben