Primero, permítanme hablar brevemente sobre la etiqueta ID3 de MP3, porque se usa principalmente para operar esto.
Al principio el MP3 no tenía información de cantantes, años, álbumes, etc. como vemos hoy en día.
Sólo hay algunos parámetros simples como sí/no para indicar si es privado o tiene derechos de autor, etc. Esto ha traído muchos inconvenientes al trabajo relacionado con MP3. En 1996, un extranjero propuso agregar un dato después de cada MP3. , usando Para almacenar la información anterior, luego se convirtió en id3 v1. Hasta donde yo sé, será mejor que lo compruebe yo mismo.
Todavía es un viejo hábito utilizar metadatos para introducir DLL. Ya publiqué al respecto. Si no lo sabe, compruébelo usted mismo.
Mira el código
<!--TIPO DE METADATOS=typelib
UUID=00000205-0000-0010-8000-00AA006D2EA4
NOMBRE=Biblioteca de tipos ADODB
-->
<%
Función ConvertBin(Binario)
'Esta función convierte un byte binario en un byte ASCII.
para i = 1 a LenB(Binario)
strChar = chr(AscB(MidB(Binario,i,1)))
ConvertBin = ConvertBin y strChar
Próximo
Función final
dimobjStream
dim strTag, strSongName, strArtist, strAlbum, strAño, _
strComment, strGenre, strFile
'Especifique la carpeta para iterar, mostrando todos los MP3
Carpeta constante = C:/mp3s/
'Toma la información de la carpeta
Dim objFSO, objFolder, objFile
Establecer objFSO = Server.CreateObject(Scripting.FileSYstemObject)
Establecer objFolder = objFSO.GetFolder(carpeta)
'Crea el objeto Stream
establecer objStream = Server.CreateObject(ADODB.Stream)
objStream.Type = adTypeBinary
'Recorre los archivos en la carpeta
Para cada archivo obj en objFolder.Files
'Abre la corriente
objStream.Open
objStream.LoadFromFile objFile.Path
'Leer los últimos 128 bytes
objStream.Position =objStream.tamaño - 128
'Lea la información de la etiqueta ID3 v1
strTag = ConvertBin(objStream.Read(3))
si ucase(strTag) = TAG entonces
strSongName = ConvertBin(objStream.Read(30))
strArtist = ConvertBin(objStream.Read(30))
strAlbum = ConvertBin(objStream.Read(30))
strAño = ConvertBin(objStream.Read(4))
strComment = ConvertBin(objStream.Read(30))
terminar si
'Mostrar los resultados
respuesta.escribir <tabla><tr><td colspan=2><h3> & _
Información de etiqueta ID3 para:</td></tr><tr> & _
<td colspan=2> & objFile.Name & </td></tr>
respuesta.escribir <tr><td><b>Artista: </b></td> & _
<td> & strArtista & </td></tr>
respuesta.escribir <tr><td><b>Pista: </b></td> & _
<td> & strNombreCanción& </td></tr>
respuesta.escribir <tr><td><b>Álbum: </b></td> & _
<td> & strÁlbum & </td></tr>
respuesta.escribir <tr><td><b>Año: </b></td> & _
<td> & strAño & </td></tr>
respuesta.escribir <tr><td><b>Comentario: </b> & _
</td><td> & strComentario & </td></tr>
respuesta.escribir </table>
objStream.Cerrar
Respuesta.Escribir <p><hr><p>
Próximo
Establecer objStream = Nada'Limpiar...
%>
Pruébalo tú mismo