-
BinaryReader et Int16[]
Bonjour,
Je voudrais savoir si l'on peut lire directement un tableau de "Int16" d'un fichier ?
Il s'agit d'un fichier *.wav, et les exemples que j'ai pu voir lisent un tableau de byte, puis le recopie dans le tableau Int16 en utilisant "Marshal"... ce qui me parait très peu efficace :roll:
Merci par avance de vos réponses
-
BinaryReader a une méthode ReadInt16, tu peux faire une boucle dessus. Maintenant faut voir niveau perf.
-
Merci de ta réponse, mais je pense que ce serait encore pire en temps d'exécution :?
-
C'est ma crainte, en effet. L'avantage qu'il pourrait y avoir est que tu ne dois pas charger tout le fichier en mémoire avant de faire le traitement.
Maintenant, de manière pragmatique, est-ce que la manière avec marshal est suffisante point de vue perf ? Si oui, autant ne pas se casser la tête ;)
-
En fait, non : je veux faire de la reconnaissance sonore en cours d'enregistrement. Le temps d'exécution est primordial et je mélange déjà le C# avec du C++. Je pense que je vais persévérer dans cette voie.
Merci quand même :) de m'avoir confirmé ce que je craignais :?