Ce document résume les données détaillées dans la spécification des formats de fichier et flux UDP utilisés en D-Star.
Le document sur les données lentes en DV sont décrites dans ce document: slow_data.pdf.
J'ai trouvé ce document sur la page de téléchargement d'ircDDB-Italia
Signature | Type trame | Réservé? | Type de flux | Réservé? | ID de flux | Compteur |
4 octets | 1 octet | 3 octets | 2 octets | 3 octets | 2 octets | 1 octet |
Signature
Elle est systématiquement définie à DVST (Digital Voice STream?), soit { 0x44, 0x56, 0x53, 0x54 }.
Type trame
Valeur | Type |
---|---|
0x10 | Trame de configuration |
0x20 | Trame de voix |
Champ réservé (octets 5 à 7)
Positionner à la valeur { 0x00, 0x00, 0x00 }
Type de flux
Valeur | Type |
---|---|
0x20 | Flux de voix |
Champ réservé (octets 9 à 11)
Positionner à la valeur { 0x00, 0x01, 0x01 }
Identifiant de flux
Valeur aléatoire de 16 bits. L'identifiant doit être le même entre pour les trames constituant un flux.
Compteur
La valeur du compteur s'étend de 0 à 20. On ajoute 0x40 à la valeur de la dernière trame d'un flux voix.
La valeur du compteur est figée à 0x80 pour une trame de configuration.
La première trame constituant un flux de voix est une trame de départ, et fait 56 octets au total.
Elle contient les informations d'origine et de destination du flux.
En-tête | Drapeaux | RPT1 | RPT2 | UR | MY | MY-Short | Checksum |
16 octets | 3 octets | 8 octets | 8 octets | 8 octets | 8 octets | 4 octets | 2 octets |
Drapeaux
Définir par défaut à { 0x00, 0x00, 0x00 }.
La description exacte des drapeaux est effectuée dans la spécification du standard D-Star (japonais), section “Structure d'un paquet de voix” (音声パケットのフレーム構成).
Certaines applications définissent le premier octet à 0x40 pour mettre le bit 'répéteur' à 1.
Flag1 (フラグ1)
Bit 2 | Bit 1 | Bit 0 | Fonction |
---|---|---|---|
1 | 1 | 1 | Contrôle de station répétitrice |
1 | 1 | 0 | Réponse automatique |
1 | 0 | 1 | Inutilisé |
1 | 0 | 0 | Retransmission |
0 | 1 | 1 | ACK |
0 | 1 | 0 | Ne pas acquitter |
0 | 0 | 1 | Ne pas relayer |
0 | 0 | 0 | NULL |
Flag2 (フラグ2)
Réservé pour l'extensibilité future du protocole.
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | Numéro de bit |
---|---|---|---|---|---|---|---|---|
ID | M | Nom de champ | ||||||
0b0000 | indéfini | Valeur par défaut |
Le champ ID est prévu pour permettre d'utiliser des callsigns de taille différente dans le futur, si le changement s'avérait nécessaire.
Le champ M est un attribut spécifique au fournisseur (Vendor-specific attribute) pour permettre l'ajout de fonctions non prévues par le protocole.
Flag3 (フラグ3)
Réservé pour l'usage futur.
RPT1
Indicatif du répéteur sur 7 octets, suivi du module de destination.
Les vides sont remplacés par la valeur {0x20}.
Ainsi, pour “F4HOF C”, la valeur sera { 0x46, 0x34, 0x48, 0x4F, 0x46, 0x00, 0x00, 0x43 }.
RPT2
Indicatif du répéteur sur 7 octets, suivi de la lettre 'G'.
Les vides sont remplacés par la valeur {0x20}.
UR
Indicatif de cible. La cible par défaut est “CQCQCQ ”
Les vides sont remplacés par la valeur {0x20}.
MY
Indicatif du radioamateur en train de transmettre sur 7 octets, suivi d'un “SSID” (chiffre, lettre majuscule, ou rien).
Les vides sont remplacés par la valeur {0x20}.
MY-Short
Suffixe d'indicatif de 4 octets utilisé pour différencier deux matériels différents par exemple.
Les vides sont remplacés par la valeur {0x20}.
Checksum
Correspond au champ “P_FCS” de la spécification D-Star.
Il s'agit d'un CRC-CCITT calculé à partir des drapeaux jusqu'au champ MY-Short compris.
Le polynôme générateur utilisé est: $$ G(x) = x^{16} + x^{12} + x^{5} + 1 $$
Une trame contient 20ms de voix, et forme un paquet de 27 octets, en-tête incluse.
En-tête | Voix AMBE | Données DV |
16 octets | 9 octets | 3 octets |