PDA

Voir la version complète : Codecs G729 - durée de paquet



ylan
17/07/2011, 16h56
Bonjour,

Est ce que quelqu'un ici a déjà utilisé le codecs G729 acheté chez digium. Je voudrais savoir comment peut-on modifier la durée de l'échantillon. Avec les passerelles hardware on peut le modifier avec un multiple de 10ms mais avec le soft je ne sais pas comment faire

Est ce quelqu'un peut m'orienter SVP

Merci de votre aide

jean
17/07/2011, 21h03
il me semble que la syntaxe est :

allow=g729:10

ylan
17/07/2011, 21h24
Merci jean,

Je vais quand même attendre si d'autres personnes se manifestent mais je vais creuser en suivant ta piste

Encore merci

ylan
18/07/2011, 17h01
Bonjour tout le monde,

Je confirme que la syntaxe est bonne.
Suivez le lien: ici (http://forums.digium.com/viewtopic.php?t=69454)

jean
18/07/2011, 17h08
héhé... j'avais répondu sans google.... j'ai regardé le sujet il y a quelque temps.

A noter que changer le payload size est assez délicat. L'augmenter permet certes de réduire l'overhead du protocole mais le rend assez inefficace en termes de pbm de transmission. je ne retrouve plus le bel article que j'avais lu, mais en gros, il existe peu de cas ou changer la payload size est utile.

Quel est ton objectif ?

Reaper
18/07/2011, 17h22
Certaines passerelles supportent g729 d'une certaine taille, c'est moche je sais.

Comdif
18/07/2011, 22h34
super le forum déja ça répond a ma question du jour concernant la conf
sur asterisk pour le changement.

Pour ma part j'ai un big problème de qualité sur une terminaison GW et je voudrais jouer avec les longueurs de trame et comme je ne suis pas
un expert concernant les paquets et leur traitement par les codecs, ma question est peut être bête mais que se passe t'il si un des élément de la chaîne configure 20ms et l'autre 10 ms ?

jean
18/07/2011, 22h48
salut

un petit article pas mal (mais pas celui que j'ai perdu !)
http://www.rfc-archive.org/getrfc.php?rfc=4749


The embedded property of G.729.1 streams provides a mechanism to
adjust the bandwidth demand. At any time, a sender can change its
sending bit rate without external signalling, and the receiver will
be able to properly decode the frames. It may help to control
congestion, since the bandwidth can be adjusted by selecting another
bit rate.


je pense donc que le paramètre positionne pour ce que tu envoies, mais que tu ne controles pas ce que tu reçois (pas de négociation).

pour les problèmes de qualité, un truc intéressant à faire est de capturer le trafic RTP (soit direct avec wireshark, soit via un ngrep) et de regarder avec wireshark (version récente), menu telephony / rtp / show all streams / analyze (et éventuellement graphs)
tu vas voir le jitter, les drop packets & etc... ce qui permettra de comprendre pourquoi c'est pas bon.
à mon avis, changer le payload rtp va pas améliorer la qualité -> si tu le baisses, tu vas augmenter la volumétrie, si tu le montes, tu perds plus quand ça arrive...

un autre teur à regarder est de mettre la ligne en qualify=3000 par exemple, et voir, combien de fois par jour et à quels moments, elle devient unreachable

au final .... un modem adsl pourri, un routeur ou un switch qui fout le bazar, un zozo qui explose la bp... ça tourne souvent autour de ça !

Reaper
18/07/2011, 22h57
De mémoire, dans le 10ms frame il y a 15 ms de voix, et le gateway s'attend de restituer cette longueur avec ce frame, du coup lorsque tu envoie un frame de 20 il n'arrive pas et il drop. Il y a un bon example avec la courbe de ulaw dans le livre asterisk, c'est au debut de livre, il est bien expliqué pourquoi le codec est bien 64 bit/s avec la courbe de l'échantillonnage, ainsi que le principe de base de compression de voix.

ylan
19/07/2011, 12h26
héhé... j'avais répondu sans google.... j'ai regardé le sujet il y a quelque temps.

A noter que changer le payload size est assez délicat. L'augmenter permet certes de réduire l'overhead du protocole mais le rend assez inefficace en termes de pbm de transmission. je ne retrouve plus le bel article que j'avais lu, mais en gros, il existe peu de cas ou changer la payload size est utile.

Quel est ton objectif ?

Bonjour,

En fait je dois effectuer une liaison asterisk-GW sur du sdsl 256 et je voudrais avoir le max de communication de qualité abordable. Je comptais donc modifier le payload de chaque côté car mon temps de latence est assez élevé.

jean
19/07/2011, 14h35
qu'appelles-tu élevé ? plus de 200ms ?

ylan
19/07/2011, 15h34
qu'appelles-tu élevé ? plus de 200ms ?

Oui, j'ai un RTT de 350ms