EDITEUR DE TAGS MP3 en Langage C

Mik -  
 Utilisateur anonyme -
Je dois programmer un éditeur de tags mp3 en langage C.
J'ai vu que la partie ID3V1 d'un fichier mp3 se trouve dans les 128 derniers bits du fichier mp3.

Comment accéder à un bit en langage C? j'ai essayé avec fseek et fgets mais j'y arrive pas !!!

Est-il possible de faire afficher une chaine de caractère correspondant à un intervalle de bits spécifique ?
Merci
A voir également:

2 réponses

Utilisateur anonyme
 
si je me souviens bien la fonction fgets n'est pas appropriée pour les fichiers binaires. Utilise plutôt (avec fseek) les fonctions fread() (et fwrite() pour éventuellement les modifier).
La fonction fseek te permet de partir d'où tu veux, je ne sais plus la syntaxe mais pour ton cas, tu dois dire fseek(par rapport à la fin du fichier, 16);
(128 bits = 16octets)
-1
fiddy Messages postés 11653 Statut Contributeur 1 847
 
J'espère pour lui qu'il a résolu le problème depuis le temps (2004).
-1
Utilisateur anonyme > fiddy Messages postés 11653 Statut Contributeur
 
Ah mdr j'avais pas fait attention. C'est curieux, j'ai répondu parce que je le voyais dans la liste des plus récents tout à l'heure.

Ma réponse pourra toujours servir éventuellement à qqu'un qui tomberait sur ce sujet dans ses recherches ^^
-1
tafiscobar Messages postés 1281 Statut Contributeur 177
 
voici une fct qui permet de lire n bits a partir de la position p (attention, cela les cadre a droite)
unsigned readBits (int x, int n, int p) {
return (x >> (p+1 -1)) & ~ (~0 << n);
}

cela vient du livre de Ritchie et kernighan.
ex : readBits (x, 4, 3) : retourne les bits 4,3 et 2

tafiscobar "lou waye def bopame"
la nullite n'existe pas, l'ignorance oui, ah je suppose!!!
-2