Bannière de NPC
  Trucs et Astuces pour BeOS -       Catégorie: Audio & Video
 

Accueil

Alertes
Applications
Audio et Vidéo
Divers
Interface
Matériel
Réseaux
Terminal
Tracker

Infos Serveur

 

 

Flux audio avec SoundPlay

SoundPlay 4.0 permet de diffuser de la musique d'une liste de morceaux à des auditeurs sur Internet ou autrement sur un réseau local TCP/IP. Cela permet facilement, à partir d'une liste à la maison d'écouter un morceau au travail, ou de proposer votre propre "station radio" Internet.

Il existe deux méthodes de flux dans SoundPlay 4.0: le "pseudo-flux" / "à la demande" et le flux en temps réel (bien entendu vous pouvez utiliser les pseudo flux .m3u si vous préférez).

Pseudo-Flux / à la demande

Avec un serveur de pseudo-flux, les fichiers sont distribués avec leur taille et débit réels, ce qui n'est pas toujours compatible avec la bande passante disponible, ainsi un fichier MP3 de 3 Mo transférera 3Mo de données. Toutefois le pseudo-flux autorise l'accès direct aux usagers, ce qui leur permet de sélectionner n'importe quelle entrée de votre liste de morceaux.

SoundPlay 4.0 comporte un mini serveur HTTP qui peut distribuer des pages Web comportant la liste courante de morceaux, éventuellement accompagnée de liens d'écoute, de téléchargement et de flux. Le serveur est accessible sur le port 8080 et ne nécessite pas que vous ayez un serveur Web séparé (mais remarquez qu'il utilise un port spécifique qui n'entrera pas en conflit avec un serveur Web standard s'exécutant sur la même machine).
Pour l'utiliser vous devez connaître votre adresse IP que vous pouvez obtenir de votre programme de configuration DialUpNetworking ou en saisissant netstat dans un terminal. Les choses sont plus faciles si vous avez une adresse IP statique.

Pour activer cette fonction, allez dans Preferences | Plugins | General Purpose et sélectionnez HTTP Interface. Cliquez sur Configure et sélectionez les options de sortie appropriées.

Show File Info: Ceci informera le navigateur client du taux de transfert et du temps d'écoute de chaque piste ainsi que le nom du fichier.

Enable play links: Ce lien est utilisé uniquement pour contrôler la machine distante. Cliquer sur un lien d'écoute ne va pas lancer l'écoute sur la machine cliente, mais va sur l'autre machine faire commuter SoundPlay sur un morceau.

Enable download links: Cliquer sur ce lien lancera le téléchargement du fichier MP3 vers le client. Malheureusement les fichiers téléchargés arriveront sous le nom dlod.mp3, au lieu de leur vrai nom (Dans Internet Explorer, ceci peut être un bogue corrigible...attendons). Remarquez que vous devez avoir le droit de copier chaque piste si vous voulez mettre ça en œuvre en toute légalité. Il est illégal de proposer en téléchargement à autrui une musique protégée par des droits de copie.

Enable stream links: Cliquer sur ce lien enverra la piste sélectionnée vers le lecteur MP3 usuel du client en temps réel, sans possibilité d'archivage du MP3 sur son disque.

Une fois configuré, vérifiez que HTTP Interface est validé, puis testez la configuration depuis une autre machine en ajoutant :8080 à l'adresse IP. Par exemple si l'adresse IP de la machine SoundPlay sur un réseau local est 192.168.0.7, il faudra entrer http://192.168.0.7:8080 sur la machine cliente. Les adresses IP Internet et les noms de domaine marchent aussi, bien sûr. Malheureusement le numéro de port dans cette version de HTTP Interface n'est pas configurable.

Flux temps réel

SoundPlay 4.0 permet le flux temps réel au moyen d'une interface distincte, via un composant additionnel appelé "Live Encoder". Dans ce mode, l'utilisateur (client) n'a pas la faculté de choisir dans une liste -- ils écoutent simplement ce que vous êtes en train de jouer à un moment donné, comme pour une station radio. Là où HTTP Interface est limité dans sa manière de contrôler / accéder à une piste à la fois, Live Encoder diffuse tout ce qui s'exécute sur SoundPlay vers le monde extérieur. Plus important encore, il vous permet de réguler le flux en fonction des possibilités d'Internet. Bien entendu, il vous faudra trouver un compromis entre la qualité audio et la bande passante disponible côté client.

Le Live Encoder envoie le flux vers un encodeur MP3 quelque part sur votre système qui gèrera la régulation (s'il y en a). Puis il aiguille le résultat vers le port de votre choix. C'est pourquoi vous trouverez le Live Encoder dans la rubrique Filtres (Filters) de votre panneau de composants additionnels (plugins).

Pour utiliser le Live Encoder, vous devrez installer l'encodeur LAME sur votre machine (de préférence dans ~/config/bin). Non, vous ne pouvez pas utiliser GOGO pour ça, car GOGO sort toujours dans un fichier et non vers la sortie standard (stdout Unix) impérativement utilisée dans ce mode. Dans le panneau de configuration de Live Encoder, vous constaterez que vous pouvez envoyer des lignes de directives vers LAME. La configuration standard est:

/boot/home/config/bin/lame -b 64 -x -r - -

Ceci indique à LAME de réencoder le flux à 64kbps, d'utiliser PCM en entrée et de forcer l'inversion d'octets. Les deux - - sont des drapeaux distincts qui indiquent à LAME de fonctionner avec l'entrée standard (stdin) et la sortie standard (stdout).

La configuration installée par défaut devrait fonctionner, mais si vos clients sont sur un réseau rapide, vous aurez probablement à augmenter le débit à 128Kbps ou plus pour assurer une meilleure qualité.

Au niveau du lecteur MP3 en réception, il est important de positionner le tampon (buffer) de flux à un niveau au moins équivalent au débit du flux émis. Si vous émettez à 128kbps mais que le buffer de flux de WinAmp (par exemple) est réglé pour 64kbps, le client délivrera un son audio saccadé.

Inversement, si vous émettez pour des utilisateurs ayant des modems, vous devrez réduire le débit en conséquence. Toutefois, il ne suffit pas de cocher les cases "Halve samplerate" (demi échantillonage) ou "Make mono" (en Mono). Il faudra aussi modifier les drapeaux de l'encodeur. Positionnez "Halve samplerate" par -s 22.05, et "Make mono" par -m m(-m pour mode; saisissez "lame" dans un Terminal pour voir tous les drapeaux possibles). Par conséquent, pour envoyer un flux Mono 64kbps à 22.05KHz, utilisez:

/boot/home/config/bin/lame -b 64 -m m -s 22.05 -x -r - -

Essayez mono/stéréo, avec différents débits ainsi que demi/plein échantillonnage pour trouver une combinaison en accord avec la vitesse de vos utilisateurs.

Pour offrir l'accès à votre flux MP3, fournissez votre adresse IP avec l'adresse du port indiquée dans le panneau du Live Encoder (la valeur par défaut est 8000). Par exemple http://192.168.0.7:8000. L'utilisateur doit entrer cette valeur directement dans son lecteur MP3 et non dans son navigateur.

Bien que le composant additionnel Live Encoder ait une conception très similaire à ShoutCAST / icecast / live365, la version actuelle n'a pas le mécanisme d'envoi de méta-données propre à ces sites. Toutefois live365 permet d'enregistrer des flux manuellement et vous pouvez théoriquement faire afficher votre flux. Malheureusement un bogue du système fait que ce n'est pas encore possible aujourd'hui.

Read this Tip in English here
Hier findest Du den Tip in Deutsch


Cette astuce est une contribution de Scot Hacker.
Site de l'auteur de cette astuce: http://www.birdhouse.org/beos/bible/.

Astuce traduite par: Marc Lebas.

Traduction Française du Serveur BeTips © 2000 BeTrayer et équipe
 

 

BeArchives.com Banner Exchange Network