How to Record Screen and internal Audio?

Solution 1:

SimpleScreenRecorder did the trick for me when recording online playing videos. It has an (experimental) OpenGL feature. In Ubuntu:

sudo apt update
sudo apt install simplescreenrecorder

With the OpenGL feature you can select to record an specific application window. So you can even keep working while recording in the background. Don´t play any music though, because the audios will mix together (unless, of course, U R a DJ ;) )

Solution 2:

Maybe RecordMyDesktop could work for you? It has the ability to record your screen and audio, but I'm not sure if it supports games.

You can install it with

sudo apt-get install recordmydesktop

If you want a GUI, you need to also install one of the packages gtk-recordmydesktop (GTK) or recorditnow (Qt)

It is discontinued but it does work as expected.

Solution 3:

1. Install OBS as in: https://github.com/jp9000/obs-studio/wiki/Install-Instructions#linux

sudo add-apt-repository ppa:obsproject/obs-studio
sudo apt-get update && sudo apt-get install obs-studio

2. Open OBS; in the Mixer panel, click the "gear" of "Desktop Audio", then "Properties" and Select "Built-In Audio Analog Stereo"

3. Again in the Mixer panel, silence the microphone/Aux clicking on its volume icon

4a. Video_Source_Method_1. In the "Sources" panel, click the + and Select Screen Capture XSHM. Saves mouse pointer if box checked.

4b. Video_Source_Method_2. Install VLC: (doesn't save mouse)

  • sudo snap install vlc source
  • Install plugin: sudo apt install vlc-plugin-access-extra source
  • In VLC: "Capture Device": "Desktop", configure "MRL" screen://. You should see your screen inside VLC
  • In OBS, in "Sources" panel, add + VLC video source, configure ⚙; in "playlist"; +; add path screen://

5. Click Transition in the center of the screen, you have to see your screen in the right window now.

6. if desired change the output folder: At the "Controls" panel (right-side), click "Settings", then click "Output" in the left menu.

7. Finally, click Start Recording in "Controls" panel.

Solution 4:

I am using recordscreen.py Python script. It launches ffmpeg or avconv behind the scenes, so make sure you have them installed.

Record entire desktop to output.mkv at 15 FPS:

recordscreen.py output.mkv

Record at 30 FPS with different audio and video codec:

recordscreen.py -r 30 --vcodec=vp8 --acodec=pcm output.mkv

Or record into .webm:

recordscreen.py output.webm

I haven't tried recording games with it, so I will be interested to hear how it goes.

And just for historical perspective here's one of the earliest blog posts about it.