4

I have experimented with screencast software on Ubuntu over a number of LTS versions and using pretty much every software I can get my hands on. I have used VLC, RecordMyDesktop and some others the names of which escape me. I tried this when Ubuntu shipped with GNome and now with Unity as well. The problem is the same.

The colours are always washed out regardless of the software I use or the version of Ubuntu I am running. The answer seems to be to open a video editor and mess about with contrast, saturation and brightness to get something a bit more acceptable. The capture is generally rendered after capture as an OGG file and the image is all there just hidden under messed up settings.

I am yet to get my video to look the same as my screen shots even though when I take a static screen shot the colours and contrast and brightness are all exactly right (ie the same as what I see on the screen). So what I need to know is what I need to change to get the contrast and brightness settings back under control so they are right to start with.

I have Googled the living daylights out of this problem but have yet to find much help beyond the fact that the contrast and brightness are wrong by default.

I just want to record a screencast and then watch it in VLC or whatever and see what I saw when I made the cast.

There is probably a lot I do not know about Ubuntu/Linux even though I have been using it for years now so I am happy to be educated. That said I would appreciate being told if and how any backups should be made before trying something in case it does not work happily (not to mention how to recover from said fails).

If there is no known answer on the subject of why the contrast and brightness are wrong and how to fix it then at least something I put into practice to get close to screen colour as possible in the screencast.

2 Answers 2

4

Software

Install and configure screencasting software to produce high-quality desktop videos as follows:

  1. Uninstall libav to remove its ffmpeg version from the system:
     sudo apt-get --purge remove libav-tools sudo apt-get --purge autoremove 
  2. Install FFmpeg from the following PPA:
     sudo add-apt-repository ppa:jon-severinsson/ffmpeg sudo apt-get update sudo apt-get install ffmpeg 
  3. Install SimpleScreenRecorder:
     sudo add-apt-repository ppa:maarten-baert/simplescreenrecorder sudo apt-get update sudo apt-get install simplescreenrecorder 

Do not install ffmpeg from the static build as it does not include x11grab.

Record using SimpleScreenRecorder

  1. Run SimpleScreenRecorder.
  2. Click Yes, if prompted. NVIDIA Warning
  3. Click Continue.
  4. Select Record a fixed rectangle.
  5. Click Select window.
  6. Click on a window to record its contents.
  7. Optionally, uncheck Record audio.
  8. Click Continue.
  9. Set Container to mp4.
  10. Set Codec to Other.
  11. Set Codec name to libx264.
  12. Set Bit rate to 8192.
  13. Set Save as to recording.mp4.
  14. Uncheck Allow frame skipping.
  15. Click Continue.
  16. When ready, click Start recording.
  17. When finished recording click Pause.
  18. Click Save recording.

Record using FFmpeg

For a higher-quality recording, use ffmpeg directly. Save the following script to /usr/local/bin/capture.sh and make the script executable (e.g., sudo chmod 755 /usr/local/bin/capture.sh):

#/bin/bash INFO=$(xwininfo -frame) WIN_GEO=$(echo $INFO | grep -oEe 'geometry [0-9]+x[0-9]+' | grep -oEe '[0-9]+x[0-9]+') WIN_XY=$(echo $INFO | grep -oEe 'Corners:\s+\+[0-9]+\+[0-9]+' | grep -oEe '[0-9]+\+[0-9]+' | sed -e 's/\+/,/' ) ffmpeg -f x11grab -y -r 30 -s $WIN_GEO -i :0.0+$WIN_XY -vcodec ffv1 -sameq output.avi 

Use the above script as follows:

  1. Open a terminal.
  2. Change to a directory that has ample drive space.
  3. Ensure write permissions in the current working directory.
  4. Run: capture.sh
  5. Click on a target window.
  6. Press control+c in the terminal to stop recording.

The captured video will be saved as output.avi.

Playback

Depending on the video player, playback might appear to be washed out. Here are my findings:

  • mplayer - Washed out
  • vlc - Nearly perfect

See Also

2
  • The script capture does not produce a video. The output is there but does not play. I didn't find info about -s option here: ffmpeg.org/ffmpeg-devices.html#x11grab Any idea? Commented Nov 3, 2016 at 0:30
  • in my case, the capture is working nicely if I remove/change the specified codec (the -s option set the size for the recorded window in pixels and it is in the manpage) Commented Sep 8, 2017 at 13:33
1

I just faced the same issue in Ubuntu 16.04 LTS with SimpleScreenRecorder. When watching my recorded screencasts in VLC, all colours appeared to be "washed out".

In my case, this turned out not to be a problem of the video but a result of a wrong gamma setting in VLC. In Ubuntu's native video player, the screencast looked fine.

After decreasing the gamma value in VLC (Tools -> Effects and Filters -> Video Effects -> Gamma), the colours in the video perfectly resembled the colors of my Desktop and UI.

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.