From Fedora Project Wiki

(SimpleScreenRecorder)
m
 
(18 intermediate revisions by 7 users not shown)
Line 1: Line 1:
= Screening using Fedora =
+
== Using Gnome's embedded screencast tool ==
 +
 
 +
Gnome3 has already a screen recording functionality. Pressing Alt+Ctrl+Shift+R recording will start. There should be a red icon on the message tray in the right-bottom corner of your screen. If the message tray is hidden, Super+M will activate it. Pressing the red icon will stop the recording. The video is saved in the Video directory on your home directory on [http://en.wikipedia.org/wiki/Webm webm] format.
 +
 
 +
=== Increase the duration of screencast videos ===
  
== Using Gnome's embedded screencast tool ==
+
At just 30 seconds long the default length of screencast using this method isn’t ideal, particularly if you plan on making a lengthy video or need to demo a particular workflow or feature. It is possible to increase the duration of screencasts manually, by modifying the following gsettings string using the Terminal application:
 +
 
 +
<pre>
 +
gsettings set org.gnome.settings-daemon.plugins.media-keys max-screencast-length 60
 +
</pre>
 +
 
 +
Replace the ’60’ value with the length you want in seconds, e.g., 300 for 5 minutes, 600 for 10 minutes, and so on. If you set the value to ‘0’ there will be no time limit.
 +
 
 +
Remember: you can stop recording at any time regardless of the duration you set. Just press the keyboard shortcut you use to start recording to stop recording.
  
Gnome3 has already a screen recording functionality. Pressing Alt+Ctrl+Shift+R recording will start. There should be a red icon on the right-bottom corner of your screen. Pressing it again will stop the recording. The video is saved in the Video directory on your home directory on [http://en.wikipedia.org/wiki/Webm webm] format.
+
== Byzanz ==
  
== Istanbul ==
+
Byzanz is available in Fedora. It is similar to Istanbul, but can also produce:
 +
* animated GIF files (video only)
 +
* Ogg Theora files (with or without audio)
 +
* FLV Flash screen files (lossless, can be postprocessed)
 +
* Byzanz format for conversion later to multiple formats
  
This howto is here to provide instructions on how to use the Istanbul application in order to make Theora videos of your desktop sessions. This can be useful to create video howtos to support help documentation  or it can be helpful for testers who need to show developers unexpected desktop application behavior.
+
Refer to http://www.advogato.org/person/company/diary.html?start=18 for more information.  To install, use your preferred software manager to install the {{package|byzanz}} package.
  
Istanbul relies on new x display screen capturing support in gstreamer-plugins package. The ximagesrc gstreamer element is under active development upstream. As newer versions of gstreamer-plugins becomes available in Fedora development, the recommended settings in this howto will be updated to take advantage of performance enhancements
+
== Green-recorder ==
  
=== Recommended Settings ===
+
A simple desktop recorder for Linux systems. Built using Python, GTK+ 3 and ffmpeg. It supports recording audio and video on almost all Linux interfaces. Also, Green Recorder is the first desktop program to support Wayland display server on GNOME session.
  
* Set your ["Xorg"]  server display to use 800x600. You can't just set this resolution via gnome's support for xrandr yet. To make sure you get a proper screen capture you need to make sure that the X server itself is set to 800x600 (with system-config-display for instance) and that the gnome desktop is configured to use the default X resolution and refresh rate. If you attempt to lower your desktop resolution using xrandr for your desktop you will most likely see artifacts in the videos.
+
The following formats are currently supported: mkv, avi, mp4, wmv, gif and nut (And only WebM for Wayland's GNOME session). You can stop the recording process easily by right-clicking the icon and choosing "Stop Record". Or middle-clicking the recording icon in the notifications area (but doesn't work on all interfaces).
  
* Set istanbul framerate  to 1.0 frames per second.  This should be fast enough to record most human interactions with the desktop and will be slow enough to prevent egregious problems with frames being dropped. Upstream is currently working on fixing the performance issues with capturing the x display image. The recommended framerate will be adjusted as performance improvements to gstreamer's display capture plugin are made available.
+
You can choose the audio input source you want from the list. You can also set the default values you want from the preferences window. And a lot more.
  
* Set the istanbul encode image size to be 240x192  for a web friendly video size.  This is 1/4 the area of the desktop and text should still be legible.  If you shrink the image too much as part of the encoding process small text can become obscured.
+
Fedora 28:
  
=== Installing Istanbul ===
+
<pre>
 +
sudo dnf config-manager --add-repo http://download.opensuse.org/repositories/home:mhsabbagh/Fedora_28/home:mhsabbagh.repo
 +
sudo dnf install green-recorder
 +
</pre>
  
Istanbul is available in Fedora. Just install it with the following command:
+
Fedora 29/Rawhide:
  
 
<pre>
 
<pre>
yum install istanbul
+
sudo dnf config-manager --add-repo http://download.opensuse.org/repositories/home:mhsabbagh/Fedora_Rawhide/home:mhsabbagh.repo
 +
sudo dnf install green-recorder
 
</pre>
 
</pre>
  
=== Using Istanbul on Gnome Desktop ===
+
== Simple Screen Recorder ==
  
* Istanbul will be located in the Sound and Video menu. Once you run Istanbul from the menu you will see a new icon appear in the gnome notification area applet.  You can also run the command istanbul from a terminal.
+
SimpleScreenRecorder is a Linux program that I've created to record programs and games.
  
* When Istanbul is not recording or encoding the icon will be a red record button.
+
Features
  
* Istanbul settings are accessed via a right-click menu when Istanbul is idle and the red record button is displayed. Here you configure the encoded video width and height, the framerate and the file location for the resulting video. You can also choose whether you want instabul to encode after video recording is complete. This option may help you avoid bad frame dropping on slower cpus. I've personally had this option cause unexpected segfaults so I've opted not to use this feature for now. This howto does not cover use istanbul's support for network streaming of the video, but you are free to experiment.
+
* Graphical user interface (Qt-based).
 +
* Faster than VLC and ffmpeg/avconv.
 +
* Records the entire screen or part of it, or records OpenGL applications directly (similar to Fraps on Windows).
 +
* Synchronizes audio and video properly (a common issue with VLC and ffmpeg/avconv).
 +
* Reduces the video frame rate if your computer is too slow (rather than using up all your RAM like VLC does).
 +
* Fully multithreaded: small delays in any of the components will never block the other components, resulting is smoother video and better performance on computers with multiple processors.
 +
* Pause and resume recording at any time (either by clicking a button or by pressing a hotkey).
 +
* Shows statistics during recording (file size, bit rate, total recording time, actual frame rate, ...).
 +
* Can show a preview during recording, so you don't waste time recording something only to figure out afterwards that some setting was wrong.
 +
* Uses libav/ffmpeg libraries for encoding, so it supports many different codecs and file formats (adding more is trivial).
 +
* Can also do live streaming (experimental).
 +
* Sensible default settings: no need to change anything if you don't want to.
 +
* Tooltips for almost everything: no need to read the documentation to find out what something does.
  
* Clicking on the red button will place Istanbul in record mode and will start the recording of the desktop. Perform normal desktop tasks, keeping in mind that you are recording a display image about once per second. You will want to make sure you do important operations slow enough to be caught by the recording process.
+
SimpleScreenRecorder is available in the RPM Fusion reposity. RPM Fusion can be activated with this command:
  
* When Istanbul is recording the icon will become a square stop button. Clicking the stop button will cause Istanbul to stop recording. If Istanbul is configured to encode after recording is done , the square stop button will change to an encoding icon. You are able to record a new session when you see the red button graphic again.
+
<pre>
 +
rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm
 +
</pre>
  
* Once encoding is done, you should be able to use the totem media player to view the video you produced.
+
After that, SimpleScreenRecorder can be installed with this command:
  
=== Advanced Topics: Adding Audio ===
+
<pre>
 +
sudo dnf install simplescreenrecorder
 +
</pre>
 +
 
 +
== Advanced Topics: Adding Audio ==
  
 
* You must have audacity (or other audio recorder) installed
 
* You must have audacity (or other audio recorder) installed
Line 51: Line 89:
 
* You should be able to play the resulting file in mplayer, vlc, totem, or xine
 
* You should be able to play the resulting file in mplayer, vlc, totem, or xine
  
=== Advanced Topics: Alternative Audio Tracks ===
+
== Advanced Topics: Alternative Audio Tracks ==
  
 
Goal: Create alternative audio tracks for pre-existing screencast named desktop-recording.ogg
 
Goal: Create alternative audio tracks for pre-existing screencast named desktop-recording.ogg
Line 71: Line 109:
 
* use [[Image:ScreenCasting_fedora-av-splice.sh]] as above to replace the original audio track
 
* use [[Image:ScreenCasting_fedora-av-splice.sh]] as above to replace the original audio track
  
=== Advanced Topics: Adding a video timestamp ===
+
== Advanced Topics: Adding a video timestamp ==
  
 
For further editing needs, one can overlay the time over the original video. This may help in the production of additional audio tracks.  Here is a small script to produce a video with video timestamp visible [[Image:ScreenCasting_fedora-video-timestamp.sh]]
 
For further editing needs, one can overlay the time over the original video. This may help in the production of additional audio tracks.  Here is a small script to produce a video with video timestamp visible [[Image:ScreenCasting_fedora-video-timestamp.sh]]
  
== Byzanz ==
 
 
Byzanz is available in Fedora. It is similar to Istanbul, but can also produce:
 
* animated GIF files (video only)
 
* Ogg Theora files (with or without audio)
 
* FLV Flash screen files (lossless, can be postprocessed)
 
* Byzanz format for conversion later to multiple formats
 
 
Refer to http://www.advogato.org/person/company/diary.html?start=18 for more information.  To install, use your preferred software manager to install the {{package|byzanz}} package.
 
 
{{admon/note | Byzanz may be preferred | Because of a number of unresolved Python Xlib bugs and other issues that affect ''istanbul'', you may prefer to simply use byzanz.}}
 
 
== recordmydesktop ==
 
 
Fedora also includes recordmydesktop, which has commandline, gtk, and qt user interfaces and produces Ogg Theora movies. You can install it with
 
<pre>
 
yum install gtk-recordmydesktop
 
</pre>
 
or
 
<pre>
 
yum install qt-recordmydesktop
 
</pre>
 
 
It is very easy to use.  Refer to https://lwn.net/Articles/478370/ for a LWN article on screencasting.
 
 
== SimpleScreenRecorder ==
 
Very easy to use is SimpleScreenRecorder, project at http://www.maartenbaert.be/simplescreenrecorder/.
 
SimpleScreenRecorder is not in the main Fedora repo, so it is necessary to add a repository. On the project page mentioned above, you may found that there is a repository for Fedora at https://copr.fedoraproject.org/coprs/nickth/ssr/.
 
To use it, just do:
 
 
<pre>
 
dnf install dnf-plugins-core
 
dnf copr enable nickth/ssr
 
dnf install ssr
 
</pre>
 
 
== WebHuddle.sf.net ==
 
 
WebHuddle allows you to record a desktop whether in a multi-user meeting or not. 
 
Requires a download from WebHuddle.SourceForge.net.  Java based, so both the server and clients are CrossPlatform.
 
 
== Why not Flash? ==
 
 
vnc2swf (http://www.unixuser.org/~euske/vnc2swf/) is a excellent program which produces screencasts using the Flash format. However this is not acceptable to Fedora for a wide variety of reasons
 
 
* Flash format is proprietary and Fedora uses and supports open specifications and formats.
 
* Free and Open Source Flash players and plugins such as GPLFlash and swfdec do not provide all the required functionality or features.
 
* Flash plugins or players are not available in all architectures provided by Fedora such as x86_64 or ppc.
 
* Ogg Theora is a open source codec and works out of the box in Fedora without any third party components.
 
* If you still want to use flash videos for Fedora, create the screencasts in ogg theora and do the conversion to flash and make them available in both formats.
 
 
== How to convert VMware video to Ogg Theora video  ==
 
 
* http://fedoranews.org/mediawiki/index.php/Editor%27s_Blog_2006-01-09
 
  
 
== References ==
 
== References ==
 
+
* https://extensions.gnome.org/extension/690/easyscreencast/
 
* https://lwn.net/Articles/478370/
 
* https://lwn.net/Articles/478370/
 
* http://commons.wikimedia.org/wiki/Help:Converting_video
 
* http://commons.wikimedia.org/wiki/Help:Converting_video
 
* http://screencast-o-matic.com/
 
* http://screencast-o-matic.com/
 
* http://www.theora.org/theorafaq.html#41
 
* http://www.theora.org/theorafaq.html#41
* http://live.gnome.org/Istanbul
 
 
* Byzanz - http://www.advogato.org/person/company/diary.html?start=18
 
* Byzanz - http://www.advogato.org/person/company/diary.html?start=18
 
* http://www.debugmode.com/wink/
 
* http://www.debugmode.com/wink/
Line 143: Line 126:
 
* http://www.misterhowto.com/index.php?category=Computers&subcategory=Video&article=change_or_remove_audio_track_with_mencoder
 
* http://www.misterhowto.com/index.php?category=Computers&subcategory=Video&article=change_or_remove_audio_track_with_mencoder
 
* http://blogcritics.org/archives/2007/02/05/194332.php
 
* http://blogcritics.org/archives/2007/02/05/194332.php
 +
* https://github.com/foss-project/green-recorder
 +
* https://www.maartenbaert.be/simplescreenrecorder/
  
 
----
 
----
 
[[Category:Documentation]]
 
[[Category:Documentation]]

Latest revision as of 22:07, 17 June 2019

Using Gnome's embedded screencast tool

Gnome3 has already a screen recording functionality. Pressing Alt+Ctrl+Shift+R recording will start. There should be a red icon on the message tray in the right-bottom corner of your screen. If the message tray is hidden, Super+M will activate it. Pressing the red icon will stop the recording. The video is saved in the Video directory on your home directory on webm format.

Increase the duration of screencast videos

At just 30 seconds long the default length of screencast using this method isn’t ideal, particularly if you plan on making a lengthy video or need to demo a particular workflow or feature. It is possible to increase the duration of screencasts manually, by modifying the following gsettings string using the Terminal application:

gsettings set org.gnome.settings-daemon.plugins.media-keys max-screencast-length 60

Replace the ’60’ value with the length you want in seconds, e.g., 300 for 5 minutes, 600 for 10 minutes, and so on. If you set the value to ‘0’ there will be no time limit.

Remember: you can stop recording at any time regardless of the duration you set. Just press the keyboard shortcut you use to start recording to stop recording.

Byzanz

Byzanz is available in Fedora. It is similar to Istanbul, but can also produce:

  • animated GIF files (video only)
  • Ogg Theora files (with or without audio)
  • FLV Flash screen files (lossless, can be postprocessed)
  • Byzanz format for conversion later to multiple formats

Refer to http://www.advogato.org/person/company/diary.html?start=18 for more information. To install, use your preferred software manager to install the Package-x-generic-16.pngbyzanz package.

Green-recorder

A simple desktop recorder for Linux systems. Built using Python, GTK+ 3 and ffmpeg. It supports recording audio and video on almost all Linux interfaces. Also, Green Recorder is the first desktop program to support Wayland display server on GNOME session.

The following formats are currently supported: mkv, avi, mp4, wmv, gif and nut (And only WebM for Wayland's GNOME session). You can stop the recording process easily by right-clicking the icon and choosing "Stop Record". Or middle-clicking the recording icon in the notifications area (but doesn't work on all interfaces).

You can choose the audio input source you want from the list. You can also set the default values you want from the preferences window. And a lot more.

Fedora 28:

sudo dnf config-manager --add-repo http://download.opensuse.org/repositories/home:mhsabbagh/Fedora_28/home:mhsabbagh.repo
sudo dnf install green-recorder

Fedora 29/Rawhide:

sudo dnf config-manager --add-repo http://download.opensuse.org/repositories/home:mhsabbagh/Fedora_Rawhide/home:mhsabbagh.repo
sudo dnf install green-recorder

Simple Screen Recorder

SimpleScreenRecorder is a Linux program that I've created to record programs and games.

Features

  • Graphical user interface (Qt-based).
  • Faster than VLC and ffmpeg/avconv.
  • Records the entire screen or part of it, or records OpenGL applications directly (similar to Fraps on Windows).
  • Synchronizes audio and video properly (a common issue with VLC and ffmpeg/avconv).
  • Reduces the video frame rate if your computer is too slow (rather than using up all your RAM like VLC does).
  • Fully multithreaded: small delays in any of the components will never block the other components, resulting is smoother video and better performance on computers with multiple processors.
  • Pause and resume recording at any time (either by clicking a button or by pressing a hotkey).
  • Shows statistics during recording (file size, bit rate, total recording time, actual frame rate, ...).
  • Can show a preview during recording, so you don't waste time recording something only to figure out afterwards that some setting was wrong.
  • Uses libav/ffmpeg libraries for encoding, so it supports many different codecs and file formats (adding more is trivial).
  • Can also do live streaming (experimental).
  • Sensible default settings: no need to change anything if you don't want to.
  • Tooltips for almost everything: no need to read the documentation to find out what something does.

SimpleScreenRecorder is available in the RPM Fusion reposity. RPM Fusion can be activated with this command:

rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm

After that, SimpleScreenRecorder can be installed with this command:

sudo dnf install simplescreenrecorder

Advanced Topics: Adding Audio

  • You must have audacity (or other audio recorder) installed
  • Record your audio track, taking care to synchronize it with events in your recording (I believe this may be easier to record the audio track first, then go back and play the audio while recording video)
  • Export your audio to a wave or ogg-vorbis file, I use /tmp/stream.wav
  • Grab the script File:ScreenCasting fedora-av-splice.sh . This script uses the gstreamer framework to add the audio and re-encode the theora video file
  • Run fedora-av-splice.sh /tmp/stream.wav /path/to/theora.ogg /path/to/result.ogg
  • Get a cup of coffee while things encode, this will be cpu intensive.
  • You should be able to play the resulting file in mplayer, vlc, totem, or xine

Advanced Topics: Alternative Audio Tracks

Goal: Create alternative audio tracks for pre-existing screencast named desktop-recording.ogg

Additional Software Needed: libannodex in Fedora

  • Create a 10 second timestamp test pattern video with gstreamer
gst-launch-0.8 videotestsrc num-buffers=250 ! video/x-raw-yuv,framerate=25.0 ! timeoverlay ! theoraenc ! oggmux ! filesink location=test.ogg

Or use the provided File:ScreenCasting test.ogg

  • chain the two videos together to produce a video with 10 second lead-in
cat test.ogg desktop-recording.ogg > edit-video.ogg
  • begin playing video with totem edit-video.ogg
  • begin recording new audio track at the end of the 10 second lead in.
  • make small edits as needed at the beginning and end of the audio to have audio file make time length of the original video
  • use File:ScreenCasting fedora-av-splice.sh as above to replace the original audio track

Advanced Topics: Adding a video timestamp

For further editing needs, one can overlay the time over the original video. This may help in the production of additional audio tracks. Here is a small script to produce a video with video timestamp visible File:ScreenCasting fedora-video-timestamp.sh


References