MP3 muziek hulpprogramma (v5.3 Juni 2020)
5.3: checkbox toegevoegd aan check1. Alle keuzelijsten selecteerbaar gemaakt. Bij ENTER wordt geselecteerde tekst gekopieerd naar het klembord. Dit kan dan weer worden gekopieerd naar de teksteditor voor verdere analyse of bewerking.
5.2: Voegt ondersteuning toe voor sub-mappen en afspeellijsten met meerdere sterren.
Inhoud
Waarom ben ik hiermee begonnen
- Mijn collectie mp3-singles begon in de loop der jaren te groeien, nu meer dan 6.000 titels. Ik gebruik een mp3-tag bewerker zoals ( mp3tag v3.01 ) om de mp3 informatie op te schonen. Op zich een zeer goede tool, maar net als alle andere mp3-tag bewerkers die ik heb geprobeerd, ondersteunt het een beperkte set ID3 tags. Tags die het niet ondersteunt, het zal deze dan ook niet laten zien of ev aanpassen of verwijderen. Dit is hoe al deze mp3 bewerkers lijken te werken.
- I geef al mijn mp3 muziek bestanden een naam zoals <artist> - <title>. Ik merkte dat ik type fouten maakte in de bestandsnaam voor de artiest en / of het nummer, wat leidde tot dezelfde nummers in mijn verzameling met een iets andere bestandsnaam. Voor artiesten die met 'The' beginnen, kan ik bijvoorbeeld een mp3 hebben voor hetzelfde nummer / dezelfde artiest met en zonder 'The'. Het handmatig controleren van al deze typefouten was veel werk en ik wilde iets om dit voor mij te doen.
- Ik wilde alle ongewenste / ongebruikte ID3 frames van een mp3 verwijderen, inclusief die frames die mp3tag niet ondersteunden.
- Iets dat ik nergens anders op internet kon vinden, was een programmaatje om alle ID3 frames in een mp3-bestand te vinden en rapporteren. Dus ik heb dit aan mijn programma toegevoegd.
- Ten slotte genereer ik afspeellijsten van mijn verzameling op basis van beoordeling, jaar enz. Ik heb een functie aan het programma toegevoegd om dit automatisch voor mij te doen.
Mijn programma is geschreven in Visual Basic met Visual Studio 2019. Het is helaas alleen beschikbaar in de Engelse taal. Het gebruikt .NET Framework 3.5 SP1. De gebruikersinstellingen in het programma worden opgeslagen in een configuratie instellingenbestand. Dit is een bestand met de naam "user.config" en moet zich in de map %Appdata% bevinden. Op mijn computer was dit opgeslagen in "C:\Users\ron\AppData\Local\Ron_Jut\SinglesUtil.exe_Url_a1n5ti3peojnxd0awmqcpwsqldyqqtkf\5.3.0.0". Bij een andere installatie kan dit anders zijn.
Hier is een download link naar versie 5.3.0.0., voor als u het hulpprogramma zelf wilt gebruiken op eigen risico. Maak altijd eerst een back-up van uw bestanden voordat u het hulpprogramma gebruikt! Het hulpprogramma heeft mijn mp3-bestanden nog nooit verprutst, maar het is beter op zeker te spelen. Het exe bestand is het resultaat van de gegenereerde versie. Het hoeft niet geinstalleerd te worden maar het heeft .NET framework 3.5 SP1 nodig op de computer waarop je het uitvoert. Een moderne Windows 10 installatie zou dit al moeten hebben.
Als alternatief kun je ook de gepubliceerde versie downloaden. Dit is een zip file met een aantal bestanden:
Download het zip bestand en pak het uit. Klik vervolgens op "publish.htm" om het op je computer te installeren.
De mp3 muziek collectie.
Het hulpprogramma heeft een interface met tabbladen met een apart tabblad voor elke controle of functie. Het eerste tabblad wordt gebruikt voor de selectie van de mp3 map.
Als de invoermap niet bestaat, wordt in het vak een tekst weergegeven waarin u wordt gevraagd een map te selecteren en blijft de lijst leeg. Vink het vakje aan om sub-mappen in de lijst op te nemen. Bestanden met een andere extensie dan .mp3 worden genegeerd. De rasterweergave toont de bestanden en paden die worden gelezen. De lijst kan worden gesorteerd door op de kopteksten te klikken.
Uitleg check1.
Hiermee wordt gecontroleerd of de woorden in de artiest en titel in zogenaamde Titelcase staan, d.w.z. elk woord begint met een hoofdletter. Sommige uitzonderingen zijn toegestaan zoals vs en ft. Met het selectievakje kunt u de 'ignore'-berichten onderdrukken. Wanneer de controle iets vindt dat niet goed lijkt, wordt het in het tekstvak vermeld. Het bestand zelf wordt niet echt gewijzigd. Dit moet je zelf doen. Nadat u wijzigingen heeft aangebracht, moet u het hulpprogramma opnieuw uitvoeren.
Uitleg check2.
Dit controleert of een combinatie van artiest en titel bestaat met en zonder een 'The'. Als er een wordt gevonden, wordt dit vermeld in het vak. U moet zelf correcties aanbrengen, b.v. verwijder een van de 2 bestanden.
Uitleg check3.
Dit controleert of artiesten bestaan met bijna dezelfde spelling. Dit kan duiden op een typefout. Gevonden items worden weergegeven in het tekstvak. Nogmaals, u moet zelf de bestandsnamen wijzigen.
Uitleg werking van de ListTags functie.
Deze functie genereert een tekstbestand met de gevonden ID3v2.3-frames in het mp3 bestand. De functie controleert niet echt of een gevonden frame naam onderdeel is van de ID3v2.3 definitie. Het controleert ook niet de inhoud op correctheid. Deze functie zal ook alle tags vermelden die volgens de definitie niet geldig zijn.
Het tekstvak toont alle regels die naar het uitvoer bestand zijn geschreven.
Hieronder een voorbeeld van een regel van het uitvoer bestand:
Ava Max - So Am I.mp3;Info:ID3v2.3 length (bytes)=95581, Info: Padding bytes=4329;;TALB;9;0;TPE1;9;0;TIT1;8;0;TCON;5;0;TLAN;9;0;POPM;23;0;TIT2;9;0;TRCK;3;0;USLT;2036;0;TYER;6;0;APIC;89024;0
De lengte is de totale grootte van deID3v2.3-tag, tot de start van mp3 muziek/audio. Padding is het aantal opgevulde characters tussen het einde van het laatste frame en het begin van mp3 audio. Vervolgens een opsomming van de gevonden frame namen gevolgd door de lengte van het frame in bytes en de vlagbyte. De daadwerkelijke inhoude / waarde van het frame wordt niet weergegeven. De vlagbyte is meestal 0. Een uitleg werking van de frame namen is te vinden op de ID3 web site.
De naam van de uitvoer bestands kan veranderd worden in het user.config bestand. De map is altijd hetzelfde als de afspeellijstmap. Zorg er dus voor dat u dit eerst selecteert voordat u deze functie uitvoert. Dit "user.config" bestand staat in de map %AppData%. Iets als: "C:\Users\ron\AppData\Local\Ron_Jut\SinglesUtil.exe_Url_a1n5ti3peojnxd0awmqcpwsqldyqqtkf\5.3.0.0". Het bestand is in xml-formaat en kan worden bewerkt met een gewone tekstbewerker.
Uitleg werking van de LyricLanguage (lied tekst taal) functie.
Deze functie kan de taalcode van ingesloten lied teksten in de mp3 veranderen. Deze taal code is vaak eenvoudig ingesteld op 'xxx' of 'eng', zelfs als de daadwerkelijke taal van de songtekst een andere is. Voordat u deze functie uitvoert, wilt u een set mp3 met een specifieke taal naar een aparte map kopiëren. Deze functie verandert simpelweg alle songtekstcodes in alle mp3, ongeacht van het TLAN frame dat in de mp3 aanwezig kan zijn. Deze functie verandert de TLAN tag niet, dit kan worden gedaan met bewerkingstools zoals Mp3tag. Er wordt niet gecontroleerd of de ingevoerde taalcode daadwerkelijk geldig is.ISO639-2 definitie. Voor instrumentele nummers zonder zang bestaat heeft ISO639-2 de code 'zxx' gedefinieerd.
Uitleg werking van de DeleteFrame (verwijder frame) functie.
De functie kan alle ongewenste frames uit de mp3 bestanden verwijderen. De functie controleert niet echt of een frame naam onderdeel is van de ID3v2.3 definition. Het controleert ook niet de inhoud op correctheid. Deze functie zal ook alle tags vermelden die volgens de definitie niet geldig zijn. Ruimte die vrijkomt door het verwijderen van frames wordt opgevuld met nullen, de zogenaamde padding karakters. Dus de grootte van het bestand wijzigt niet door deze bewerking. Het volkomen legaal om deze opvulling te doen volgens de ID3v2.3 standaard.
uitleg werking van dePlaylist generator.
Deze functie genereert afspeellijstbestanden afhankelijk van de inhoud van deID3v2.3-frames. De grijze optie die ik nog niet heb ondersteund. De gegenereerde bestanden hebben de extensie .m3u, maar de inhoud is een eenvoudige lijst met mp3-bestanden, bijvoorbeeld:
New\Dermot Kennedy - Power Over Me.mp3
New\Billie Eilish - Bad Guy.mp3
New\Danny Vera - Roller Coaster.mp3
New\Ava Max - So Am I.mp3
Dit volgt dus niet de M3U definitie maar de spelers lijken hier geen probleem mee te hebben. Winamp speelt deze afspeellijsten zonder problemen af. Het tekstformaat van de speellijst bestanden is UTF8. Dit betekent dat het ook speciale karakters zoals ö of ü correct verwerkt.
Zorg ervoor dat je de locatie voor de afspeellijsten kiest. Dit wordt gebruikt om het relatieve pad van de afspeellijstmap naar de mp3-map te berekenen. Als de afspeellijst later naar een andere map wordt verplaatst, werkt de afspeellijst niet meer omdat het relatieve pad niet langer correct is. Omdat de paden in de afspeellijsten relatief zijn, kunt u de mp3 bestanden samen met de afspeellijsten naar een andere locatie verplaatsen, zolang het relatieve pad intact blijft. Merk op dat deze functie inhoud toevoegt (Engels: append) aan bestaande bestanden. Dus misschien wilt u eerst bestanden verwijderen die al in de afspeellijstmap staan.
Vanaf versie 5.2 heb ik een optie toegevoegd om een afspeellijst te genereren voor de sterren beoordelingen. Dit betekent dat een nummer met b.v. cijfer 2 wordt niet alleen gekopieerd naar b.v. 'PlaylistRating2star.m3u' maar ook naar 'PlaylistRating1-5star.m3u' en ook naar 'PlaylistRating2-5star.m3u'. Het nummer wordt dus ook gekopieerd naar de lagere beoordelingslijsten. Op deze manier kunt u 5 extra afspeellijsten hebben waarbij de rating van het nummer een minimumwaarde is. 'PlaylistRating3-5star.m3u' bevat dus nummers met een beoordeling van 3 en hoger, 'PlaylistRating4-5star.m3u' bevat alleen nummers met een waardering van 4 en 5.
Voor mijn 6000+ verzameling en alle opties aangevinkt duurt het een paar minuten om deze functie uit te voeren. Soms blijven de voortgangsbalk en de keuzelijst tijdens de uitvoering hangen, maar blijft de cursor draaien. In dit geval is het programma nog steeds actief, maar om de een of andere reden wordt het scherm niet meer bijgewerkt. Dit gebeurt soms ook bij de andere controles, maar meestal alleen bij grotere collecties.