This page documents the setup of a Linux system for screencasting
When showing software it's usefull for the students to see which keyboard shortcuts are pressed. You can use screenkey, an on screen display (OSD) which should be installed like this: (Don't install from repository)
git clone https://gitlab.com/screenkey/screenkey.git cd screenkey sudo ./setup.py install
will install the screenkey application. Run with screenkey
Make sure to check "Show modifier sequences only" otherwise everyone can read your password inputs...
There is a feature branch in the screenkey git which implements that, hopefully it will be merged into master once you read this.
Load the v4l2loopback kernel module and create two devices.
modprobe v4l2loopback devices=2 video_nr=10,9 card_label="OBS Output","Canon 5D" exclusive_caps=1
gphoto2 --stdout --capture-movie | gst-launch-1.0 fdsrc fd=0 ! decodebin name=dec ! queue ! videoconvert ! tee ! v4l2sink device=/dev/video9
We can't stream directly from OBS into Jitsi, BigBlueBitton, Google Meet, Skype, etc. So we are using v4l2loopback for this. To install the v4l2sink for OBS follow these steps:
apt install qtbase5-dev git clone --recursive https://github.com/obsproject/obs-studio.git git clone https://github.com/CatxFish/obs-v4l2sink.git cd obs-v4l2sink mkdir build && cd build cmake -DLIBOBS_INCLUDE_DIR="../../obs-studio/libobs" -DCMAKE_INSTALL_PREFIX=/usr .. make -j4 make install
In OBS, go to Menu → Tools → V4L2 Video Output
In BigBlueButton (or any other videoconferencing service) Select the virtual "OBS Output" as a video source.