[Index de la FAQ] [Section 12 - Questions spécifiques aux plates-formes] [Section 14 - Configuration des disques]
Tous les matériels audio supportés sont déjà inclus dans le noyau GENERIC, il n'y a donc pas besoin de configuration supplémentaire ou d'installation de drivers. Pour trouver des informations spécifiques à la puce de votre carte son, vous devrez déterminer quelle puce vous avez. Les puces supportées peuvent être trouvées sur la page des matériels supportés pour votre plate-forme. Si vous avez déjà OpenBSD lancé, cherchez l'apparition d'un driver de carte son dans la sortie de la commande dmesg(1), et lisez le manuel du driver pour des informations plus spécifiques comme les options et autres détails sur celui-ci. Voici un exemple d'une puce audio dans une sortie dmesg :
auich0 at pci0 dev 31 function 5 "Intel 82801BA AC97" rev 0x04: irq 10, ICH2 AC97
ac97: codec id 0x41445360 (Analog Devices AD1885)
ac97: codec features headphone, Analog Devices Phat Stereo
audio0 at auich0
Vous pouvez tester si votre matériel audio fonctionne correctement en lui envoyant un fichier audio (souvent d'extension .au). Si vous ne disposez pas de fichier audio, vous pouvez envoyer n'importe quel fichier texte ou binaire sur le périphérique :
$ cat filename > /dev/audio
Si vous entendez quelque chose (si ne n'est pas un fichier audio le son
ne sera pas agréable), cela signifie que la puce de votre matériel est
supportée par OpenBSD et fût reconnue et configurée par le noyau lors du
démarrage.
Remarque : Toutes les variantes et utilisations de chaque puce n'ont pas été testées ou débuguées.
Si vous n'avez entendu aucun son après avoir lancé la commande précédente, il peut y avoir plusieurs raisons possibles :
Notez que même si vous avez entendu du son, cela ne signifie pas forcément que tout fonctionnera comme espéré. Si vous rencontrez des problèmes en jouant du son, voici d'autres vérifications à effectuer :
Pour configurer vos périphériques audio, comme la vitesse de lecture, vous pouvez utiliser audioctl(1). Pour configurer le volume sonore et les autres paramètres de mixage, vous pouvez utiliser mixerctl(1). Ces deux utilitaires sont fournis avec le système de base.
Par exemple, pour configurer le volume sonore des canaux gauche et droite à 200, vous pourriez lancer la commande (voir note 2 plus bas) :
$ mixerctl outputs.master=200,200
outputs.master: 255,255 -> 207,207
Remarquez que la valeur est devenue 207.
La raison à cela est que le périphérique de ma carte audio est un codec
AC'97, qui utilise seulement 5 bits pour le contrôle, ce qui ne laisse
que 32 valeurs possibles. Evidemment, les autres matériels peuvent
avoir une résolution différente.
Pour activer le canal "master", vous devriez faire :
$ mixerctl outputs.master.mute=off
outputs.master.mute: on -> off
Pour que vos changements soient permanents vous devrez éditer /etc/mixerctl.conf, par exemple :
$ cat /etc/mixerctl.conf
outputs.master=200,200
outputs.master.mute=off
outputs.headphones=160,160
outputs.headphones.mute=off
Note 1 :
Vous pourriez voir que plus de sorties sont disponibles sur votre carte
son ou votre carte mère. Ceci est du au fait que beaucoup de puces audio
sont généralement utilisées pour connecter les jacks sur les sorties,
et toute option de chaque puce audio n'est pas forcément accessible
depuis le monde extérieur.
Note 2 : Sur votre système, il se peut que les sorties des périphériques soient désignées autrement. Ainsi, vous pourriez ne pas avoir "outputs.master" comme dans l'exemple précédent et devriez ajuster "outputs.output" ou encore autre chose. Cela dépend du pilote audio mais il est facile de trouver la dénomination correcte en listant tous les contrôles possibles avec :
$ mixerctl -a
Pour jouer un tel fichier, vous devrez connaître ses paramètres principaux : le type d'encodage, le nombre de canaux, la fréquence, et le nombre de bit par morceau. Si vous ignorez ces paramètres, vous pourrez les retrouver en utilisant l'utilitaire : file(1).
$ file music.au
music.au: Sun/NeXT audio data: 16-bit linear PCM, stereo, 44100 Hz
$ file music.wav
music.wav: Microsoft RIFF, WAVE audio data, 16 bit, stereo 44100 Hz
La seule chose qu'il vous reste à savoir sur ces fichiers d'exemple est
qu'ils sont encodés dans le format d'octet "little-endian" utilisant la
quantisation linéaire signée.
Vous pouvez vérifier cela en lisant son en-tête avec
hexdump(1).
Si vous utilisez un fichier sans en-tête (raw), il n'y a aucun moyen de
connaître les paramètres à l'avance.
Configurez les paramètres suivants en utilisant
audioctl(1).
play.encoding=slinear_le
play.rate=44100
play.channels=2
play.precision=16
Ensuite, envoyez le fichier audio au périphérique son :
$ cat music.au > /dev/sound
Si vous avez appliqué les bons paramètres, vous devriez entendre ce que
vous souhaitiez entendre.
Remarque : Utilisez toujours /dev/sound, et non /dev/audio, si vous souhaitez que les paramètres appliqués restent en place.
Il y a d'autres utilitaires que vous pouvez utiliser, comme aucat(1) et audio/waveplay dans les paquetages et les ports. Bien sur, des logiciels populaires comme XMMS sont aussi capables de jouer ces fichiers aussi bien que d'autres formats;
A l'inverse de ce qui a été dit précédemment, il existe des formats audio sans perte de qualité. Free Lossless Audio Codec (FLAC) et TTA en sont des exemples. L'implémentation FLAC a été portée sous OpenBSD et peut être trouvée dans audio/flac dans les paquetages et les ports.
Un bon exemple est le format libre, ouvert et non déposé Ogg Vorbis. Pour jouer des fichiers Ogg Vorbis, vous pouvez utiliser l'utilitaire ogg123, qui est inclus dans le paquetage audio/vorbis-tools. Par exemple :
$ ogg123 music.ogg
Audio Device: Sun audio driver output
Playing: music.ogg
Ogg Vorbis stream: 2 channel, 44100 Hz
Time: 00:02.95 [02:21.45] of 02:24.40 (133.1 kbps) Output Buffer 87.5%
Bien sur, les plugins Ogg Vorbis existent pour beaucoup d'autres
logiciels audio.
Un autre exemple est le très populaire encodage MPEG-1 Audio Layer 3 (MP3), qui a, cependant, ses problèmes de redistribution et brevets. Beaucoup de programmes peuvent jouer des fichiers MP3, consultez la section audio du système de paquetages et de ports et choisissez celui que vous souhaitez.
Que dire du format Windows Media Audio (WMA) ? Les fichiers de ce type peuvent être lus en utilisant x11/mplayer qui se sert de l'architecture FFmpeg.
Un bon point de départ pour en savoir plus sur les différents formats de fichiers audio est de lire l'article Wikipedia suivant : Audio file formats (en anglais).
Il existe des utilitaires audio dans les paquetages et l'arbre des ports qui peuvent résoudre ce problème en ré-échantillonnant le son. Par exemple, x11/mplayer lancé avec l'option "-srate" permet de spécifier l'échantillonnage désiré. Vous devriez spécifier le taux utilisé par votre carte son. Le serveur de sons de KDE, artsd, ainsi que certains jeux supportent des options similaires. Référez-vous à la documentation de votre application afin de voir si celle-ci supporte le ré-échantillonnage.
Les deux technologies qui sont utilisées dans les synthétiseurs musicaux sont :
La plupart des informations concernant MIDI sur OpenBSD peuvent être trouvées dans la page de manuel midi(4).
L'outil principal pour prendre en charge les fichiers MIDI standards est midiplay(1). Pour obtenir une liste des périphériques MIDI disponibles sur votre système, essayez ceci :
$ midiplay -l
0: SB MIDI UART
1: SB Yamaha OPL3
2: PC speaker
Dans cet exemple, nous voyons une sortie UART sur laquelle un
périphérique externe peut être connecté, le synthétiseur intégré Yamaha
OPL3 FM et le classique vieux PC Speaker.
Remarque : Toutes les cartes ne disposent pas de synthétiseur MIDI intégré, vous pourriez ne voir qu'une sortie UART et un "PC speaker" listé.
Jouer un fichier MIDI standard, dans cet exemple à travers le synthétiseur OPL3, est aussi simple que :
$ midiplay -d 1 file.mid
Remarquez que nous avons spécifié le périphérique MIDI de numéro 1, car
le périphérique 1 est utilisé par défaut.
Plus d'informations : Tutorial sur la synthétisation MIDI et de Musique
Le moyen le plus simple de jouer vos fichiers MOD favoris sur OpenBSD est probablement d'utiliser le logiciel XMMS, disponible via les paquetages et les ports. Vous devriez installer le "subpackage" -mikmod pour XMMS afin de lui permettre d'utiliser la bibliothèque sonore MikMod, qui supporte les modules de formats MOD, S3M, IT et XM.
Vous trouverez aussi liste de "trackers" dans la section audio de la collection de ports et de paquetages, comme par exemple tracker, soundtracker. Avec ces trackers, vous ne pouvez pas seulement jouer mais aussi générer vos propres modules. Remarquez que tous les trackers ne sont pas supportés par les outils de l'arbre des ports. Vous êtes invités à envoyer un port de votre programme de tracker favori.
Un utilitaire pratique en ligne de commande appelé cdio(1) a été inclut dans le système de base. Appelé sans paramètres, il entrera en mode interactif. Si vous souhaitez jouer un CD-ROM, entrez :
$ cdio play
Cela lira depuis le premier lecteur CD-ROM, cd0, par défaut. Notez que l'utilisateur qui lance cdio doit bénéficier des permissions de lecture sur le périphérique CD-ROM (ex. /dev/rcd0c). Etant donné que par défaut ce périphérique n'est accessible en lecture que par root et le groupe "operator", pour plus de facilité vous pouvez ajouter l'utilisateur au groupe operator en éditant la ligne correspondante dans /etc/group. Une autre solution est de modifier les permissions du périphérique comme vous le souhaitez.
Vous aurez peut-être besoin d'activer l'entrée CD au niveau du mixeur de sons. Au même titre que les sorties, le nom réel de ce canal d'entrée varie selon les systèmes. Mais la commande à utiliser ressemble à la commande suivante :
$ mixerctl inputs.cd.mute=off
Si vous préférez une belle GUI, il y a beaucoup de lecteurs de CDs basés sur X11 dans la collection de paquetages et de ports. Consultez simplement la section audio.
Premièrement, configurez les paramètres d'enregistrement corrects à l'aide de audioctl(1), exemple :
record.encoding=mulaw
record.rate=8000
record.channels=1
record.precision=8
J'utilise ici une quantisation non uniforme avec l'algorithme mu-law, un
seul canal, une fréquence de 8000 Hz et 8 bits par morceau.
Les algorithmes mu-law et A-law sont spécialement utiles lors de la
digitalisation de la voix, car il fournissent une meilleure efficacité au
codage.
Cela signifie que la qualité de l'enregistrement sera meilleure pour un
nombre de bit par morceau donné, ou que moins de bits seront requis
pour une qualité donnée.
Si vous décidez d'adopter les valeurs ci-dessus (seulement celles-ci !), vous pouvez utiliser le périphérique /dev/audio qui les utilise par défaut, donc vous n'avez pas besoin de les configurer explicitement ici.
Puis, soyez sur de sélectionner le bon matériel pour enregistrement et que la source n'est pas muette. Vous pouvez configurer les paramètres nécessaires en utilisant mixerctl(1). Par exemple :
inputs.mic.mute=on
inputs.mic.preamp=on
inputs.mic.source=mic0
record.source=mic
record.volume=255,255
record.volume.mute=off
record.mic=0
record.mic.mute=off
Dans cet exemple j'enregistrerais à partir d'un microphone.
La pré-amplification a été activée, car sinon le son enregistré peut
être quelque peu silencieux.
Pour faire l'enregistrement utilisez simplement cat(1) ou dd(1):
$ dd if=/dev/audio of=myvoice.raw
Appuyez sur [CTRL]-C pour mettre fin à l'enregistrement.
La sortie est une séquence d'octets brute.
Ce son peut être joué, comme expliqué dans
Jouer différents formats audio.
Pour un test rapide, en considérant que les paramètres audio
sont configurés correctement :
$ dd if=myvoice.raw of=/dev/audio
Une fois de plus si vous spécifiez d'autres paramètres d'encodage, vous devrez utiliser le périphérique /dev/sound. Un autre exemple de paramètres d'encodage :
record.encoding=slinear_le
record.rate=22050
record.channels=2
record.precision=8
Le résultat sera un PCM avec une quantisation linéaire (uniforme)
signée, enregistré dans l'ordre little-endian à une fréquence de 22050
Hz, en stéréo, et en utilisant 8 bits pour représenter une morceau. (2^8
= 256 niveaux de quantisation).
Note : Vous souhaiterez probablement convertir cet enregistrement brut (sans en-tête) en un format utilisable pour un traitement ultérieur. Lisez FAQ 13 - Conversion afin d'en savoir plus.
Disons que vous avez un certain nombre de fichier WAV à encoder, par exemple votre album favori que vous venez juste d'extraire de son CD. Pour encoder tous ces fichiers en utilisant une fréquence d'environ 192 kbps, vous pouvez utiliser une commande comme celle ci :
$ oggenc *.wav -b 192
Une fois terminé, cela vous fournira un ensemble de fichiers .ogg dans
le dossier courant. Des exemples plus précis ainsi que les options
d'encodage peuvent être trouvés dans le manuel oggenc.
Ci-dessous ce trouve un exemple simple d'encodage d'un fichier WAV avec une fréquence de 192 kbps :
$ lame -b 192 track01.wav track01.mp3
Pour toutes les options et les détails, merci de consulter le manuel
fournit avec lame.
Puisque la plupart des ordinateurs disposant d'un lecteur DVD-ROM utilisent un décodage logiciel, il est recommandé d'avoir au moins un processeur Pentium II 350-MHz ou équivalent pour disposer d'une bonne qualité d'écoute.
Quelques utilitaires de lecture DVD populaires ont été portés sur OpenBSD. Comme par exemple ogle ,mplayer, xine, et kaffeine. Veuillez lire les instructions d'installation livrées avec ces paquetages, car ces fichiers peuvent nécessiter plus de configuration. Avec ces utilitaires il est possible de lire des DVD directement en accédant au périphérique raw. Bien sur, il est possible de monter d'abord le DVD en utilisant mount_cd9660(8), et de jouer les fichiers sur ce système de fichiers ou un autre.
Remarque :
cd0 at scsibus0 targ 0 lun 0: <TOSHIBA, CD-ROM XM-5702B, 2826> SCSI0 5/cdrom removable
cd1 at scsibus1 targ 4 lun 0: <PLEXTOR, CD-R PX-R412C, 1.04> SCSI2 5/cdrom removable
# cd /dev
# ./MAKEDEV cd2
Dans ce qui suit, nous accèderons principalement au graveur de CD/DVD à
travers le périphérique raw et non le périphérique
block.
cd2 at scsibus2 targ 1 lun 0: <LITE-ON, DVDRW LDW-851S, GS0C> SCSI0 5/cdrom removable
Essayez de l'utiliser en y montant un CD/DVD.
Si vous le souhaitez, vous pouvez aussi vérifier les taux de transfert
que vous obtenez en copiant des fichiers sur votre disque dur.
La commande
time(1)
sera votre meilleure amie.
Si quelque chose se passe mal ici et que vous obtenez des erreurs durant cette phase, il est important de les corriger avant de commencer à écrire un CD/DVD.
Comme exemple d'utilisation, j'ai essayé de sauvegarder les sources d'OpenBSD dans une image ISO 9660 :
$ mkisofs -R -o sys.iso /usr/src/sys
Using ALTQ_RMC.000;1 for /usr/src/sys/altq/altq_rmclass_debug.h (altq_rmclass.h)
...
Using XFS_DEV-.000;1 for /usr/src/sys/xfs/xfs_dev-common.c (xfs_dev-bsd.c)
12.06% done, estimate finish Sun Mar 27 21:18:47 2005
24.09% done, estimate finish Sun Mar 27 21:18:43 2005
...
84.32% done, estimate finish Sun Mar 27 21:18:38 2005
96.37% done, estimate finish Sun Mar 27 21:18:38 2005
Total translation table size: 0
Total rockridge attributes bytes: 0
Total directory bytes: 1822720
Path table size(bytes): 10674
Max brk space used 469000
41508 extents written (81 Mb)
L'option -R demande à mkisofs de rajouter des extensions Rock Ridge dans l'image ISO 9660. Le "Rock Ridge Interchange Protocol" a été crée pour supporter le système de fichiers POSIX à l'intérieur du système de fichiers ISO 9660, comme les longs nom de fichiers, les créateurs de fichiers, les permissions, les liens de fichiers, les fichiers de périphériques, les hiérarchies de fichiers profondes (plus de 8 niveaux de sous-dossiers), etc...
Si vous souhaitez que les longs noms de fichiers sur votre CD-ROM soient lisibles sur les systèmes Windows et DOS, vous devriez ajouter le paramètre -J pour inclure les extensions Joliet dans l'image ISO 9660.
Après avoir crée les systèmes de fichiers, vous pouvez le vérifier en montant l'image ISO 9660. Si tout se passe bien, vous êtes maintenant prêt à écrire le CD-R(W). Un paquetage souvent utilisé pour cela est le programme cdrecord, inclus dans le paquetage cdrtools, disponible dans le système de port et de paquetages OpenBSD.
Si vous utilisez un média non réinscriptible, comme un CD-R, il est souvent judicieux de faire un essai avant de graver effectivement le CD- ROM, dans le but de ne pas gaspiller de disques.
# cdrecord -v -dummy dev=/dev/rcd1c sys.iso
Si tout se passe bien, vous êtes prêt à graver l'image créée dans
l'exemple précédant sur un CD-R(W) vierge. Vous pourrez utiliser une
commande similaire à :
# cdrecord -v dev=/dev/rcd1c sys.iso
En utilisant les options spécifiées ci-dessus, nous demandons à cdrecord
de fournir une sortie verbeuse et d'utiliser le second périphérique CD-
ROM comme graveur de CD.
Notez que nous passons le périphérique raw à cdrecord.
Pour vérifier que le CD-ROM a bien été écrit, vous pouvez le monter et vérifier que tout ce qui doit y être y est. Pour monter le système de fichier, vous devez utiliser le périphérique block pour le lecteur de CD-ROM, qui dans ce cas est toujours le graveur de CD :
# mount /dev/cd1c /mnt/cdrom
Comme exemple, je ferais une copie de sauvegarde d'un de mes CDs de musique. Cela implique deux étapes :
# cdrdao read-cd --device /dev/rcd0c cdtracks.toc
Cette commande va extraire uen série de fichiers WAV depuis votre
premier lecteur cd CD-ROM vers votre disque dur, et compiler un fichier
de "Table of Contents (TOC)" (Table de matières).
# cdrdao write --device /dev/rcd1c cdtracks.toc
Si vous le souhaitez, vous pouvez essayer la commande cdrdao
simulate au préalable.
Remarques importantes :
Un format différent est le DVD-RAM, qui a principalement été développé comme un lecteur de données et dispose de fonctions d'écriture de paquets avancées, autorisant à l'utiliser comme une sorte de disque dur optique. DVD-RAM n'est pas recommandé pour une utilisation vidéo car les vidéos sont écrites sur le disque dans un format non compatible avec les lecteurs de DVD normaux.
Le point le plus important est d'utiliser le média adapté à votre graveur de DVD. Si vous souhaitez la compatibilité avec d'autres lecteurs de DVD, veuillez lire cette section de la FAQ DVD.
Vitesse de Lecture/Ecriture DVD | Taux de transfert (Mo/s) | Vitesse de Lecture/Ecriture CD-R(W) |
1x | 1.32 | 9x |
2x | 2.64 | 18x |
4x | 5.28 | 36x |
8x | 10.57 | 72x |
Comme on peut le voir dans le tableau, les taux de transfert sont relativement hauts, et vous devrez vérifier que votre bus (SCSI, (E)IDE/ATAPI, USB) est assez performant pour les supporter. Spécifiquement, les vielles interfaces USB 1.0 et 1.1 travaillent à des taux plus bas, avec des vitesses de transfert de 1.5 Mbit/s et 12 Mbit/s, respectivement. Cela signifie que l'USB 1.0 a une vitesse maximum de 178.8 kByte/s et USB 1.1 de 1.43 MB/s. USB 2.0 est plus rapide : 480 Mbit/s ou 57.2 MB/s. En général, les vitesses des bus SCSI et (E)IDE/ATAPI sont correctes.
Dans le cas où vous voudriez plus d'informations sur le média présent dans votre graveur de DVD (par exemple si vous avez perdu le texte d'information dans la boite du cd ou êtes simplement désorganisé comme moi), vous pouvez utiliser l'utilitaire dvd+rw-mediainfo. Il y a deux options pour écrire le DVD:
J'ai crée une image ISO 9660 pré-masteurisée depuis les modules CVS d'OpenBSD (src, XF4, ports et www) présents dans le dossier /cvs de mon disque. J'ai utilisé la commande suivante, qui ressemble beaucoup à celle que j'ai utilisé pour créer l'image CD-ROM précédente.
$ mkisofs -R -o cvs.iso /cvs
Si vous le souhaitez, testez le système de fichiers ISO 9660 en
montant l'image.
Pour écrire cette image (environ 2Go) sur un disque DVD, on peut
utiliser :
# growisofs -dvd-compat -Z /dev/rcd2c=cvs.iso
Executing 'builtin_dd if=cvs.iso of=/dev/rcd2c obs=32k seek=0'
/dev/rcd2c: pre-formatting blank DVD+RW...
/dev/rcd2c: "Current Write Speed" is 4.1x1385KBps.
23822336/1545832448 ( 1.5%) @3.9x, remaining 5:19
42172416/1545832448 ( 2.7%) @3.9x, remaining 5:20
60522496/1545832448 ( 3.9%) @3.9x, remaining 4:54
...
1504706560/1545832448 (97.3%) @3.9x, remaining 0:07
1523318784/1545832448 (98.5%) @3.9x, remaining 0:04
1541898240/1545832448 (99.7%) @3.9x, remaining 0:00
/dev/rcd2c: flushing cache
/dev/rcd2c: writing lead-out
/dev/rcd2c: reloading tray
L'option -Z demande a growisofs de graver une session initiale
sur le périphérique, qui dans ce cas est mon graveur de DVD, attaché à
cd2.
L'option -dvd-compat finalise le disque, ce qui signifie
qu'aucune nouvelle session ne peut y être rajoutée.
Cela devrait fournir une meilleure compatibilité avec les lecteurs DVD
et quelques vielles unités DVD-ROM.
Remarquez comment growisofs indique la vitesse d'écriture, dans notre cas 3.9x, ce qui est ce que l'on peut attendre en combinant les vitesses du média et du graveur, comme indiqué par le dvd+rw-mediainfo.
Si vous ne disposez pas de suffisamment de place pour stocker une image de ISO 9660 four un DVD, vous pouvez écrire vos données directement sur le DVD. Essayons simplement une simulation de création du système de fichiers.
# growisofs -dry-run -Z /dev/rcd2c -R /cvs
Si cela fonctionne, retirez simplement l'option -dry-run et commencez
l'écriture du DVD.
# growisofs -Z /dev/rcd2c -R /cvs
Il est aussi possible d'ajouter des données à un DVD existant, en utilisant l'option -M, qui fond une nouvelle session dans une session existante :
# growisofs -M /dev/rcd2c -R /mydata
Pour plus d'informations à propos de growisofs, consultez sa page de
manuel.
Lorsque vous avez terminé d'écrire le DVD, montez le et vérifiez que tout ce que vous souhaitiez présent y soit effectivement.
4784128/1545832448 ( 0.3%) @0.7x, remaining 26:50
7929856/1545832448 ( 0.5%) @0.7x, remaining 29:05
14123008/1545832448 ( 0.9%) @0.7x, remaining 27:06
...
ce qui est bien plus lent.
Cela signifie qu'il ne transite pas assez d'informations sur l'un des
bus que votre DVD utilise.
Dans l'exemple précédent, le graveur de DVD USB fut installé sur une machine
sur laquelle le driver
ehci(4),
utilisé par les contrôleurs USB 2.0, ne s'est pas initialisé correctement.
Comme d'habitude, vous êtes invités à envoyer des patchs et résultats de
vos tests.
Le graveur de DVD fut ralenti par l'interface USB 1.1 plus lente, ce qui
a réduit la vitesse de gravure.
L'USB 1.1 est limité à 12 Mbit/s, ce qui correspond à 1.43 MB/s ou 1.08x
en terme de vitesse DVD.
Le graveur de DVD est descendu à une plus basse vitesse de gravure pour
diminuer le risque de buffer overrun (défaut de données à écrire).
Un bon outil de conversion de format est audio/sox, disponible au travers des ports et des paquetages. sox supporte les formats AIFF, AU, MP3, Ogg Vorbis, RIFF WAV et raw, ainsi que certains autres plus exotiques. Ci-dessous vous trouverez un exemple de conversion de l'enregistrement vers le format RIFF WAV.
$ sox -U -c 1 -r 8000 -b myvoice.raw myvoice.wav
Notez que les paramètres spécifiés correspondent aux paramètres
d'enregistrement spécifiés avant l'enregistrement.
Cela n'est qu'un exemple. De nombreux autres programmes et bibliothèques
peuvent être utilisés en conversion audio.
Note : Il n'est pas recommandé de convertir entre différents formats de compression dits destructeurs ("lossy"). Par exemple, les codecs MP3 et Vorbis suppriment certaines informations du fichier audio original. Ainsi, lorsque vous convertissez un fichier MP3 en Ogg Vorbis, le résultat final sonnera certainement moins bon que l'original.
Il existe deux utilitaires populaires, multimedia/transcode et mencoder (qui fait partie de x11/mplayer). Ils utilisent ou peuvent utiliser la bibliothèque libavcodec disponible dans le port graphics/ffmpeg et qui génère un format de sortie de bonne qualité. Vous pouvez bien sûr utiliser ffmpeg directement. Il devrait aussi être possible d'utiliser l'encodeur XviD présent dans multimedia/xvidcore.
La documentation, qui vient avec ces paquetages sous la forme de pages de manuel ou de documents HTML dans /usr/local/share/doc, contient de nombreux exemples, c'est pourquoi il est HAUTEMENT recommandé de lire ces documents.
Ce document ne représente pas une réponse exhaustive sur la manière de faire fonctionner tous les formats de streaming possibles sur n'importe qu'elle architecture. Tout d'abord, vous devriez vous renseigner sur la technologie de streaming. Quoi qu'un peu daté, le chapitre à propos du streaming tiré du livre "Designing Web Audio" aux éditions O'Reilly représente un bon début.
La première chose à savoir est qu'il existe plusieurs protocoles de streaming. Le protocole de streaming définit la façon dont les flux seront envoyés à travers le réseau. Ils ont été développés afin de garantir une transmission audio/vidéo efficace en temps réel par internet. En bref, le protocole de streaming est un protocole applicatif (niveau 7) capable d'utiliser les protocoles de transport UDP ou TCP (niveau 4). Le protocole de transport UDP ("User Datagram Protocol") convient parfaitement pour ce type d'application puisqu'il n'effectue aucune retransmission de paquets ou autre type de charge réseau. Un certain nombre de protocoles spécialisés mais propriétaires ont été développés, par exemple Microsoft Media Services (MMS - services média de Microsoft) et le Real Time Streaming Protocol (RTSP - protocole de transmission de flux en temps réel). Comme nous le verrons, HTTP (qui utilise TCP) est également parfois utilisé, même s'il ne permet pas de transmettre des flux à une vitesse régulière comme UDP, RTSP et MMS.
Ensuite, il y a le format de streaming qui représente la façon dont les données audio/vidéo ont été organisées et peuvent être lues. Les formats de streaming les plus utilisés sont le MP3, Real Audio (RA, RM) et le Windows Media (ASF) qui sont tous des technologies propriétaires. Parfois, vous rencontrerez certains streams au format Ogg Vorbis.
Pour l'exemple, j'expliquerai, en quelques étapes, comment j'arrive à écouter Radio 1, une des stations radios nationales belges. Sous OpenBSD, les plugins (modules externes) de navigateurs ne sont pas disponibles, ce qui signifie que la mise en place se résume rarement en un "clic et lecture".
$ ftp http://internetradio.vrt.be/dab/hoeluisteren/pc/help/gebruiksvoorwaarden/stream_11.m3U
$ cat stream_11.m3U
http://mp3.streampower.be/radio1-mid.mp3
http://mp3.streampower.be/radio1-low.mp3
http://mp3.streampower.be/radio1-high.mp3
Visiblement, je peux même choisir entre différentes qualités de flux
("low, medium et high"). D'autres sites peuvent contenir du code
JavaScript pour créer l'URL. Dans ce cas, le meilleur conseil serait :
parcourez le source HTML ainsi que les scripts auxquels il se réfère. Il
existe une bonne chance que vous soyez en mesure de reconstruire l'URL à
partir de ces données.
$ mplayer http://mp3.streampower.be/radio1-mid.mp3
alias radio1='mplayer http://mp3.streampower.be/radio1-mid.mp3'
A la fin de l'installation, des instructions seront affichées afin d'utiliser le plugin Java avec Firefox ou un navigateur basé sur Mozilla. Créez le lien comme expliqué et vous devriez voir le plugin Java lorsque vous entrerez "about:plugins" dans la barre d'adresse.
Note : Le plugin java a seulement été testé avec les navigateurs Firefox et Mozilla. S'il fonctionne également pour vous avec un autre navigateur, n'hésitez pas à nous le faire savoir.
Avant de poursuivre, vous devriez vous renseigner sur l'émulation Linux dans la page de manuel compat_linux(8) ainsi que FAQ 9 - Exécution des binaires Linux sous OpenBSD.
Si vous avez assimilé ces documents mais n'avez pas encore installé les fichiers nécessaires, ajoutez simplement le paquetage fedora. En admettant que vous ayez correctement défini la variable PKG_PATH (voyez FAQ 15),
# pkg_add -i fedora_base
La première commande définira automatiquement
kern.emul.linux=1, mais pas de façon permanente. Si vous avez
besoin de l'émulation Linux en permanence, vous devez le spécifier dans
/etc/sysctl.conf, comme expliqué dans
FAQ 9 - Exécution des binaires Linux sous
OpenBSD.
Une autre chose que vous devriez savoir est que les bibliothèques partagées ainsi que les modules Linux ne peuvent pas être utilisés avec des exécutables OpenBSD, ce qui signifie que vous aurez également besoin d'un navigateur Linux.
Un candidat serait le navigateur Opera, disponible dans l'arbre des ports. OpenBSD ne distribue pas de paquetage car la licence d'Opéra n'est pas claire à ce sujet. Cependant, l'installation ne devrait pas prendre de temps puisqu'il est distribué sous forme binaire par Opera Software. Après cela vous pouvez facilement installer le plugin Flash en utilisant les ports.
# cd /usr/ports/www/opera
# make install
# cd /usr/ports/www/opera-flashplugin
# make install
Note : La dernière étape devrait suffire en elle-même car le système des ports devrait installer les dépendances automatiquement. Cependant, dans un souci de clarté nous séparons le processus en plusieurs étapes afin d'en faciliter la compréhension.
Si vous avez suivi ce guide, le plugin Flash devrait être listé lorsque vous tapez "about:plugins" dans la barre d'adresse.
[Index de la FAQ] [Section 12 - Questions spécifiques aux plates-formes] [Section 14 - Configuration des disques]