Modification du pas et de la vitesse de lecture
Certains périphériques de sortie Waveform-Audio peuvent varier le pas et la vitesse de lecture des données audio Waveform. Tous les périphériques audio Waveform ne prennent pas en charge la tonalité et les changements de vitesse de lecture. Pour plus d’informations sur la façon de déterminer si un périphérique Wave-Audio particulier prend en charge les changements de taux de lecture et de tonalité, consultez périphériques et types de données.
Les différences entre la variation du pas et la vitesse de lecture sont les suivantes :
- La modification de la vitesse de lecture est effectuée par le pilote de périphérique et ne nécessite pas de matériel spécialisé. Le taux d’échantillonnage n’est pas modifié, mais le pilote interpole en ignorant ou en synthétisant les exemples. Par exemple, si la vitesse de lecture est modifiée par un facteur de deux, le pilote ignore chaque autre échantillon.
- La modification du pas à pas nécessite un matériel spécialisé. La vitesse de lecture et le taux d’échantillonnage ne sont pas modifiés.
Windows fournit les fonctions suivantes pour interroger et définir le taux de lecture et le ton de la forme d’onde audio.
| Fonction | Description |
|---|---|
| waveOutGetPitch | Récupère le pas du périphérique de sortie Waveform-Audio spécifié. |
| waveOutGetPlaybackRate | Récupère la vitesse de lecture pour le périphérique de sortie Waveform-Audio spécifié. |
| waveOutSetPitch | Définit le pas du périphérique de sortie Waveform-Audio spécifié. |
| waveOutSetPlaybackRate | Définit la vitesse de lecture pour le périphérique de sortie Waveform-Audio spécifié. |
Les taux de pas et de lecture sont modifiés par un facteur spécifié avec un nombre à virgule fixe compacté dans une valeur de mot double. Les 16 bits supérieurs spécifient la partie entière du nombre ; les 16 bits de poids faible spécifient la partie fractionnaire. Par exemple, la valeur 1,5 est représentée sous la forme 0x00018000L. La valeur 0,75 est représentée sous la forme 0x0000C000L. Une valeur de 1,0 (0x00010000) signifie que le pas à pas ou la vitesse de lecture est inchangée.