mp3 tags lezen en schrijven.

Status
Niet open voor verdere reacties.

KeesdeOude

Gebruiker
Lid geworden
29 mei 2008
Berichten
35
Ik schreef ooit een overzichtprogramma tbv mijn mp3's. De datafile stond als array in de source. Dit forum hielp mij een aparte datafile in te lezen en te verwerken, veel professioneler!
(Kan ik dat als amateur wel zeggen?).
Om het geheel te vervolmaken zou ik ook de tags in de mp3's willen lezen en evt zelfs wijzigen! Kan dat met javascript? Via de methode die het forum mij gaf kan ik wel een tekstfile inlezen, geen andere extensie, lukt me althans niet. Weet iemand hier meer over?
Gaarne bericht.
Kees de Oude.
 
Werken met binaire bestanden is niet te doen in Javascript. Ik zou hiervoor een echte programmeertaal gebruiken. Als het persé over het internet moet werken kan het wel met PHP.

Het kan overigens wél, maar het is absoluut niet makkelijk en de meeste oplossingen zijn browser specifiek.
 
Werken met binaire bestanden is niet te doen in Javascript. Ik zou hiervoor een echte programmeertaal gebruiken. Als het persé over het internet moet werken kan het wel met PHP.

Het kan overigens wél, maar het is absoluut niet makkelijk en de meeste oplossingen zijn browser specifiek.

Nee nee, geen internet! Ik schreef al eerder dat alles wat ik doe lokaal op mijn desktop moet werken. En ik ga me afvragen wat die bruut vermoorde handtekening dan wel was?
Kees de Oude.
 
Tja, dan zou je ook met talen als c/c++, java of een basic variant kunnen werken. Het is wel wat lastiger, zeker in het begin maar het is het waard. Maargoed, als het alleen in IE hoeft te werken zijn er ActiveX objecten die je kunt gebruiken. Het vervelende is dat ze slecht gedocumenteerd zijn en het is altijd maar de vraag welke ActiveX objecten er beschikbaar zijn op specifieke versies van Windows. Een script wat binaire bestanden opslaat kan als volgt, iig in Windows Vista:

Code:
        var file	 = new ActiveXObject("ADODB.Stream");
        var data	 = [0, 1, 2, 3, 4];
        file.Type	 = 1;
        file.Open();
        file.Write(data);
        var outFile = "C:\\bestand.extensie";

        file.SaveToFile(outFile, 2);
        file.Close();

var data is een array van (unsigned) bytes.

Maarja, dat is schrijven en niet lezen, laat staan bewerken. Ik zou eerst een testen of dat ActiveXObject op je PC bestaat. Misschien dat je het object ook andersom kunt gebruiken.

Maarja, vergeleken met een c/c++ applicatie zal dit zoiezo extreem traag zijn.
 
Laatst bewerkt:
misschien is dit een oplossing: id3v2
dit command-line tooltje kun je aanroepen vanuit bijvoorbeeld PHP

zie ook
http://www.id3.org/Implementations
http://id3lib.sourceforge.net/

Hallo Piet, ik had al op id3.org gekeken, leek me erg gecompliceerd. Toch is er vooruitgang. Lezen van een mp3 tag lijkt me tot nu ingewikkeld, het wegschrijven van een mp3 tag blijkt veel eenvoudiger! Tijdens het bekijken van een mp3 met een hexviewer dacht ik er opeens aan dat het aloude QuickBasic binare files kan lezen en schrijven, ook op vanaf elke willekeurige byte! Vroeger was ik heel druk met QB maar ben onderdehand zowat alles vergeten. Toch heb ik nu een programmaatje dat een eigen tag wegschrijft. Hier komt de source als bijlage:
 

Bijlagen

Hallo Piet, ik had al op id3.org gekeken, leek me erg gecompliceerd. Toch is er vooruitgang. Lezen van een mp3 tag lijkt me tot nu ingewikkeld, het wegschrijven van een mp3 tag blijkt veel eenvoudiger! Tijdens het bekijken van een mp3 met een hexviewer dacht ik er opeens aan dat het aloude QuickBasic binare files kan lezen en schrijven, ook op vanaf elke willekeurige byte! Vroeger was ik heel druk met QB maar ben onderdehand zowat alles vergeten. Toch heb ik nu een programmaatje dat een eigen tag wegschrijft. Hier komt de source als bijlage:

Hallo allemaal.
Het bovenstaande kan ik nu uitbreiden met: IK KAN MP3 TAGS SCHRIJVEN, LEZEN EN RELEVANTE ZAKEN IN EEN ARRAY WEGSCHRIJVEN!
Dat alles inderdaad met QuickBASIC, Het array kan ik importeren in een html/javascript programma met een eigen layout en eigen mogelijkheden. Er zijn nog wat problemen, hoor, specifiek aan QB, maar die zijn wel op te lossen.
De leesroutine gaat hier bij (bijlage), voor de meesten leesbaar denk ik maar niet bruikbaar, je hebt er QB voor nodig. De bijlage heeft als extensie .txt, .bas kan niet worden gedownload.
Kees de Oude
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan