J'utilise libusb pour obtenir des données en temps réel à partir d'un périphérique audio USB. Ma taille de paquet maximum est de 196 octets. Je sais que 4 de ces octets sont ajoutés pour la somme de contrôle. Je veux identifier les octets utilisés pour la somme de contrôle afin que je puisse stocker seulement les données utiles du transfert mais j'ai quelques doutes:Comment identifier les octets de données utilisés pour CRC (checksum) dans un transfert ISO USB?
1) Ces octets sont-ils ajoutés au début ou à la fin du paquet?
2) Ces octets ont-ils une valeur réservée?
3) En cas de perte d'octets de données dans le transfert. Quelles considérations dois-je utiliser pour les octets utilisés pour la somme de contrôle?
EDIT 1
je ces doutes parce que mon dispositif spécifique a une interface et alt-cadre qui fonctionne avec une fréquence d'échantillonnage de 48 kHz, 2 canaux, profondeur 16 bits et avec un maximum de paquet Taille de 196 octets .
Donc, il y a 48 échantillons * 2 de deux canaux * 2 octets = 192 octets
Alors mes paquets devraient être de 192 octets, mais quand je mets mon appareil à travailler avec cette interface et alt-cadre Je commence pour recevoir des paquets de 196 octets. L'interface correspondante et le paramètre alt pour le point de sortie OUT ISO fonctionnent à une fréquence d'échantillonnage de 48 kHz, 2 canaux, 16 bits de profondeur et avec une taille de paquet maximale de 192 octets.
4) Si ces octets ne proviennent pas de la somme de contrôle, pourquoi ces octets sont-ils ajoutés?
Vous devriez être en mesure d'obtenir cette information de la spécification du protocole. Si vous n'en avez pas, vous devrez l'inverser. –