Bibliothèque technique gratuite ENCYCLOPÉDIE DE LA RADIOÉLECTRONIQUE ET DU GÉNIE ÉLECTRIQUE Convertisseur analogique-numérique d'une carte son. Encyclopédie de l'électronique radio et de l'électrotechnique Encyclopédie de l'électronique radio et de l'électrotechnique / Concepteur radioamateur Aujourd'hui, chaque utilisateur de PC connaît le terme "multimédia". Pour beaucoup, il est associé à un son, une animation, etc. de haute qualité. Cependant, la carte son Sound Blaster peut être utilisée comme convertisseur analogique-numérique et numérique-analogique avec des capacités de traitement exceptionnelles. Un ordinateur équipé d'une telle carte peut être utilisé comme oscilloscope, générateur ou analyseur de signaux. Le fait est que son "cœur" est un processeur de signal numérique DSP (Digital Signal Processor). Afin d'utiliser ses capacités, il est nécessaire d'avoir un accès direct aux tampons contenant les données audio et le mode de contrôle du DSP, c'est-à-dire utiliser l'interface de bas niveau. Dans cet article, nous examinerons le dispositif d'une carte son et le format des types standard de fichiers de données dans lesquels les données obtenues à la suite de la numérisation des signaux reçus à l'entrée d'une carte son sont stockées dans la mémoire de l'ordinateur. Les mêmes fichiers peuvent être synthétisés par programmation afin d'obtenir des signaux d'une forme donnée. En règle générale, une carte son (Fig. 1) possède deux entrées doubles (stéréo) et deux sorties identiques. La première entrée (ligne) est conçue pour les signaux d'entrée d'une amplitude d'environ 1 V, la seconde - microphone, pour les signaux plus faibles. Lorsque vous utilisez une carte son comme convertisseur analogique-numérique, vous pouvez utiliser n'importe laquelle de ces entrées, en fonction du niveau du signal traité. Les données liées au multimédia sont stockées dans des fichiers au format dit RIFF (Resource Interchange File Format - format de fichier pour l'échange de ressources) [1]. Un fichier RIFF contient des morceaux imbriqués (chunk's). Le fragment externe se compose d'un en-tête et d'une zone de données (Fig. 2). Le premier double mot de l'en-tête contient un code à quatre caractères qui identifie les données stockées dans le fragment. Le deuxième dword de l'en-tête est la taille de la zone de données en octets (à l'exclusion de la taille de l'en-tête lui-même). La zone de données a une longueur variable avec la condition de son alignement sur une frontière de mot et un remplissage à la fin avec un octet zéro à un nombre entier de mots, si nécessaire. Le format RIFF ne décrit pas le format des données. En pratique, un fichier RIFF peut contenir n'importe quelles données pour le multimédia, et le format des données dépend du type de données. La zone intitulée "Données" dans la figure 2 peut contenir d'autres fragments. Pour un fichier qui stocke des données sonores (fichier wav), cette zone contient l'identifiant des données "WAVE", un fragment du format des données sonores "fmt" (trois caractères "fmt" et un espace à la fin), ainsi qu'un fragment de données sonores (Fig. 2). Le fichier peut en outre contenir des fragments d'autres types, vous ne devez donc pas penser que l'en-tête du fichier wav a un format fixe. Par exemple, le fichier peut contenir un fragment "LIST" ou "INFO" contenant des informations sur les droits .copy et d'autres informations supplémentaires. Voyons comment les données sont écrites. Tout d'abord, vous devez ouvrir le périphérique d'entrée en spécifiant le format de données audio correspondant. Ensuite, un ou plusieurs blocs de mémoire doivent être commandés et préparés pour l'entrée en appelant une fonction spéciale. Après cela, les blocs préparés doivent être transmis si nécessaire au pilote de périphérique d'entrée, qui les remplit avec des données audio enregistrées. Pour enregistrer les données enregistrées dans un fichier wav, l'application doit générer et écrire dans le fichier d'application un fichier wav et des données sonores à partir des blocs de mémoire préparés remplis par les périphériques d'entrée du pilote. Vous trouverez ci-dessous un fragment de programme qui vous permet d'écrire un bloc de données dans un fichier, ce qui est nécessaire lors de l'utilisation d'une carte son comme convertisseur analogique-numérique : utilise SysUtils, MMSystem ; type TWaveData = array[0..0) of word ;const Discret = 22050;WaveHdr:TWaveHdr=( lpData : nil;(adresse du buffer de forme d'onde) dwBufferLength : 0;(longueur, en octets, du buffer) dwBytesRecorded : 0;(Combien de données se trouve dans le tampon ) dwUser : 0 ; dwFlags : 0 ; dwLoops : 0 ; IpMext : nil ; réservé : 0 ) ec : Discret ; nBllockAlign : 1 ; wBitsPerSample : 1 ; csSize : 8 ) ;var WaveDate : ^TWaveDate; HSoundDevice : HWaveIn ; hfile : HMMIO ; res: MMResult;commencer par WaveHdr do begindwBufferLehgth : =round(Discret/0);dwBytesRecorded : =round(Discret/10);GetMem(WaveData, dwBytesRecorded);lpData : =PChar(WaveData); fin; res : =waveInOpen (@HSoundDevice, WAVE_MAPPER, @WaveFormat, 10); res : =waveInPrepareHeader(HSoundDevice, @WaveHdr, SizeOf(WaveHdr)); res : =waveInUnprepareHeader (HSoundDevice, @WaveHdr,SizeOf(WaveHdr)) ; FreeMem(WaveData); res:=waveInStart(HSoundDevice) ; hfile:=mmio0,0,0pen("d: \work\data_0.txt",nil, MMIO_CREATE ou MMIO_READWRITE); mmioWrite(hfile,WaveHdr.IpData, WaveHdr,dwBytesRecorded); mmioClose(hfichier,1); waveInReset(HSoundDevice) ; waveInClose(HSoundDevice) ;fin. Contrairement à l'interface MCI, où de nombreux paramètres sont pris par défaut, l'interface de bas niveau nécessite un examen attentif et approfondi de tous les détails du processus d'écriture et de lecture. En compensation de l'effort supplémentaire, vous obtenez plus de flexibilité et la possibilité de travailler non seulement avec l'audio, mais également avec des signaux arbitraires en temps réel. littérature 1. Frolov A.V., Frolov G.V. Multimédia pour Windows. Guide du programmeur. - M, "DIALOGUE-MEPhI", 1994, 284 p. (Bibliothèque du programmeur système; V. 15). Auteur : O. Baranovsky, Minsk ; Publication : N. Bolchakov, rf.atnn.ru Voir d'autres articles section Concepteur radioamateur. Lire et écrire utile commentaires sur cet article. Dernières nouvelles de la science et de la technologie, nouvelle électronique : Cuir artificiel pour émulation tactile
15.04.2024 Litière pour chat Petgugu Global
15.04.2024 L’attractivité des hommes attentionnés
14.04.2024
Autres nouvelles intéressantes : ▪ Nouvel enregistrement de données sans fil ▪ Tablette ASUS Eee Slate B121 ▪ MAX9701 - Amplificateur de puissance audio de classe D ▪ Les nanopores se réchauffent lorsque les ions les traversent. Fil d'actualité de la science et de la technologie, nouvelle électronique Matériaux intéressants de la bibliothèque technique gratuite : ▪ rubrique du site Appareils électroménagers. Sélection d'articles ▪ Article Sextant. Conseils touristiques
Laissez votre commentaire sur cet article : Toutes les langues de cette page Page principale | bibliothèque | Articles | Plan du site | Avis sur le site www.diagramme.com.ua |