FR 2535490 A1 19840504 FR 8317482 A 19831103 SYSTEME INFORMATIQUE POUR LE TRAITEMENT DE DONNEES VOCALES La présente invention concerne l'édition de données vocales. La présente invention a pour objet un système de traitement d'information comportant des moyens d'acquisition de signal continu destinés à l'acquisition d'un signal électrique à variation continue correspondant à un message vocal, des moyens de numérisation destinés à numériser le signal électrique à variation continue pour produire des données vocales discrètes correspondant à la qualité audible du message vocal, des moyens d'acquisition de données dis- crètes destinés à l'acquisition de données discrètes correspondant à des caractères alphanumériques, des moyens d'acquisition de signaux discrets destinés à l'acquisition de signaux discrets comprenant des ordres d'édition et de commande, une mémoire destinée à l'enregistrement de données sous forme discrète, des moyens de visualisation destinés à produire une visualisation, et un processeur, tous ces élé- ments étant interconnectes fonctionnellement par des conduc- teurs de commande et des canaux de transfert de données, avec un programme pour le fonctionnement du processeur enre- gistré dans la mémoire de façon que le processeur commande le fonctionnement du système pour: enregistrer les dcnnées vocales discrètes dans la mémoire, simultanément à l'acqui- sition du message vocal, enregistrer les données de caractè- res dans la mémoire simultanément à l'entrée de caractères, établir dans la mémoire un enregistrement de séquence indi- quant un ordre unifié des données de message vocal et de caractères, visualiser une séquence de marques de symbole pour les données vocales et de marques de caractères,chaque marque 25354 O de symbole représentant un incrément prédéterminé de message vocal acquis et chaque marque de caractère correspondant à l'un des caractères introduits, la séquence visualisée correspondant à la séquence présente dans l'enregistrement, et réviser l'enregistrement de séquence, sous la dépendance d'ordres d'édition introduits, pour tenir compte de change- ments d'édition dans l'ordre des données vocales et de carac- tères. L'invention peut en outre faire intervenir un pro- gramme de fonctionnement tel que le processeur commande de plus le fonctionnement du système pour: réagir à des signaux discrets prédéterminés acquis simultanément à l'acquisition du message vocal, pour indiquer dans l'enre- gistrement de séquence le point auquel chaque signal discret prédéterminé a été acquis; présenter sur la visualisation une indication distinctive du moment auquel chacun de ces signaux acquis simultanément a été acquis, par rapport à d'autres éléments des données vocales; établir en mémoire un pointeur définissant une position de pointeur dans la séquen- ce de données, présenter dans la visualisation une marque visible correspondant à la position de pointeur; déplacer, sous la dépendance de signaux d'entrée acquis, la position de pointeur définie dans la séquence et déplacer cette posi- tion de façon correspondante dans la visualisation; produire, sous la dépendance de signaux d'entrée acquis, un signal audio variant de façon continue qui correspond aux données vocales discrètes enregistrées en mémoire, la production de ce signal commençant à un point dans la séquence de données vocales qui correspond à la position de pointeur définie, telle qu'elle est définie au moment considéré, et suivant l'ordre qui est défini au moment considéré dans l'enregistre- ment de séquence; et avancer le pointeur dans les données de message vocal, en correspondance avec la progression de la production du signal audio L'invention peut également faire intervenir un circuit destiné à détecter l'activité d'acqui- 25354 O sition d'information audio, et interrompre l'enregistrement des données de message vocal dans la mémoire, en l'absence d'activité. L'invention offre à un auteur une représentation graphique visible de la structure du texte qu'il dicte, avec des indications qu'il peut insérer concernant des paragra- phes ou d'autres divisions fonctionnelles Elle permet à un auteur d'éditer avec une grande souplesse le texte qu'il dicte, par déplacement, suppression, insertion et reproduc- tion, tandis que la présentation visuelle l'aide à suivre les opérations d'édition et à -localiser le point auquel il doit effectuer des révisions d'édition L'invention permet également à l'auteur d'introduire par un clavier des notes et des instructions intercalaires dans son enregistrement dicté. L'invention sera mieux comprise à la lecture de la description qui va suivre d'un mode de réalisation, donné à titre d'exemple non limitatif La suite de la description se réfère au dessin annexé qui représente sous forme de schéma synoptique un système conforme à l'invention. Un système d'édition de données vocales 10 confor- me à l'invention comprend des connexions 12 destinées à acquérir et à fournir un signal électrique à variation conti- nue correspondant à un message vocal Un signal acquis peut être obtenu à partir d'un microphone 50 ou d'une ligne télé- phonique 52, par l'intermédiaire d'un circuit d'interface 54 comme le montre la représentation de la figure, ou d'autres manières On peut utiliser le signal fourni pour attaquer un haut-parleur 56 comme il est représenté, ou d'autres maniè- res Les connexions 12 sont connectées à un convertisseur analogique-numérique 14, qui effectue une conversion bidi- rectionnelle Le convertisseur 14 est lui-même connecté à un convertisseur série-parallèle 30 fonctionnant dans les deux directions Un capteur audio 28 est connecté aux connexions 12 et il émet un signal de commande qui indique s'il y a une 253549 O activité sur le canal d'acquisition de message vocal Le système 10comprend également une unité de visualisation 31 qui peut avantageusement comporter un écran cathodique, et un clavier 16, qui comporte une section 18 pour l'entrée de caractères alphanumériques et une section 20 pour l'entrée de signaux d'édition et de commande. Le système 10 comprend également un processeur 26, qui peut être le modèle Z 80 fabriqué par Zilog, et une mémoire 22 qui est destinée à enregistrer des données sous forme de bits et qui comporte une section 24 dans laquelle est enregistré un programme de fonctionnement Tous les élé- ments du système décrit ci-dessus sont interconnectés par un bus de données 58, un bus d'adresse 60 et des conducteurs de commande 62, comme l'indique la figure Tous les éléments du système-10 décrit ci-dessus sont des articles classiques dis- ponibles dans le commerce, et la manière de les interconnec- ter est bien connue delhomme de l'art. Le programme de fonctionnement de l'éditeur de message vocal qui est enregistré en mémoire commande le fonctionnement du système, en association avec le processeur 26, dans l'accomplissement-de toutes les fonctions de l'édi- teur de message vocal Lorsqu'un auteur utilisant le système parle dans un micro, le message vocal acquis par le système sous la forme d'un signal analogique est numérisé et intro- duit en mémoire sous forme discrète Simultanément, une représentation du message vocal utilisant une série de symbo- les vocaux, chacun d'eux représentant une seconde de message vocal, est produite et visualisée sur l'écran cathodique. Pendant les-pauses de la voix, l'entrée de données est supprimée pour éviter un gaspillage de la capacité de mémoi- re Simultanément à la dictée, l'auteur peut introduire par le clavier des signaux d'interruption qui produisent des pointeurs de mémoire indiquant le moment auquel-l'introduc- tion a été faite, dans l'enregistrement de donnéeset qui provoquent la visualisation de symboles vocaux successifs à partir 25354 t O de la ligne de visualisation suivante, ce qui simule une cou- pure correspondant à un paragraphe Simultanément, le système produit un nombre porté en marge pour permettre d'identifier aisément la coupure L'auteur peut également interrompre la dictée avec un signal introduit au clavier et introduire un texte alphanumérique par le clavier Ce texte est introduit en mémoire et est visualisé sur l'écran cathodique de visua- lisation. Le système fonctionnant sous la commande du pro- gramme conserve un enregistrement indiquant une séquence uni- fiée de données vocales, de données de texte et d'indications de coupure L'ordre de cette séquence est initialement l'ordre temporel dans lequel le système a acquis les données. Le système produit également un pointeur de mémoire qui indi- que une position de pointeur dans la séquence de données Une marque de curseur est présentée sur la visualisation, à une position correspondante L'auteur peut manipuler ce pointeur et cette marque de curseur liés pour désigner n'importe quel point particulier dans la séquence de données unifiée En utilisant le curseur et les signaux d'édition de clavier, parmi lesquels "insertion", "suppression", "remplacement", "déplacement" et "copie", l'auteur peut accomplir toutes ces fonctions d'édition, en les appliquant sans avoir à détermi- ner si les données sont des données vocales, de texte ou de marques La présentation faite sur le dispositif de visuali- sation fait apparaître tous les changements d'édition au fur et à mesure qu'ils sont effectués En utilisant le curseur et des signaux introduits au clavier, l'auteur peut également reproduire le message vocal avec n'importe quel dispositif audio connecté. Une description plus détaillée du programme de fonctionnement est faite ci-dessous, Un programme de fonctionnement d'éditeur de message vocal est enregistré dans la mémoire 22 et, en association avec le processeur 26, il commande le fonctionnement du systè- 253549 O me dans l'accomplissement de toutes les fonctions de l'édi- teur de message vocal Le programme de l'éditeur de message vocal utilise une file d'attente de programmes, et des sous- programmes appelés par l'éditeur de message vocal sont tout d'abord introduits dans la file d'attente de programmes, et ils sont exécutés par la suite lorsque le processeur arrive à leur niveau Avec une telle file d'attente,un programme de gestion d'interruption introduit dans la file un sous-pro- gramme destiné au traitement de l'interruption, puis il reva- lide immédiatement les interruptions et retourne au programme principal Les sous-programmes sont introduits dans la file et sont pris en charge par le processeur lorsque ce dernier est disponible pour le faire Un module de file d'attente de programmes contient des sous-programmes destinés à manipuler la file d'attente de programmes de l'éditeur de message vocal. Ces sous-programmes sont les suivants: INIT$FILE$PROG: Initialise la file d'attente de program- mes. INTR$FILE$PROG: Introduit une adresse de procédure et un paramètre d'adresse dans la file d'attente de programmes. EXEC$FILE$PROG: Vérifie si une paire procédure/paramètre est dans la file Dans l'affirmative, il appelle la procédure en lui transmettant le paramètre d'adresse unique. Le programme principal de l'éditeur de message vocal est très simple, à cause de la file d'attente de programmes de l'éditeur de message vocal Le programme principal de l'édi- teur de message vocal remplit deux fonctions: 1) Il appelle un programme d'initialisation, INIT$EDITEUR$VOCAL, pour ini- tialiser toutes les structures de données et les dispositifs d'entrée/sortie matériels qu'utilise l'éditeur de message vocal; 2) Il se reboucle ensuite indéfiniment, en appelant EXEC$FILE$PROG pour exécuter n'importe quels autres sous- programmes présents dans la file d'attente de programmes Si l'utilisateur indique qu'il désire sortir de l'éditeur de message vocal, par exemple, la procédure SORTIE$EDITEUR est 25354 to introduite dans la file d'attente de programmes Le proces- seur appelle ce programme dès qu'il le peut, ce qui fait retourner l'éditeur de message vocal vers l'application qui l'a appelé. La description précédente permet de voir qu'une fois que l'éditeur de message vocal a été appelé et a initia- lisé les variables et le matériel, il se reboucle simplement en attendant que quelque chose apparaisse dans la file d'attente de programmes On utilise des procédures d'inter- ruption pour placer quelque chose dans cette file d'attente. Des procédures d'interruption sont exécutées lorsque apparaît une interruption de matériel Lorsque ceci se produit, le processeur invalide les interruptions, il introduit dans la pile le compteur de programme courant et passe à une procédu- re destinée à la gestion de l'interruption. L'éditeur de message vocal fonctionne dans le mode d'interruption 2 du Z 80, et il reçoit des interruptions pro- venant des dispositifs suivants, donnés dans l'ordre de prio- rité des interruptions: 1 Canal CTC O 2 Canal CTC 1 3 Canal CTC 2 4 Canal CTC 3 Compte de Blocs: ce canal produit une interruption lorsque le matériel audio vient juste de terminer l'enregistrement ou la reproduction d'une mémoire tampon d'informa- tion audio numérisée. Sonnerie du Téléphone: ce canal produit une interruption chaque fois que le téléphone sonne. Appui sur une touche: l'éditeur de message vocal programme ce canal de façon à produire -une interruption chaque fois qu'un appui sur une touche est reçu, Rythmeur: l'éditeur de message vocal pro- gramme ce canal de façon qu'il produise une interruption toutes les 10 ms ( 0,010 secon- de). Les adresses des programmes de gestion d'interrup- tion pour les dispositifs ci-dessus se trouvent dans une table de vecteurs d'interruption, en mémoire Lorsque l'un quelcon- que des dispositifs ci-dessus produit une interruption, l'adresse correspondante dans la table de vecteurs d'interrup- tion est appelée. Les programmes de gestion d'interruption de l'édi- teur de message vocal se trouvent dans deux modules: le modu- le d'interruptions et le module de programmes de gestion d'entrée/sortie. Le module d'interruptions consiste seulement en un groupe de programmes au niveau assembleur, à raison d'un pour chaque dispositif produisant des interruptions Tous ces pro- grammes sauvegardent les registres dans la pile, ce qu'on appelle une procédure PLM, puis ils rétablissent les regis- tres, valident les interruptions et retournent Les program- mes de gestion sont les suivants: audio: Programme de gestion du canal CTC 0, appelle la procédure PLM INTERRUPT$AUDIO. sonnerie: Programme de gestion du canal CTC 1, appelle la procédure INTERRUPT$SONNERIE. GES Te TOUCHE: Programme de gestion du canal CTC 2, accomplit une opération IN ( 00) pour déterminer la touche qui a été enfoncée, sauvegarde cette informa- tion dans une variable TOUCHEBRUTE, appelle la procédure PLM TOUCHE$OBTENUE. rythmeur: Programme de gestion du' canal CTC 3, appelle la procédure PLM RYTHMEUR$DIX$MS. Le module de programmes de gestion d'entrée/sortie contient des procédures PLM qui effectuent la majeure partie de la gestion des interruptions I 1 contient également quelques autres programmes divers Les programmes d'interrup- tion sont décrits brièvement ci-dessous: INTERRUPT$SONNERIE: Introduit dans la file d'attente de pro- grammes une procédure qui présentera le message: "Votre téléphone sonne, appu- yez sur TAB". TOUCHE$ O BTENUE: Sa fonction caractéristique consiste simplement à introduire la procédure TRAITEMENT$TOUCHIE dans la file d'attente de programmes C'est TRAITEMENT$TOUCHE qui accomplit réellement la gestion de l'appui sur une touche. RYTHMEUR$DIX$MS: Appelle d'autres procédures PLM qui accomplissent des contrôles périodiques portant sur certaines conditions. Presque toutes les fonctions de l'éditeur de message 25354,0 vocal sont déclenchées lorsque l'utilisateur appuie sur une touche L'éditeur de message vocal utilise un système basé sur une table pour déterminer la procédure à appeler en répon- se à l'appui sur une touche donnée. Les touches du poste de travail sont divisées en 16 catégories différentes Un nombre de O à 15 est affecté à chaque catégorie Aucune touche ne peut apparaître dans plus d'une catégorie Les numéros de catégorie et les touches de chaque catégorie sont indiqués ci-après. Numéro de catégorie 9 Description catégorie "touche d'enregistrement" catégorie "touche d'arrêt" catégorie "touche de reproduction/arrêt" catégorie "curseur" catégorie "passage" catégorie "nombre" catégorie "texte" catégorie arrière" catégorie catégorie tage" catégorie "espacement "marque" "renuméro- "édition" catégorie "exécution" catégorie "annulation" catégorie "touche d'aide" catégorie "touche de téléphone" catégorie "touche invalide" Touches INSERTION STOP Barre d'Espacement, (POSITION INITIALE) Curseur Nord, Curseur Est, Curseur Sud, Curseur Ouest PASSAGE A LA PAGE SUIVAN- TE 0 à 9 A Z, a z, virgule, point l * ó*&()- =+l l;: '"/? z Touched'Espacement Arriè- re RETOUR, NOTE SUPPRESSION, REPRODUCTION, DEPLACEMENT, COPIE EXECUTION ANNULATION ORDRE, (AIDE) TAB Toutes les autres tou- ches Il existe touche de dants(O - une table de traduction qui convertit les codes de matériel bruts en numéros de catégorie correspon- ) Cette table se trouve dans le secteur zéro du 25354 t O fichier "TABLCAT-VOC" Le secteur un de ce fichier contient la table de traduction pré-WISCII standard pour l'appui sur les touches Il est important de noter que la table de caté- gorie est indépendante du positionnement de-clavier Par exemple, les touches ANNULATION et POSITIONNEMENT, ANNULA- TION, sont toutes deux dans la catégorie "ANNULATION" ( 13). Ceci n'affecte cependant pas les caractères de texte en majuscules et en minuscules, du fait qu'ils sont tous dans la catégorie ";texte" ( 7). L'éditeur est divisé en différents états de fonc- tionnement Les touches peuvent avoir des significations différentes en fonction de la valeur de l'état courant, ce qui fait qu'une table de procédure est définie pour chaque état Ces tables de procédure sont appelées des tables d'état Les tables d'état sont définies dans le module de tables d'état. Les tables d'état de l'éditeur de message vocal contiennent des index qui désignent des rubriques d'une gran- de table de procédures On peut trouver cette table dans le module de tables de programme, contenant 36 rubriques. Au passage initial à l'éditeur, l'état-principal est l'état de fonctionnement courant Lorsque de nouveaux états de fonctionnement sont mis en fonction, les anciens états, accompagnés d'un index du message guide-opérateur cou- rant sur l'écran, sont introduits dans une pile d'états On supposera que l'utilisateur appuie sur la touche SUPPRESSION, alors qu'il est dans l'état principal L'état principal est introduit dans la pile d'états et l'état de définition de segment devient maintenant l'état courant Le message guide- opérateur "Que faut-il supprimer ?" apparaît sur l'écran. On supposera maintenant que l'utilisateur appuie sur la touche PASSAGE A LA PAGE SUIVANTE L'état de défini- tion de segment est introduit dans la pile, et le message guide-opérateur est également introduit dans la pile d'état. Le nouvel état est l'état de passage Le message guide-opéra- teur "O faut-il aller" apparaît sur l'écran L'utilisateur frappe un nombre et appuie sur EXECUTION Ceci exécute une procédure de passage au nombre introduit. A ce point, l'état de définition de segment et le message guide-opérateur sont extraits de la pile Le message "Que faut-il supprimer ?" est à nouveau présenté sur l'écran. L'utilisateur frappe EXECUTION, et une procédure est appelée pour supprimer la partie concernée du fichier de message vocal L'état principal est ensuite extrait de la pile, et on est ramené à l'état de fonctionnement d'origine. En plus des tables d'état elles-mêmes, le module de tables d'état contient également des procédures pour manipu- ler la pile d'état Ces procédures sont les suivantes INIT$ETAT Initialise la pile d'état. NOUV$ETAT Introduit l'état ancien dans la pile, prend l'état spécifié comme état courant. EXTR$ETAT: Extrait un état de la pile, prend cet état comme état courant. Le module de table d'état contient également un programme qui, à partir d'un numéro de catégorie, retourne l'adresse de la procédure qui correspond à cette catégorie pour l'état cou- rant ADR$PROGRAMME Une catégorie étant donnée, cette procédure recherche dans la table de l'état courant l'adresse de la procédure qui correspond à *cette catégorie. La décision d'appeler une procédure particulière peut ainsi être résumée de la façon suivante 1) Interruption d'appui sur une touche. 2) GEST$TOUCHE sauvegarde les registres, place le code de touche de matériel dans la variable TOUCHEBRUTE, appelle TOUCHE$OBTENUE. 3) TOUCHEBRUTE accomplit les actions suivantes a) si une erreur irrécupérable s'est produite, passage en sortie. b) si on a frappé POSITIONNEMENT$PAGE, accomplisse- ment d'un vidage. c) si la touche précédente n'a pas encore été trai- tée, la touche courante est ignorée. d) introduction de l'adresse de la procédure TRAITEMENT$TOUCHE ainsi que du paramètre TOUCHRBRUTE dans la file d'attente de programmes. 4) TRAITEMENT$TOUCHE est extraite de la file d'attente de pro- grammes et exécutée, ce qui accomplit les actions suivan- tes: a) traduction de l'appui sur une touche, en utili- sant la table de traduction. b) détermination du numéro de catégorie pour cette touche, en utilisant la table de catégories. c) si le bit de fort poids du numéro de catégorie est zéro, prise en charge de cet appui sur une touche. d) effacement de tout message d'erreur. e) arrêt'des fonctions audio, à l'exception de RETOUR et de la catégorie "reproduction/arrêt". f) appel de ADR$PROGRAMME, et transmission de cette procédure à la catégorie, pour obtenir l'adresse de la procédure à laquelle on doit passer. g) introduction dans la file d'attente de program- -mes de cette adresse de procédure et de l'appui sur une touche traduit. ) Le programme approprié ainsi que l'appui sur une touche traduit sont extraits de la file d'attente de programmes et exécutés. Des procédures supplémentaires peuvent être divi- sées grossièrement en deux parties Il y a pour chaque struc- ture de données des modules de bas niveau qui effectuent des opérations sur cette structure L'index de fichier (index audio, table de marques, table de notes), des fonctions audio et l'écran constituent des exemples représentatifs de modu- les de bas niveau. La seconde partie est constituée par les programmes de haut niveau Ces procédures sont appelées de façon carac- téristique par le système de traitement des appuis sur les touches (leurs adresses sont dans la table de programmes), et elles peuvent elles-mêmes appeler les programmes de niveau inférieur-qui accomplissent la majeure partie du travail On peut donc les considérer comme une interface entre les pro- cédures de gestion des appuis sur les touches et les procédu- res de bas niveau effectuant le gros du travail. Le module d'interface d'utilisateur (V:voix rrr plm. ve intutilisateur) contient des procédures de haut niveau pour 1.3 - des fonctions audio, de marquage de section et de renumérota- ge: REPRO De ARRET: INSERTION$MARQUE: RENUMEROTAGE: REN$EXECUTION: RE Ni ANNULATION: Procédure appelée chaque fois qu'on appuie sur une touche dans la catégorie "reproduction/arrêt" Si la fonction- audio est arrêtée au moment considéré, cette procédure amène le curseur au début du secteur audio suivant et commence la reproduction Si la fonction audio est en cours de reproduction ou d'enregistre- ment, elle l'arrête. Procédure appelée lorsqu'on appuie sur une touche dans la catégorie "marque" Si on a introduit une marque de paragraphe, elle indique sa position exacte sur l'écran et appelle le programme de module de fenêtre approprié pour passer à ce programme Si on a appuyé sur la touche NOTE,la procédure détermine si le curseur est sur une note au moment considéré. Dans la négative, elle en crée une Dans un cas comme dans l'autre, on passe au mode de texte. Procédure appelée lorsqu'on appuie sur une touche dans la catégorie "renumérota- ge"l L'éditeur est placé dans l'état de renumérotage et le message guide-opéra- teur "Renumérotage des marques ?" est présenté. Procédure appelée lorsqu'on appuie sur EXECUTION alors qu'on est dans l'état de renumérotage Elle appelle une procédure de table de marques pour renuméroter les marques, pour renouveler l'information présentée sur l'écran, et pour extraire de la pile l'état précédent. Procédure appelée lorsqu'on appuie sur CANCEL alors qu'on est dans l'état de renumérotage Elle extrait de la pile l'état précédent. Le module d'espacement arrière met en oeuvre la fonction d'espacement arrière Le fait d'appuyer sur la tou- che d'espacement arrière fait reculer le curseur de cinq secondes et provoque la reproduction pendant cinq secondes. Si on appuie N fois, le curseur recule de N * 5 secondes et la reproduction a lieu pendant la même durée Pendant la reproduction, l'appui sur n'importe quelle touche autre que la touche d'espacement arrière arrête la reproduction, ce qui annule complètement la fonction d'espacement arrière. Lorsqu'on appuie sur la touche d'espacement arrière, il s'écoule une durée de 350 millisecondes avant le début de la reproduction Ceci a pour but de laisser à l'utilisateur le temps d'appuyer de façon répétée sur la touche d'espacement arrière avant que la reproduction ne commence Le module d'espacement arrière utilise trois variables pour accomplir ces fonctions: modeeea: temps$ea: compt$reprod$ea: Etat " 1 " si on effectue un espacement arrière, " O " dans le cas contraire. Le temps correspondant au curseur lorsque l'utilisateur a appuyé pour la première fois sur ESPACEMENT ARRIERE La reproduc- tion aura lieu jusqu'à cette position,. mais pas au-delà, indépendamment du nombre d'appuis sur cette touche. Compteur décrémenté par la procédure RYTHIEUR$DIX$MS Utilisé pour compter la durée d'attente de 350 ms. La fonction d'espacement arrière fournit les procé- dures-suivantes: EA: COMPTEUR$ATTENTE$EA: CONTR$TOUCHE$EA: Procédure appelée lorsqu'on appuie sur la touche d'espacement arrière Si l'appui est le premier, elle position- ne mode$ea à " 1 " et rappelle temps$ea. Elle initialise temps$attente Sea à 350 ms. Procédure appelée toutes les 10 ms par RYTHMEUR$DIX$MS Cette procédure décrémente temps$attente$ea, et lorsque 350 ms se sont écoulées, elle introduit dans la file d'attente de programmes une procédure qui provoque- ra la reproduction à partir de la position de curseur courante jusqu'à temps$ea. Procédure appelée par TRAITEMENT$TOUCIIE Cette procédure annule le mode d'espacement arrière si on appuie sur une touche autre que la touche d'espacement arrière. Le module de curseur comporte toutes les fonctions de curseur de haut niveau Ici encore, ces procédures sont simplement des interfaces entre les programmes de traitement de touche et de l'écran qui déplacent en réalité le curseur sur l'écran PROG$CURSEUR: PROG$PASSAGE: PASSAGE$SORTIE: PASSAGE$CURSEUR: PASSAGE$ACCEPT$NOMBRE: PASSAGESEXECUTION: Procédure appelée dans la pluppart des états lorsqu'on appuie sur une touche dans la catégorie "curseur" Elle appelle simplement un programme d'écran parmi quatre, en fonction de la touche de curseur sur laquelle on a appuyé. Procédure appelée lorsqu'on appuie sur la touche PASSAGE A LA PAGE SUI- VANTE Elle introduit l'ancien état dans la pile et fait en sorte que l'état courant soit l'état "Passage". Elle présente le message guide-opéra- teur "O faut-il aller ?" et déplace le curseur jusqu'à la position suivant immédiatement le message guide-opéra- teur On notera qu'au moment de la traduction du fichier de message, ce- message guide-opérateur doit être cadré à droite. Cette procédure est appelée lorsqu'on appuie sur ANNULATION alors qu'on est dans l'état "Passage" Elle ramène le curseur dans la partie audio/marque de l'écran et extrait de la pile l'état précédent. Procédure appelée lorsqu'on appuie sur l'une des touches de curseur alors qu'on est dans l'état "Passage" Elle appelle un programme d'écran parmi quatre en fonction de la touche de curseur sur laquelle on a appuyé Elle appelle ensuite PASSAGES$ORTIE pour retourner à l'état précédent. Procédure appelée lorsqu'on appuie sur une touche dans la catégorie "nombre", alors qu'on est dans l'état "Passage". Cette procédure affiche le nombre sur l'écran juste après le message guide- opérateur et met à jour la position du curseur. Procédure appelée lorsqu'on appuie sur EXECUTION alors qu'ton est dans l'état "Passage" Si un nombre est présent, sur l'écran, il est converti de ASCII en binaire et un programme d'écran est appelé pour positionner le curseur au-dessous de la marque appropriée. Elle appelle ensuite PASSAGE$SORTIE pour retourner à l'état précédent. Le module d'entrée de texte contient des programmes destinés à l'introduction de notes de texte, dans le mode de texte On utilise les variables suivantes: tampon$texte ( 60) indext curseurt index$note premier- tampon destiné à conserver la note de texte pendant son introduction. position courante ( 0-59) dans le tam- pon de texte. position courante du curseur sur l'écran. index désignant la table de note de la note de texte sur laquelle on travail- le au moment considéré. indicateur, à l'état 111 " si la note qui a été introduite vient juste d'être créée Dans ce cas, l'appui sur ANNULATION supprimera cette note S'il s'agit d'une note ancienne qui est modifiée, l'appui sur ANNULATION réta- blira simplement la note à sa forme d'origine. Les programmes suivants sont fournis: TEXT$FIXE$PREMIER: ENTREE$MODE$TEXTE: ANNUL$TEXTE: EXECUT$TEXTE: Procédure appelée par INSERT$MARQUE pour indiquer au module d'entrée sui- vant-que cette note vient juste d'être introduite. Procédure appelée par INSERT$MARQUE lorsqu'on appuie sur la touche NOTE. Introduit l'ancien état dans la pile et fixe le nouvel état "Texte" Fait apparaître le message guide-opérateur "Entrez le texte" Prélève la note dans la table de note et la place dans le tampon de texte. Procédure appelée lorsqu'on appuie sur ANNULATION alors qu'on est dans l'état "Texte" Si on a introduit une nouvel- le note, cette note est supprimée. Dans le cas contraire, le tampon de texte est rejeté et l'écran présente à nouveau la note ancienne inchangée. Rétablit l'état précédent. Procédure appelée lorsqu'on appuie sur EXECUTION alors qu'on est dans l'état "Texte" Remplace l'ancienne note par le contenu du tampon de texte Réta- blit l'état précédent - CURSEUR$TEXTE: ESPACE$ARRIERE$TEXTE ENTREE$TEXTE: TEXTE: Procédure appelée lorsqu'on appuie sur une touche de curseur alors qu'on est dans l'état "Texte" Déplace le curseur en avant ou en arrière Affi- che un message d'erreur si on appuie sur Curseur Nord ou Curseur Sud. Procédure appelée lorsqu'on appuie sur la touche d'espacement arrière alors qu'on est dans l'état "Texte". Recule le curseur d'une position, puis efface le caractère sous lequel se trouve le curseur. Procédure appelée lorsqu'on appuie sur une touche dans les catégories "texte", "nombre" ou "reproduction/ arrêt" Introduit le caractère dans le tampon de texte et sur l'écran et fait avancer le curseur d'une posi- tion. Procédure appelée lorsqu'on appuie sur une touche de texte alors qu'on est dans l'état "Principal" Si le curseur est sur une note, cette procé- dure fait passer au mode de texte et introduit l'information de la touche enfoncée dans le tampon de texte et sur l'écran Si le curseur ntest pas sur une note, cette procédure présente le message "Déplacez le curseur". Le module d'édition établit une interface entre le système de traitement de touche et les programmes d'index de fichier de bas niveau, concernant l'écran, qui accomplissent réellement les manipulations sur le fichier. Le module d'édition conserve la trace des parties du fichier qui sont éditées On utilise une structure de points pour désigner des positions dans le fichier Cette structure est de la forme structure de points ( temps adresse, index multiplet) dans laquelle: "temps" est le temps écoulé dans le fichier, et "index" est l'index de marque de la marque courante, ou de la marque suivtante dans le fichier s'il n'y a pas de marque à cette position. On utilise les structures de points suivantes pour conserver la trace de positions pendant l'édition: pointdébut le début d'un segment à supprimer/déplacer/ copier pointfin la fin d'un segment à supprimer/déplacer/ copier pointdest le point de destination pour une opération de déplacement/copie. Pour supprimer une partie du fichier, on retire du fichier le segment compris entre pointdébut et pointfin (inclus). Pour déplacer ou copier une partie du fichier, on déplace ou on copie le segment compris entre pointdébut et pointfin (inclus), pour l'amener à pointdest. Lorsqu'on effectue une insertion dans le fichier, pointdest devient le point d'insertion La fin de fichier courante est pointdébut, et l'enregistrement commence à la fin du fichier. Lorsque l'utilisateur appuie sur STOP le programme effectue un déplacement, comme décrit ci-dessus, en déplaçant vers pointdest le segment qui est délimité par (pointdébut, pointfin). Pour remplacer un segment du fichier, on utilise trois structures de points supplémentaires: rpointdébut contient le début du segment à supprimer. rpointfin contient la fin du segment à supprimer. rpointdest contient le début du segment à insérer. La procédure de remplacement se déroule de la façon suivante: on définit initialement le segment à rem- placer entre pointdébut et pointfin Une fois que le segment est défini, on copie pointdébut vers rpointdest, et pointfin vers rpointfin, et on fixe rpointdébut à la fin du fichier. On accomplit ensuite la procédure d'insertion classique, en enregistrant à la fin du fichier Comme avec l'insertion, lorsqu'on appuie sur STOP, la nouvelle matière, c'est-à-dire le segment (pointdébut, pointfin) est déplacée vers le point d'insertion, c'est-à-dire pointdest, pour achever l'insertion. Pendant le remplacement, l'utilisateur peut insérer, repro- duire, actionner les touches de curseur et-introduire des marques de paragraphe et-des notes de texte Toutes les insertions sont accomplies de la manière normale, en utili- sant pointdébut, pointfin et pointdest Bien entendu, toutes les insertions sont limitées à la région située au-delà de rpointdébut. Si l'utilisateur appuie sur ANNULATION,le remplace- ment est annulé en replaçant à rpointdébut l'instant final du fichier vocal, ce qui rétablit le fichier à sa forme d'origine. Si l'utilisateur appuie sur EXECUTION, le remplace- ment est exécuté en supprimant tout d'abord le segment (rpointdest, rpointfin), puis en assignant rpointdest à pointdest, et la fin de fichier à pointfin, puis en effec- tuant l'insertion en utilisant un déplacement normal du segment (pointdébut, pointfin) vers pointdest. Le module de fonctions audio contient des program- mes destinés à la reproduction et à l'enregistrement dans des fichiers vocaux Il utilise un module associé, le module dtentrée/sortie, qui contient des structures de données et des procédures pour manipuler les tampons et les demandes de file d'attente dirigées vers le module maitre. Pendant la reproduction ou l'enregistrement, des données audio doivent être enregistrées en tampon de façon que le reproduction ou l'enregistrement ne soit pas interrom- pu par l'attente de l'achèvement d'une opération d'écriture ou de lecture dans un tampon Le logiciel de poste de tra- vail audio est conçu de façon à utiliser au moins deux tam- pons, mais on peut en utiliser davantage si l'espace le per- met A l'heure actuelle, le poste de travail audio utilise 6 tampons audio. L'éditeur de message vocal utilise des tampons qui ont de 1 à 16 secteurs de longueur Ces tampons sont alignés par page en mémoire Chaque tampon correspond à un bloc audio dans le fichier vocal Le module d'entrée/sortie Contient des structures, appelées structures d'information, qui gèrent les tampons audio Le module d'entrée/sortie contient une file d'attente de demandes d'entrée/sortie, qu'on utili- se pour organiser les blocs (RCB) en file d'attente Le rythmeur de 10 ms contrôle cette file d'attente toutes les ms Si elle-contient quelque chose, la procédure du rythmeur extrait elle-même la demande de la file d'attente et la présente au module maître. La file d'attente de demandes d'entrée/sortie uti- lise les structures de données suivantes: file d'attente un tableau d'adresses, constituant la file d'attente de demandes d'entrée/sor- tie. haut index du haut de la file dlattente. bas index du bas de la file d'attente. compte nombre d'éléments dans la file d'attente. Les programmes suivants manipulent la file d'atten- te. INTRO De ES Introduit l'adresse d'un RCB dans la file d'attente de demandes d'entrée/ sortie. EXTRACT$ET$EMISSION: S'il y a quelque chose dans la file d'attente et si le SCA est libre, cette procédure extrait l'adresse de RCB de la file d'attente et la place dans le SCA Cette procédure est appelée dès qu'on place quelque chose dans la file d'attente (elle tente de l'extraire immédiatement) -Elle est également appelée toutes les 10 ms par la procé- dure RYTHMEUR$DIX$MS. Du fait que l'éditeur de message vocal n'insère que des données enregistrées, il n'effectue pas d'enregistrement en superposition, et l'enregistrement commence toujours à la fin du fichier Les données insérées sont enregistrées à la fin du fichier et sont ensuite déplacées vers le point d'in- sertion. Pour enregistrer, on accomplit les opérations sui- vantes 1) partir avec la sixième structure d'information. a) remplir la première adresse de tampon b) remplir la taille de tampon c) si on enregistre dans le dernier bloc du fichier, positionner l'indicateur d'arrêt. 2) indiquer au matériel l'adresse du premier tampon. 3) indiquer au matériel de commencer l'enregistrement. 4) accomplir la procédure suivante: a) indiquer au matériel la taille du tampon dans lequel il enregistre au moment considéré. b) introduire en file d'attente une demande d'écriture pour le tampon précédent, s'il ne s'agit pas du pre- mier tampon. c) si l'indicateur d'arrêt est positionné pour ce tam- pon, arrêter. d) déterminer si une demande d'écriture antérieure pour * ce tampon a été satisfaite; dans la négative, arrê- ter la fonction audio jusqu'à ce que la demande ait été satisfaite. e) remplir le RCB pour ce tampon. f) incrémenter les -variables de façon à être prêt à traiter le tampon suivant. Une fois que la matériel a achevé l'enregistrement dans le premier tampon, une interruption de compte de bloc est produite (canal CTC 0) Lorsque ceci se produit, la procé- dure INTERRUPT$AUDIO est appelée Cette procédure effectue un contrôle pour voir si le mode de reproduction ou d'enregis- trement est en fonction, et elle appelle une procédure d'interruption de reproduction ou d'enregistrement L'opéra- tion 4), ci-dessus, est la procédure d'interruption d'enre- gistrement INTERRUPT$ENREG Pendant que l'enregistrement pro- gresse,elle est appeléechaque fois qu'un tampon est terminé. La reproduction est similaire à l'enregistrement. On effectue quelques opérations d'initialisation, puis on indique au matériel de commencer la reproduction On appelle immédiatement le programme INTERRUPT$REPROD Pendant la reproduction de chaque tampon, on appelle à nouveau INTERRUPT$REPROD pour préparer le tampon suivant pour la reproduction, et pour mettre en file d'attente une demande de lecture d'un autre tampon, à partir du disque. Pendant l'enregistrement, la cadence d'échantillon- nage est toujours fixée à la valeur correspondant au litté- ral CAD$ECHANT, qui définit la cadence d'échantillonnage. Cependant, pendant la reproduction, on peut changer la cadence d'échantillonnage Toutes les 10 ms, la procédure RYTHMEUR$DIX$MS appelle la procédure FIXATION$CADENCE Cette procédure appelle un programme destiné à convertir le réglage courant de la commande de vitesse pour donner la cadence d'échantillonnage appropriée La valeur de cette cadence d'échantillonnage est ensuite transmise au matériel. L'écran de l'éditeur de message vocal est divisé en deux sections: la section d'état et la section audio/mar- ques La section d'état est formée par les deux premières lignes et par la dernière ligne de l'écran On utilise cette zone pour afficher des messages guide-opérateur, le temps correspondant au curseur, la longueur, etc On utilise la section audio/marques, qui est formée par les lignes 3 à 21, pour présenter le -contenu du fichier vocal, c'est-à-dire les blocs audio, les notes de texte et les marques de paragra- phe. Le module de visualisation commande la section d'état de l'écran Ce module contient en outre toutes les procédures GROUPEMENU Il contient des procédures pour ini- tialiser GROUPEMENU, et pour visualiser le temps correspon- dant au curseur, le mode audio, un aide-mémoire; le mode de téléphone, le titre, les messages guide-opérateur, la lon- gueur et les messages d'erreur. Le module de fenêtre contient les programmes desti- nés à la visualisation et à la mise à jour de la partie audio/marques de l'écran Ce module est assisté par les modu- les suivants: conversion (V:voix rrr plm ve conversion) Programmes de conversion de la structure de position temps (V:voix rrr plm ve temps) Programmes de conversion temps- position ligne (V:voix rrr plm ve ligne) Mise en oeuvre de la structure de lignes région (V:voix rrr plm ve région) Chercheur d'in- dex d'édition défilement (V:voix rrr plm ve défilement) Manipulations de fenêtre de bas niveau $ Le fichier vocal comprend un en-tête, une table de marques, une table de notes, un plan d'implantation des sec- teurs et un plan d'implantation des blocs Les modules sui- vants contiennent un programme permettant d'accéder au fichier vocal: indexfichier (V:voix rrr plm ve indexfichier)Réalisation de éditindex marque note voixgrm extension l'index de fiecrih (V:voix rrr plm ve éditindex) Opérations d'édition sur l'index de fichier (V:voix rrr plm ve marque) Réalisation de la table de mar- ques (V:voix rrr plm ve note) Réalisation de la table de notes (V:voix rrr plm ve voixgrm) Programmes de création, d'ini- -* tialisation et de mise en oeu- vre du fichier vocal (V:voix rrr plm ve extension) Programmes d'extension et de troncature du fichier vocal irrécup Erreur irrécupérable, pro- gramme de gestion ABEND Le Module d'Erreur contient des procédures pour les programmes ABEND, concernant les erreurs irrécupérables et récupérables Un indicateur, INDVIDAGE, fixé dans le groupe, est utilisé pour déterminer si une erreur conduit ou non à un vidage Si INDVIDAGE est OF Fh, les vidages sont validés Si sa valeur est 0, les vidages -sont invalidés. Les procédures fournies sont les suivantes: ERREUR$RECUP: Vidage si l'indicateur est positionné, affi- INFORM$ERREUR: ERREUR$IRRECUP chage de l'erreur VE: XXX, en désignant par XXX un numéro d'erreur transmis Ces numéros d'erreur sont définis dans (V:voix rrr lit. ve.ERR) Il y a également affichage d'une section de données à 16 multiplets (de façon caractéristique un RCB) en cas de transmis- sion d'un paramètre. Affichage d'un message d'erreur non VE, retour à l'application appelante, après appui sur une touche quelconque Les messa- ges d'erreur non VE sont simplement les erreurs normales telles que "Déplacer le curseur" qui sont affichées dans la partie inférieure de l'écran Ces messages d'erreur sont définis dans (V:voix rrr lit ve. MERREUR). Identique à ERREUR$RECUP, à l'exception du fait que cette erreur n'est pas récupérable. L'éditeur retourne au programme appelant lorsque l'utilisateur appuie sur une touche quelconque. Le système de récupération de l'éditeur de message vocal permet la récupération à partir de coupures d'alimen- tation du poste de travail ou d'opérations accidentelles de chargement de programme initial (IPL) pendant le processus d'enregistrement L'éditeur de message vocal utilise certai- nes structures de données courantes, et trois modules con- tiennent ces structures et des programmes pour les manipuler. La file d'attente de programmes utilise les procé- dures suivantes: INIT$QUEUE Cette procédure définit une file d'attente. L'utilisateur spécifie l'adresse de la file, la taille de la file, la taille de chaque élé- ment dans la file et un pointeur désignant une structure qui contient toutes les caractéris- tiques importantes de la file Cette structure identifie la file d'attente Elle doit être transmise sous la forme d'un paramètre aux programmes d'introduction et d'extraction-qui sont décrits ci-dessous. INTR$QUEUE: Cette procédure introduit un élément dans une file d'attente spécifiée. EXTR$QUEUE Cette procédure extrait un élément de la tête d'une file d'attente spécifiée. Le module de pile (V:voix rrr plm ve pile) est une réalisation d'une pile avec des programmes d'introduction et d'extraction La pile de module de table d'état utilise des procédures venant du module de pile pour réaliser la pile d'état Contrairement au module de file d'attente, les pro- grammes du module de pile ne peuvent fonctionner que sur une seule pile, définie dans le module de la façon suivante pile ( 12) espace (en multiplets) réservé pour la pile. pp pointeur de pile. Deux programmes manipulent la pile INTRODUCTION Introduit un élément dans la pile. EXTRACTION: Extrait un élément de la pile. Le module de table de bits (V:voix rrr plm ve bit) peut positionner, restaurer et tester des bits dans une table de bits spécifiée par l'utilisateur La table ne peut pas contenir plus de 256 multiplets La table de marques uti- lise une table de bits pour déterminer le numéro de la marque, de paragraphe suivante à créer Le module d'édition d'index de fichier utilise une table de bits pour ordonner tous les blocs libres dans l'index, de façon que-les extensions de fichier soient accomplies d'une manière optimale Le module de table de bits contient les procédures suivantes: POS$BIT Positionne un bit dans une table de bits. REST$BIT Restaure un bit dans une table de bits. TEST$BIT Teste un bit pour voir s'il est positionné ou restauré. Toutes les instructions PLM d'entrée et de sortie pour l'éditeur de message vocal sont contenues dans le modu- le de commande de matériel audio (V:voix rrr plm ve comau- dio) Ce module contient de petites procédures qui font fonction d'interface entre le matériel et la partie princi- pale du code PLM de l'éditeur de message vocal. Le module de mode d'interruption fixé (V:voix rrr z 80 ve modintfixé) contient deux procédures, l'une pour placer le poste de travail dans le mode d'inter- ruption 2 et l'autre pour le ramener au mode d'interruption 0 Les programmes PLM, INIT$POSTETRAVAIL et RESTAUR$POSTETRAVAIL, qui se trouvent dans le module de com- mande de matériel audio, appellent les deux programmes situés dans le module de mode d'interruption fixé Les tout premiers multiplets de ce module contiennent les tables de vecteurs d'interruption pour le CTC et le PIO (programme de gestion des entrées/sorties pour les périphériques) Ces tables doi- vent résider en mémoire dans des limites correspondant à un facteur de huit, et il faut donc prendre soin de vérifier que ceci est réalisé dans la table de liens. Il va de soi que de nombreuses modifications peuvent être apportées au dispositif décrit et représenté, sans sortir du cadre de l'invention. REVENDICATIONS - 1 Système de traitement d'information, caractérisé en ce qu'il comprend: des moyens d'acquisition de signal continu ( 54) destinés à acquérir un signal électrique variant de façon continue qui correspond à un message vocal; des moyens de numérisation ( 14) destinés à numériser le signal électrique à variation continue, pour produire des données vocales discrètes correspondant à la qualité audible du message vocal; des moyens d'acquisition de données discrètes ( 18) destinés à acquérir des données discrètes correspondant à des caractères alphanumériques; des moyens d'acquisition de signaux discrets ( 20) destinés à acquérir des signaux dis- crets comprenant des ordres d'édition et de commande; une mémoire ( 22) destinée à lrenregistrement de données sous for- me discrète; des moyens de visualisation ( 31) destinés à créer une visualisation; et un processeur ( 26); les moyens d'acquisition de signal continu ( 54), les moyens de numérisa- tion ( 14), les moyens d'acquisition de données discrètes ( 18), les moyens d'acquisition de signaux discrets ( 20), la mémoire ( 22), les moyens de visualisation ( 31) et le proces- seur ( 26) étant interconnectés fonctionnellement par des con- ducteurs de commande et des canaux de transfert de données ( 58, 60, 62); et en ce qu'un programme de fonctionnement pour le processeur est enregistré dans la mémoire ( 22) de façon que le processeur ( 26) commande le fonctionnement du système pour: enregistrer les données vocales discrètes dans la mémoire ( 22), simultanément à l'acquisition du message vocal-; enregistrer les données de caractère dans la mémoire ( 22) simultanément à l'entrée de caractères, établir dans la mémoire ( 22) un enregistrement de séquence indiquant un ordre unifié de message vocal et de données de caractères,visuali- ser une séquence de marques de symboles vocaux et de marques de caractères, chaque marque de symbole représentant un incré- ment prédéterminé du message vocal acquis et chaque marque de caractère correspondant à l'un des caractères entrés, la séquence visualisée correspondant à la séquence dans l'enre- gistrement, et réviser l'enregistrement de séquence, sous la dépendance d'ordres d'édition entrés, pour tenir compte de changements d'édition dans l'ordre des données vocales et de caractères. 2 Système selon la revendication 1, caractérisé en ce que le programme de fonctionnement est conçu de façon que le processeur ( 26) commande en outre le fonctionnement du système pour: réagir à des signaux discrets prédéterminés acquis simultanément à l'acquisition du message vocal, pour indiquer dans l'enregistrement de séquence l'instant auquel chacun des signaux discrets prédéterminés a été acquis, et présenter dans la visualisation une indication distinctive de l'instant d'acquisition de chaque signal acquis simultanément, par rapport à d'autres éléments des données vocales. 3 Système selon l'une quelconque des revendica- tions 1 et 2, caractérisé en ce que le programme de fonction- nement est conçu de façon que le processeur ( 26) commande en outre le fonctionnement du système pour: établir dans la mémoire ( 22) un pointeur définissant une position de pointeur dans la séquence de données, présenter sur la visualisation une marque visible correspondant à la position du pointeur, et déplacer la position du pointeur qui est définie dans la séquence, et déplacer cette position de façon correspondante dans la visualisation, sous la dépendance de signaux d'entrée acquis. 4 Système selon l'une quelconque des revendica- tions 1 à 3, caractérisé en-ce que le programme de fonction- nement est conçu de façon que le processeur ( 26) commande en outre le fonctionnement du système pour produire, sous la dépendance de signaux d'entrée acquis, un signal audio variant de façon continue qui correspond aux données vocales discrètes enregistrées dans la mémoire ( 22), la production de ce signal commençant à un point dans la séquence de données 25354 O vocales qui correspond à la position de pointeur définie, telle qu'elle est définie au moment considéré, et suivant l'ordre qui est défini au moment considéré dans l'enregis- trement de séquence. 5 Système selon l'une quelconque des revendica- tions 1 à 4, caractérisé en ce que le programme de fonc- tionnement est conçu de façon que le processeur ( 26) comman- de en outre le fonctionnement du système pour faire avancer le pointeur dans les données de message vocal, en correspon- dance avec la progression de la production du signal audio. 6 Système selon l'une quelconque des revendica- tions 1 à 5, caractérisé en ce qu'il comprend un circuit ( 28) destiné à détecter une activité d'acquisition de signal audio et à interrompre l'enregistrement des données de message vocal dans la mémoire ( 22) en l'absence d'activité.