Hi, This is a personal project turned port draft, born out of the former lack of obs-studio and now the issues with audio in obs-studio on OpenBSD. It is made as a wrapper around ffmpeg, primarily to stream to an RTMP server, but can also record to local disk (as FLV format and with constant bitrate only at this point). Compared to pure ffmpeg, the number of flags is limited and made to set the key parameters for a screencast, otherwise using what seemed to be the most reasonable defaults so far. If the sndiod(8) monitoring stream is set up, it can record the audio and also (with -m) mux it with a microphone stream (don't forget your sysctl kern.audio.record). The screencast parameters like resolution, framerate, bitrate, and video quality can be set with flags. VAAPI hardware-accelerated encoding is supported by using `-p vaapi`.
I've used this script in its different iterations for years now, mainly
for streaming from OpenBSD to twitch.tv and peertube, both gaming and
live coding/live porting. Others have made use of it over the years and
added a few contributions. License is ISC.
I'm perfectly happy if this gets one day supplanted by a (mostly) fully
functional obs-studio port, but the current audio issues that I and
others have witnessed are sticky. In the meantime, this may serve some
users well who bump up against obs-studio's shortcomings.
An simple example to test locally looks like this:
$ fauxstream /path/to/video.flv
The resulting file can be played with mpv or ffplay.
A more complex example for higher quality streaming to an RTMP host
looks something like this:
$ fauxstream -p vaapi -m -d snd/1 -r 1920x1080 -o +200,200 \
-f 60 -vb 6000 -vmic 4 rtmp://my.livestream.host/live/<MY_STREAM_KEY>
This uses VAAPI, muxes monitor and microphone audio (the latter from
snd/1 device), and records a window of 1920x1080 resolution and 60
frames per second at offset 200 pixels to the right and 200 down from
left upper corner, video bitrate of 6000k, and the microphone audio
amplified by factor 4 to an RTMP host.
ok?
fauxstream.tgz
Description: application/compressed-tar
