Question

Je travaille sur un importateur audio en JAVA (utilisé dans un séquenceur de batterie) et j'ai le problème suivant avec l'importation de fichiers AIFF:

J'ai 2 fichiers AIFF du même type (24bit, 44100kHz, mono), on est créé sur un Mac, l'autre est créé avec WaveLab sur un ordinateur Windows. Les deux fichiers sont PCM non compressé, les deux sont FORM == AIFF.

Le AIFF du Mac est bigEndian (comme il devrait être), le AIFF de Wavelab (fenêtres) est littleEndian.

peut être joué deux fichiers correctement dans WaveLab arrière (Windows), ainsi que dans Quicktime (Windows). Comment ces outils détecter le boutisme de ces fichiers? De toute façon, il doit être possible, sinon au moins l'un des fichiers sonnerait comme le bruit (c'est ce qui se passe dans ma demande).

Y at-il des informations cachées dans le fichier en-tête ou tout autre moyen de déterminer le boutisme du fichier AIFF? Toutes les suggestions?

Merci beaucoup

Était-ce utile?

La solution

Un googler rapide dit, les fichiers AIFF sont grand endian.

Toutefois, selon Wikipedia il y a un autre format appelé AIFF-C qui compresse Les données. Apple utilise peu endian ces jours-ci et a créé une méthode de compression de faux nom SOWT qui signifie essentiellement « pas de compression, mais peu endian ». Vous pourriez avoir à vérifier cela.

En dehors de cela, AIFF plaine fournit aucun moyen de vérifier boutisme. Un AIFF standard qui est codée dans peu endian semble violer la spécification.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top