Vor längerer Zeit hatten wir in einem Tipp gezeigt, wie sich MP3-Informationen (ID3v1) auslesen lassen. Hierbei wurde allerdings der Index des Genres nicht korrekt ausgelesen. Unser heutiger Tipp hingegen liest alle ID3v1-Tag Informationen korrekt aus und kann diese auch wieder zurückspeichern. Die MP3-Informationen werden hierbei in einem benutzerdefinierten Datentyp zwischengespeichert: ' MP3-Informationen (ID3v1) Private Type ID3v1 TAG As String * 3 ' TAG Title As String * 30 ' Titel des Liedes Artist As String * 30 ' Interpret Album As String * 30 ' Album Year As String * 4 ' Erscheinungsjahr Comments As String * 30 ' Kommentar Genre As Byte ' Indexnummer des Genres End Type Wie bereits erwähnt, soll der Index des Genres diesmal korrekt eingelesen und verarbeitet werden ' Genre-Auflistung Private Enum Genre Blues = 0 ClassicRock = 1 Country = 2 Dance = 3 Disco = 4 Funk = 5 Grunge = 6 HipHop = 7 Jazz = 8 Meta = 9 NewAge = 10 Oldies = 11 Other = 12 Pop = 13 R_B = 14 Rap = 15 Reggae = 16 Rock = 17 Techno = 18 Industrial = 19 Alternative = 20 Ska = 21 DeathMetal = 22 Pranks = 23 Soundtrack = 24 EuroTechno = 25 Ambient = 26 TripHop = 27 Vocal = 28 JazzFunk = 29 Fusion = 30 Trance = 31 Classical = 32 Instrumental = 33 Acid = 34 House = 35 Game = 36 SoundClip = 37 Gospel = 38 Noise = 39 AltRock = 40 Bas = 41 Soul = 42 Punk = 43 Space = 44 Meditative = 45 InstrumentalPop = 46 InstrumentalRock = 47 Ethnic = 48 Gothic = 49 Darkwave = 50 TechnoIndustrial = 51 Electronic = 52 PopFolk = 53 Eurodance = 54 Dream = 55 SouthernRock = 56 Comedy = 57 Cult = 58 Gangsta = 59 Top40 = 60 ChristianRap = 61 Pop_Funk = 62 Jungle = 63 NativeAmerican = 64 Cabaret = 65 NewWave = 66 Psychadelic = 67 Rave = 68 Showtunes = 69 Trailer = 70 LoFi = 71 Tribal = 72 AcidPunk = 73 AcidJazz = 74 Polka = 75 Retro = 76 Musical = 77 RockNRoll = 78 HardRock = 79 Folk = 80 Folk_Rock = 81 NationalFolk = 82 Swing = 83 Fusion1 = 84 Bebob = 85 Latin = 86 Revival = 87 Celtic = 88 Bluegrass = 89 Avantgarde = 90 GothicRock = 91 ProgressiveRock = 92 PsychedelicRock = 93 SymphonicRock = 94 SlowRock = 95 BigBand = 96 Chorus = 97 EasyListening = 98 Acoustic = 99 Humour = 100 Speech = 101 Chanson = 102 Opera = 103 ChamberMusic = 104 Sonata = 105 Symphony = 106 BootyBass = 107 Primus = 108 PornGroove = 109 Satire = 110 SlowJam = 111 Club = 112 Tango = 113 Samba = 114 Folklore = 115 End Enum ID3v1-Tag einer MP3-Datei auslesen ' MP3-Infos auslesen Private Function MP3_ReadID3v1(ByVal sFIle As String) As ID3v1 Dim F As Integer Dim UDT_MP3 As ID3v1 F = FreeFile Open sFIle For Binary As #F Seek #F, LOF(F) - Len(UDT_MP3) + 1 Get #F, , UDT_MP3 Close #F If UDT_MP3.TAG = "TAG" Then ' "TAG" vorhanden? MP3_ReadID3v1 = UDT_MP3 End If End Function ID3v1-Tag speichern ' MP3-Infos schreiben Private Sub MP3_SaveID3v1(ByVal sFIle As String, _ UDT_MP3 As ID3v1) Dim F As Integer F = FreeFile Open sFIle For Binary Access Write As #F Seek #F, FileLen(sFIle) - 127 Put #F, , UDT_MP3 Close #F End Sub Beispiel ' MP3-Infos lesen und anzeigen Dim sFile As String Dim UDT_MP3 As ID3v1 sFile = App.Path & "\test.mp3" UDT_MP3 = MP3_ReadID3v1(sFile) Jetzt werden die MP3-Informationen verändert... With UDT_MP3 .Title = "MyMP3 File" .Artist = "Me" .Album = "My Album" .Year = "2002" .Comments = "No comment" .Genre = Genre.Disco End With Diese Änderungen sollen nun in die MP3-Datei gespeichert werden... MP3_SaveID3v1 txtFilename.Text, UDT_MP3 Dieser Tipp wurde bereits 43.755 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevISDN 1.0 Überwachung aller eingehender Anrufe! Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Tipp des Monats September 2024 Dieter Otter Übergabeparameter: String oder Array? Mit der IsArray-Funktion lässt sich prüfen, ob es sich bei einem Übergabeparameter an eine Prozedur um ein Array oder einer "einfachen" Variable handelt. sevAniGif (VB/VBA) Anzeigen von animierten GIF-Dateien Ab sofort lassen sich auch unter VB6 und VBA (Access ab Version 2000) animierte GIF-Grafiken anzeigen und abspielen, die entweder lokal auf dem System oder auf einem Webserver gespeichert sind. |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |