Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Utiliser le buffer d'un fichier WAV

2 réponses
Avatar
gramm
Bonjour,
Je travaille en ce moment sur un projet qui a pour but de faire des
"fingerprints" de fichiers audio, en utilisant la librairie libfooid
(www.foosic.com).
J'ai réussi à initialiser celle-ci, mais je suis bloqué lorsqu'il me
faut donner le fichier audio à une fonction.

Voila le prototype de la fonction :

int fp_feed_short(t_fooid *fid, short *data, int len)

t_fooid est une structure qu'utilise la librairie
len est la taille du buffer
et short *data est donc un element du buffer du fichier wav, si je ne me
trompe pas.

J'ai réussi a utiliser l'api win32, mais je ne sais pas ou trouver le
buffer de lecture du fichier wav (meme avec la doc).

J'aimerai donc avoir votre aide pour réussir à utiliser le buffer. La
libraire libfooid ne contient quasiment pas de documentation et ne donne
donc aucune piste pour "nourrir" la fonction feed_short.

2 réponses

Avatar
Vincent Burel
"gramm" wrote in message news:gp5975$54c$
Bonjour,
Je travaille en ce moment sur un projet qui a pour but de faire des
"fingerprints" de fichiers audio, en utilisant la librairie libfooid
(www.foosic.com).
J'ai réussi à initialiser celle-ci, mais je suis bloqué lorsqu'il me
faut donner le fichier audio à une fonction.

Voila le prototype de la fonction :

int fp_feed_short(t_fooid *fid, short *data, int len)

t_fooid est une structure qu'utilise la librairie
len est la taille du buffer
et short *data est donc un element du buffer du fichier wav, si je ne me
trompe pas.

J'ai réussi a utiliser l'api win32, mais je ne sais pas ou trouver le
buffer de lecture du fichier wav (meme avec la doc).

J'aimerai donc avoir votre aide pour réussir à utiliser le buffer. La
libraire libfooid ne contient quasiment pas de documentation et ne donne
donc aucune piste pour "nourrir" la fonction feed_short.



Et bien doit falloir charger en mémoire le CHUNK 'data' du fichier WAV.
(générallement par parties : par buffer d'un taille à définir selon vos
contraintes ou envie). et ensuite vous n'avez plus qu'à fournir un pointeur
sur ce buffer à la fonction fp_feed_short.

Pour lire un fichier WAV, vous pouvez commencez par cette succinte
explication (suffisante pour récupérer les data).
http://pagesperso-orange.fr/vb-audio/fr/pub/tech_000/wave_format.htm

VB
Avatar
gramm
Vincent Burel a écrit :
"gramm" wrote in message news:gp5975$54c$
Bonjour,
Je travaille en ce moment sur un projet qui a pour but de faire des
"fingerprints" de fichiers audio, en utilisant la librairie libfooid
(www.foosic.com).
J'ai réussi à initialiser celle-ci, mais je suis bloqué lorsqu'il me
faut donner le fichier audio à une fonction.

Voila le prototype de la fonction :

int fp_feed_short(t_fooid *fid, short *data, int len)

t_fooid est une structure qu'utilise la librairie
len est la taille du buffer
et short *data est donc un element du buffer du fichier wav, si je ne me
trompe pas.

J'ai réussi a utiliser l'api win32, mais je ne sais pas ou trouver le
buffer de lecture du fichier wav (meme avec la doc).

J'aimerai donc avoir votre aide pour réussir à utiliser le buffer. La
libraire libfooid ne contient quasiment pas de documentation et ne donne
donc aucune piste pour "nourrir" la fonction feed_short.



Et bien doit falloir charger en mémoire le CHUNK 'data' du fichier WAV.
(générallement par parties : par buffer d'un taille à définir selon vos
contraintes ou envie). et ensuite vous n'avez plus qu'à fournir un pointeur
sur ce buffer à la fonction fp_feed_short.

Pour lire un fichier WAV, vous pouvez commencez par cette succinte
explication (suffisante pour récupérer les data).
http://pagesperso-orange.fr/vb-audio/fr/pub/tech_000/wave_format.htm

VB





Je vais essayer cela. J'ai l'impression que c'est exactement ce qu'il me
fallait. Merci !