OSPAC - Open Source Podcast Audio Chain

Ospac ist ein Kommandozeilen-Tool, das Mehrkanalaufnahmen in veröffentlichbare Audio-Dateien abmischt und bei Bedarf mit Intro oder Outro versieht. Es übernimmt damit Teile von den Dingen, die man mit @auphonic deutlich einfacher umsetzen kann. Aber ich freue mich, wenn auch andere daran Lust haben, selbst Hand an die Bits anzulegen, die Verfahren zu verbessern und Neues einzubringen.

Ihr findet das neue Projekt unter https://github.com/sritterbusch/ospac .

Ich habe darin unsere Podcast-Toolchain zusammengeführt und teilweise neu geschrieben. Sie beinhaltet u.a. einen Leveler, Crosstalk-Filter und kann auch Pausen kürzen:

Beispiel für den Leveler: Die obere Wellenform zeigt das Orginal, die untere das Ergebnis.

Beispiel für Crosstalk: Beim folgenden Beispiel ist im zweiten Kanal viel Übersprechen des ersten Kanals vorhanden und in der zweiten Hälfte kommt etwas eigener Inhalt.

Unser langjähriges Arbeitstier- das Crosstalk Gate- reduziert robust das Übersprechen, aber es unterbricht auch den ersten Kanal, wo beide gleichzeitig aktiv sind:

Ein neuer experimenteller Crosstalk Filter versucht die genauen Abstände im Raum zu bestimmen und kann so besser feststellen, wer etwas zu sagen hat:

Beispiel für die Pausenreduktion: Die obere Wellenform zeigt das Orginal, die untere die reduzierte Fassung.

Alles weitere findet ihr in der Man-Page oder der Projektdokumentation (PDF).

11 „Gefällt mir“

Irgendwie komisch, dass hier noch niemand was zu gesagt hat:

Ich habe es mir gerade mal auf meinem Mac installiert (dank Homebrew super easy!) und es auf einen “Podcast aus der Hölle” den ich inhaltlich ganz gut finde, mich aber immer über z.B. die unterschiedlich lauten Sprecher aufrege, drüber laufen lassen.

… und was soll ich sagen??? R E S P E K T ! ! ! ! ! !

Das schaut wirklich gut aus bzw. klingt wirklich super :wink:

Falls interesse besteht könnte man ja mal eine genauere Anleitung hier erstellen wie man es installiert und bedient.

Könnte man das ganze nicht auch direkt ins Podlove Projekt einbauen?! Ich werde in den nächsten Tagen noch ein paar Tests mit unseren eigenen Podcast Rohdaten machen und diese mal mit der Konkurrenz vergleiche.

Auf jeden Fall vielen vielen Dank für das Bereitstellen des Tools!

Hey, danke fürs Lob! Das freut mich sehr. ^^

Wir nutzen und erweitern die Konzepte zwar schon seit zwei Jahren für den Podcast- doch habe ich das alles ja erst im letzten Monat mal zusammengeschrieben, da sich um uns herum angelehnte Projekte entwickeln, die unsere Pipeline nutzen möchten- und denen konnte ich die mehrzeiligen sox/crossgate-Skripte pro Episode nicht zumuten.

Vom Entwicklungsstand ist das bisher noch nicht einmal ein Release- das Repository wird von mir aktiv bearbeitet. Gerade gestern habe ich festgestellt, dass der (experimentelle) crossfilter für unsere heutige Folge doch eine größere Berechnungstiefe braucht, und im --mono Feature (für @martinruetzler) geht was schief, wenn man Stereo-Mixes einwirft. Ich bin mir auch sicher, dass wir noch am Command Line Interface arbeiten müssen- das reicht noch bei weitem nicht aus, und auch Konfigurationsdateien muss es geben.

Es ist aber sicher gut nutzbar, und wir haben hier sicher auch einige, die sich zutrauen, selbst etwas dazu beizutragen. Über eine Integration in weitere Projekte sollten wir uns erst nach ein paar Releases Gedanken machen.

Von Konkurrenz kann nicht die Rede sein: Ich hoffe, dass sich hier neue Konzepte, Verfahren oder Filter entwickeln, die später dann auch in z.B. @auphonic aufgenommen werden können- daher auch die sehr freie Lizenz. Ein Kommandozeilentool wird nie einen kompletten Service ersetzen können.

1 „Gefällt mir“

\o/ Juchuuu! Ich bekomme Vorzugsbehandlung. Danke, Danke, Dankeschön dafür!!

Danke aber auch für das schöne Projekt. Vielfalt tut immer gut. Ich hoffe, ich finde mal die Zeit (und den Nerv :-), mich darein zu vertiefen.

Beste MONOphone Grüße!!!

Aber nur zum Heranlocken als Übergangslösung: Irgendwann baue ich heimlich ein, dass --mono auch --stereo erzeugt, da es ja eigentlich nicht mehr Bandbreite bei der Komprimierung benötigt… ^^

Also quasi Doppel-Mono … tja, nu, wenn’s denn sein muss :wink:

1 „Gefällt mir“

Interessantes Projekt. Wollte es eben mal testen aber ich kann es leider nicht installieren. @Thorsten meinte er hat es mit Homebrew installiert, aber bei mir ist kein OSPAC package vorhanden. Dann wollte ich es halt manuell compilen, aber das ging auch nicht. @Sebastian

  1. Ist die Anweisung im README.md falsch ($ make ospac && sudo make install) Es gibt kein ospac target.

  2. Ich habe es dann mal mit make install probiert :wink: aber dann bekomme ich 2 compile errors.

Building file: ../src/Wave.cpp
Invoking: Cross G++ Compiler
g++ -O3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/Wave.d" -MT"src/Wave.o" -o "src/Wave.o" "../src/Wave.cpp"
../src/Wave.cpp:14:11: fatal error: 'sndfile.h' file not found
        #include <sndfile.h>
                 ^
1 error generated.
make[1]: *** [src/Wave.o] Error 1
cd Release;make install;cd ..
Building file: ../src/Wave.cpp
Invoking: Cross G++ Compiler
g++ -O3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/Wave.d" -MT"src/Wave.o" -o "src/Wave.o" "../src/Wave.cpp"
../src/Wave.cpp:14:11: fatal error: 'sndfile.h' file not found
        #include <sndfile.h>
                 ^
1 error generated.
make[1]: *** [src/Wave.o] Error 1

Oh, das war ein kleines Missverständnis. Auf dem Mac kann man das notwendige libsndfile mit brew installieren.

Also insgesamt auf dem Mac mit Homebrew:

$ brew install libsndfile
$ make ospac
$ sudo make install

Jetzt lieft make install durch Danke :slight_smile:

Aber make ospac gibt es nicht! Dieses Target ist nicht im makefile drin. Ich will es nur erwähnen, denn du hast da wohl ein altes makefile im Kopf :wink:

Ich habe OSPAC jetzt mal getestet mit meiner letzten Folge. (3 Spreche, ich auf einer Spur und 2 weitere via Skype auf einer Spur + Intro/Outro auf einer Spur).

Das Leveling fand ich richtig gut. Aber das CrosstalkGate hat nicht so gut funktioniert. Ich hatte einmal Probleme, dass ich über das Intro / Outro spreche und beim Aufnehmen passiert ein automatisches Ducking der Musik, damit man mich auch versteht. Nach OSPAC war die Musik nicht mehr zu hören oder war für 1 sek genau so laut wie ich ^^ (Das kann ich aber sehr gut verstehen, dass OSPAC hier nicht erkennt, dass es gewollt ist, dass die (Musik)-Spur leise ist.

Zweitens hatte ich auch ein Problem, dass ich spreche und der Einwurf aus Skype von OSPAC total weg geregelt wurde. Ich hatte halt etwas gesagt, es gab einen Einwurf während ich redete und dann antwortet ich darauf. Nach OSAPC höre ich nur noch mich und antworte auf eine Frage die keiner hört ^^

Also im Großen und Ganzen finde ich das Projekt toll und für gezielte Anwendung durchaus zu gebraucht, aber manchmal ist es doch schwierig das genau zu leveln.

Fazit Man kann es gut verwenden, aber sollte auf jeden Fall noch mal die Aufnahme danach anhören, ob es irgendwo Unstimmigkeiten gibt. Danke @Sebastian

Macht ein Crossgate überhaupt Sinn wenn eh alle Remote sind?

Alles sind ja nicht remote. Oder wie meinst du das konkret?

Na wenn alle Sprecher remote sind, kann es kein Übersprechen geben. Dan bräuchte man auch kein Crossgate.

Oh, habe ich schnell im Repository gefixed. :slight_smile:

Danke für den Test!

Es ist noch ein großes Manko, dass “Musik” genauso wie Sprecher behandelt werden. In deinem Fall sieht das ospac anders vor: Die Musik ist ein eigener Abschnitt und sollte mit --mix voranstehen.

Beim Modellansatz machen wir das so:

ospac --mix atmo-intro.wav --overlap 4 \
      --voice ZOOM0101_TR?.wav --overlap 4 \
      --mix atmo-outro.wav \
      --output final.wav

Dadurch kann man schon in die Musik reinsprechen und das Gate kommt nicht in Probleme. Den anderen Fall müsste ich mir mal genauer ansehen, aber es könnte schon alleine helfen, wenn klar ist, welche Spuren kein Gate benötigen.

Nur du + alle anderen per Skype = kein Crosstalk

Ok. Das wusste ich nicht. Dann habe ich das wohl falsch verstanden :slight_smile: Danke

Du bist da nicht alleine- mit Skype-Aufnahmen haben ich und ospac kaum Erfahrung. Aber mit @sreimers werden die Remote-Aufnahmen richtig hörbar.

Bis es noch mehr Besonderheiten für die Aufnahmesituation gibt und ein neues Preset (bisher --voice für Sprache, --mix für Musik und Vorgefertigtes und --raw für “ohne alles”) Sinn macht, kann man ja zunächst einmal --voice --no-xgate benutzen.

1 „Gefällt mir“

Dann muss aber auch -I/usr/local/include in das makefile mit rein. :wink:

Ein -I/usr/local/include schadet sicher nicht- aber bei mir hat sich homebrew aber schon darum gekümmert das Environment richtig einzustellen.

Wann tritt es auf, dass man das noch zusätzlich braucht? Ist das bei mir ein Sonderfall?