Ich möchte einen Screencast einer Verarbeitungsskizze aufzeichnen

Ich möchte einen Screencast einer Verarbeitungsskizze aufzeichnen

Ich habe mit Processing eine Musikvisualisierung erstellt. Diese möchte ich nun in ein Video umwandeln. Die am wenigsten aufdringliche Methode, die mir dazu einfällt, ist die Aufzeichnung eines Screencasts.

Ich dachte, dass das Exportieren von Processing in Video inklusive Audio aus Processing selbst unter Ubuntu ein ungelöstes Problem zu sein scheint. Sehr schwierig und könnte auch Probleme mit der Zeitsynchronisierung verursachen (da die Musik weiterläuft, während Bilder aufgenommen werden). Fahren Sie also mit der Screencast-Methode fort.

Kinderleicht, dachte ich. Aber da lag ich falsch. Die erste Hürde bestand darin, einen Weg zu finden, den Ton aus der Audiodatei (und nicht das Mikrofon) aufzunehmen.

Ich habe ein Tutorial dafür gefundenHier.

Kurz gesagt: Verwenden Sie gtk-recordmydesktopund pulse audio. Genau:

  • PulseAudio starten
  • Starten Sie gtk-recordmydesktop und setzen Sie die Eingabe von DEFAULT auf pulse
  • Starte die Aufnahme
  • siehe die Registerkarte Aufnahme in PulseAudio und ausgewähltes Internes Audio (oder Monitor)

Das funktioniert, wenn ich z. B. von meinem Webbrowser aus einen YouTube-Film aufnehme. Ich sehe, dass dieser auf der Registerkarte „Wiedergabe“ angezeigt wird, und kann ihn dann problemlos aufnehmen. Aber nicht für Processing. Processing ist in Java geschrieben. Processing verwendet nicht ALSA, sondern verwendet die Hardwaregeräte direkt, um die Sounds zu erzeugen. Wenn der Sound abgespielt wird, wird er nicht im Pulse Audio-Mixer angezeigt.

Wie kann ich jetzt Audio aufnehmen?

Antwort1

Die Lösung im Link scheint perfekt zu funktionieren (wenn ich Ihre Frage richtig verstanden habe). Ich musste nicht einmal eine Konfiguration ändern, gtk-recordmydesktopdamit es funktioniert.

Sie müssen pavucontrolan der Verarbeitung nichts ändern, da diese nicht auf der Registerkarte „Aufnahme“ angezeigt wird. Sie müssen die gtk-recordmydesktopEinstellung ändern, um Ihre Systemtöne aufzunehmen.

Hier ist ein kurzes Video überWie ich es gemacht habe.

Beschweren Sie sich bitte nicht über die Musik, meine Nachbarn lieben sie! ;)
(zumindest hämmern sie immer vor Freude an die Wände, wenn ich es laut spiele)

Antwort2

Ich habe festgestellt, dass Java ALSA nicht verwendet, sondern die Audiogeräte direkt anspricht. Dadurch wird Pulse Audio praktisch nutzlos und ich kann den Ton nicht mehr zum Aufzeichnen zurück zum Eingang leiten. Das ließ sich nur schwer umgehen.Weiterführende LiteraturIch habe erfahren, dass dies mit dem verwendeten JDK zusammenhängen könnte. Wie kann man das also umgehen?

Die Verarbeitung erfolgt mit Java. Aber wenn Java im Browser ausgeführt wird,tutverwenden Sie ALSA. Irgendwie erledigt der Browser-Container das für Sie richtig.

Die einfache Lösung besteht darin, Ihre Verarbeitungsskizze in ein Applet zu exportieren, das Applet in Ihrem Browser abzuspielen und aufzuzeichnen! :)

Ich hoffe, dass dies auch jemand anderem helfen kann.

Antwort3

Alsaloop hat mich noch nie im Stich gelassen. Als ich das letzte Mal nachgesehen habe, war allerdings ein benutzerdefiniertes Paket erforderlich.

verwandte Informationen