Streaming: 5.1 Surround mit OSX
Softwarelösung zum mischen, aufzeichnen, abspielen, live-streamen von 5.1 Surround Audio unter OSX.
Komponenten
- AU Lab
- Zusatz zu Xcode. Enthält u.A. Beispielprogramme, die ein aufwendigeres Audiorouting ermöglichen. AU Lab
- Soundflower
- bietet virtuelle Audiodevices unter OSX, die 64-kanalige Version ist für Surroud Sound notwendig. Auf OSX 10.11 läuft die signierte Version.
- Xcode Command Line Tools
- Compilerwerkzeuge, notwendig um die Open Source Software aus pkgsrc zu installieren.
- pkgsrc
- Das Paketverwaltungssystem von NetBSD, portiert auf verschiedene Unix-ähnliche Systeme. pkgsrc.se gibt Überblick der enthaltenen Pakete.
- libvorbis
- Mehrkanalfähiger Codec für Audio. Open Source.
- ffmpeg
- Codierung und streamen von Audiodateien. Open Source.
- icecast
- Externer Streamingserver. Open Source.
- audacity
- Audioeditor, Bearbeitung von Mehrkanaldateien. Open Source.
Installation
- Laden von Xcode oder Command Line Tools. Audiotools.
- Installation von Soundflower.
- Laden von pkgsrc. Installationsanweisung für OSX. Der Pfad für die Binaries sollte dauerhaft hinzugefügt werden, z.B. :
cd ~ echo 'export PATH=$PATH:~/pkg/bin:~/pkg/sbin' >> .bash-profile
- Installation libvorbis:
cd ~/pkgsrc/audio/libvorbis/ bmake install clean clean-depends
- Installation ffmpeg:
cd ~/pkgsrc/audio/ffmpeg2/ bmake install clean clean-depends
- Die Installation von icecast ist nicht notwendig, da ein externer Service genutzt wird, ist aber mit pkgsrc möglich.
- Die Installation von audacity ist nicht notwendig, aber hilfreich zum editieren und anpassen von Mehrspuraudiodateien. pkgsrc.
Voreinstellungen
- AU Lab Hauptmischer erzeugen. Externes Interface IN, Soundflower 64 OUT.
- evtl. AU Lab Stereo Downmix erzeugen. Soundflower 64 IN Einzelkanäle, Soundflower 2 OUT.
- ffmpeg Stream setup. Inspiriert durch dieses Script. :
#!/bin/sh -xe # This is called when you ^C or an app quits. It kills all the processes. function cleanup() { trap "" EXIT INT [[ ! -z "$ffmpeg_pid" ]] && kill -9 "$ffmpeg_pid" } trap "cleanup" EXIT INT ffmpeg2 -f avfoundation -i "none:1" -vn -af "pan=5.1|c0=FL|c1=FR|c2=FC|c3=LFE|c4=BL|c5=BR" -codec:a libvorbis -b:a 128k -f ogg -legacy_icecast 1 -content_type application/ogg -ice_name "surround-stream" icecast://user:pass@std1.ladio.net:8010/ss & ffmpeg_pid=$! wait $ffmpeg_pid
- icecast2. Accounts z.B. bei giss.tv, ladio.net.
Betrieb
- AULab Hauptmischer (und Stereo Downmix) aufrufen
- ffmpeg Streaming client starten
- vlc zum empfang