2013-04-29 6 views
-1

désolé pour ce n'est pas une question de programmation directement, mais plus indirectement que je tente de convertir par lots des fichiers audio, ce qui s'avère difficile.Démantèlement d'un fichier WAVE

J'ai un fichier audio que j'ai exporté d'un paquet. Ce fichier audio est au format RIFF WAVE. Pour autant que j'ai lu sur les en-têtes, les en-têtes normaux ont 44 octets de long. Qui contient les sous-parties "fmt" et "data". Cependant, cet en-tête montre toutes sortes d'ordures bizarres, que je ne peux pas placer n'importe où. Si quelqu'un est un gourou audio de toutes sortes, s'il vous plaît aidez-moi sur la façon de rendre ce fichier audio accessible pour la plupart des lecteurs audio? Je ne me soucie pas de perdre certaines des données d'en-tête tant qu'il joue le contenu réel.

Voici une capture d'écran de mes données d'en-tête en cours sans modification: http://puu.sh/2JtWg.png

Merci à l'avance.

Répondre

0

Il s'avère que cette chose WAVE est juste un conteneur, et il contient en fait un .ogg. J'ai utilisé l'outil ww2ogg 3rd party pour sortir ces fichiers .ogg sous forme d'onde. Merci pour toute l'aide si!

2

44Bytes est la taille d'un en-tête de fichier Wav minimal. Le format permet d'autres blocs de données dans l'en-tête en plus des blocs Riff, fmt et de données.

Il semble que vous ayez des informations de repère dans votre fichier. Ce n'est pas un problème, la plupart des lecteurs audio devraient accepter un fichier wav avec ces morceaux.

How to write cues/markers to a WAV file in .NET explique comment ajouter un fragment de repère à un fichier.

http://www.sonicspot.com/guide/wavefiles.html couvre certains des morceaux supplémentaires qu'un fichier wav peut avoir.

Mike

+0

Cher Mike, Cela donne quelques informations supplémentaires que je cherchais moi aussi. Il semble que ce fichier wave soit marqué comme format: FF FF, étant utilisé uniquement pour l'audio '' experimental ''. Est-il possible d'analyser ces données audio pour essayer d'obtenir un fichier jouable normal de toute façon? – Smileynator

+0

L'AudioFormat est FF. Une valeur autre que 1 implique une compression (https://ccrma.stanford.edu/courses/422/projects/WaveFormat/). Vous devrez rechercher où vous avez obtenu le fichier pour savoir quelle compression ils ont utilisée. Le fichier semble très bizarre car il semble avoir aussi des canaux audio FF ... – MikeJones

+0

Non, il dispose de 2 canaux audio. Je l'ai vérifié dans un atelier hexadécimal pour comparer aux fichiers WAVE par défaut. et le format est marqué FF FF, le nombre de canaux est 02 00. Je ne suis pas sûr que l'audio ait pu être créé: / – Smileynator

-1

Selon http://en.wikipedia.org/wiki/WAV il y a une table de fichiers wave avec différents comperssion. Vous pouvez simplement rechercher dans l'éditeur HEX une valeur du champ AudioFormat du bloc fmt, pour obtenir la liste des codecs les plus courants utilisés pour la compression.