Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// une carte des membres//// (apéros) codelab


#1 2012-01-21 02:07:01 Objet serial et modem 56k

yragael
nouveau membre
Lieu: Montpellier
Date d'inscription: 2010-04-17
Messages: 7

Objet serial et modem 56k



Bonjour à vous,

J'en ai marre de tourner en rond, voici mon premier post !

Max et un modem 56k se comprennent plutôt bien via l'objet serial en mode data.
Par contre en mode voice c'est la panique, je ne parviens pas à lui envoyer du son (il me demande du PCM 8 bits 8000hertz, ce que je lui fournis volontiers), ni à interpréter celui qu'il m'envoie en mode record...
Quelqu'un s'est déjà amusé avec ce genre de trucs ?
Ce doit être une histoire d'interprétation de l'ascii mais là je sèche.
Merci !

Hors ligne

 

#2 2012-01-28 22:30:29 Re : Objet serial et modem 56k

jyber
nouveau membre
Lieu: Marseille
Date d'inscription: 2012-01-28
Messages: 6

Re: Objet serial et modem 56k



Bonjour.

Les données du modem sont scalaires. Celles de l'audio, vectorielles. Est-ce qu'il ne manquerait pas une étape? Pour recevoir les données du modem, tu peux les peeker~ dans un buffer (aprés mise à l'échelle) puis les groover~ à la bonne vitesse pour tenir compte de la différence des fréquences d'échantillonnage. Dans le sens inverse, c'est record~ suivi de peek~ à la cadence du modem (il faudra respecter son contrôle de flux) et cadrage sur 8 bits.  Tout ça pour un fonctionnement par blocs (le buffer contient l'intégralité de l'audio). Pour un fonctionnement temps-réel (durée illimitée), ça risque d'être une autre paire de manches.

Est-ce que cela répond à la question?

Hors ligne

 

#3 2012-01-31 09:58:13 Re : Objet serial et modem 56k

yragael
nouveau membre
Lieu: Montpellier
Date d'inscription: 2010-04-17
Messages: 7

Re: Objet serial et modem 56k



Merci beaucoup Mister Bernier, vous m'avez mis sur la bonne voi(x)e !

Pour résumer nos échanges sur cycling74, le modem envoie (et attend) des bytes (0-255) avec un silence à 127-128. Il suffit alors de scaler en -1 1, créer l'enveloppe avec l'objet peek~ en se calant à 8000Hz. Faire le chemin inverse pour la trasmission (metro à 0.125).

Avec un chipset conexant, on serait apparemment à l'abri d'embouteillages de flux.

Pour tout ce qui est paramétrage du modem, voici ma bible depuis ces 15 derniers jours :
http://en.wikipedia.org/wiki/Voice_modem_command_set

Il y a aussi un très bon pdf qui traine jenesaisplusoù sur les "AT commands".

Spéciale dédicace à jyber !
A la bonne heure !

Hors ligne

 

#4 2012-01-31 19:56:43 Re : Objet serial et modem 56k

jyber
nouveau membre
Lieu: Marseille
Date d'inscription: 2012-01-28
Messages: 6

Re: Objet serial et modem 56k



On continue ici?

Pour se "caler sur 8000", il faut sur-échantillonner. On a deux solutions: écrire 6 fois le même échantillon dans le buffer (supposant le à 8000 et le DSP à 48000) ou groover~ à vitesse 1/6. La seconde solution est plus souple et permet les rapports non entiers. Ca, c'est pour la réception.

metro à 0.125, à mon avis ça va pas être fiable. Chez moi, il loupe des ticks en-dessous de la millisesonde. De toutes façons il y a un autre problème: serial est limité à 38400 bauds. L'audio ne peut pas être transférée en temps-réel, ni dans un sens ni dans l'autre. Pour ça, il faudrait du 115200 bauds (source Wikipedia).

Allo Houston?

Bon, je loopback un USA-28X et je regarde ce qui se passe.

Hors ligne

 

#5 2012-01-31 20:20:51 Re : Objet serial et modem 56k

yragael
nouveau membre
Lieu: Montpellier
Date d'inscription: 2010-04-17
Messages: 7

Re: Objet serial et modem 56k



Hey.

Je ne comprends pas bien le problème de sur-échantillonnage. J'échantillonne la lecture (en émission) et l'écriture (en réception) directement sur l'objet peek~ et ça passe tout seul. DSP à 48000, fichier lu en PCM 8 bits 8kHz.

Je n'ai pas l'impression que l'objet serial soit limité (Max 5). Dans le référentiel : "any value is allowable (...) some common rates are 300, (...) 38400 and 57600." Je le pousse à 115200 et il ne semble pas s'en inquiéter.

5 sur 5.

Hors ligne

 

#6 2012-02-01 00:13:05 Re : Objet serial et modem 56k

jyber
nouveau membre
Lieu: Marseille
Date d'inscription: 2012-01-28
Messages: 6

Re: Objet serial et modem 56k



Autant pour moi. Je me suis laissé induire par le help. La doc dit effectivement "any integer rate is valid" et c'est probablement juste limité par le matériel. Je suis aussi monté en 115200, sous Max 4. Chouette, j'aurai appris quelquechose ce soir.

Le ré-échantillonnage est nécessaire si tu pars d'un signal audio à 48 ou 44.1, comme adc~. J'avais supposé que tu faisais des entrées/sorties temps-réel. Si tu fais des entrées/sorties fichiers, il n'est plus question du DSP. peek~ fait partie de MSP mais il ne manipule que des scalaires, pas des vecteurs.

Hors ligne

 

#7 2012-02-01 11:48:07 Re : Objet serial et modem 56k

yragael
nouveau membre
Lieu: Montpellier
Date d'inscription: 2010-04-17
Messages: 7

Re: Objet serial et modem 56k



Ah oui en effet ce doit être une toute autre question que de transformer tout cela en téléphone temps réel. J'ai cru comprendre que les modes MST MS1T M1ST & M1S1T du +VLS permettaient le duplex mais je n'ai pas testé. Si tu avances sur la question ça pourrait un jour m'intéresser (pour l'instant je suis sur un simple serveur vocal et sans l'option "pour parler à un conseiller, tapez trois"...).

Là je coince sur un nouveau truc : le modem ne m'envoie aucune info si quelqu'un décroche suite à un appel émis. En mode data le signal reçu du fax ou du serveur distant doit remplir cette fonction, mais en voice... faut-il seulement parier sur le "allo" du correspondant ??

Hors ligne

 

#8 2012-02-01 22:27:08 Re : Objet serial et modem 56k

jyber
nouveau membre
Lieu: Marseille
Date d'inscription: 2012-01-28
Messages: 6

Re: Objet serial et modem 56k



Un MaxPhone, ça aurait de la gueule non? smile

J'ai trouvé un Olitec voice dans mes fonds de tiroir. J'arrive à le mettre en voice (AT#CLS=8, AT#VLS=2, AT#VTX) et à le faire couiner. Malheureusement je crois qu'il ne parle que ADPCM (AT#VCI? ROCKWELL;ADPCM;8). J'ai pas franchement envie de me palucher un codec ADPCM en Max.

Pour la détection du décrochage distant, il n'y a pas de vraie signalisation comme en RNIS (qu'on a consciencieusement sabordé en France, l'analogique ne devrait plus exister). Le modem doit deviner. Il y a peut-être une piste dans ce document. Voir les exemples à la fin, mot clé "ringback":

http://www.zoltrix.com/support_html/PUB … TVROCK.HTM

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024