Peek: i can't record an MP4

Created on 23 Feb 2018  路  8Comments  路  Source: phw/peek

Peek: 1.2.2
GTK: 3.22.26
GLib: 2.54.1

Details:

Could not start recording, already an active recording using org.gnome.Shell.Screencast?
question

Most helpful comment

FWIW, if you are using Wayland, you need to log out and log in, since wayland can't reload gnome-shell on the fly.

All 8 comments

For MP4 recording you need the gstreamer ugly plugins installed.Please refer to your distribution for how to install this. Note that some distributions don't include the x264 codec due to licensing / patent issues.

I have the ugly plugins installed, but I still get the same error.

Still could be the same reason, as I wrote above some distributions don't include x264 and you have to install it either separately or from completely different sources.

Please look into journalctl, there should be an error message from Gnome Shell with more details. And please tell me your distribution.

I am closing this as I am pretty sure the issue is either missing gstreamer ugly plugins or the plugins are not supporting the x264 codec. In both cases the output of journalctl should tell more, please refer to the documentation of your distro on how to install these parts.

If this does not solve your issues, please let me know and provide the output of journalctl.

FWIW, if you are using Wayland, you need to log out and log in, since wayland can't reload gnome-shell on the fly.

Is there a guide somewhere on how we can get this up and running using a current distribution? I have installed everything I managed to come across in various StackOverflow threads and other forums related to this, but still can't manage to get this working.

journalctl does indeed point to x264enc as being the problem, but with no package to supply it with what it needs I fail to find a way of solving this that works in 2019:

journalctl  | tail -200 | egrep  'com.uploadedlobster.peek|gnome-shell'

Sep 10 16:36:25 ubuntu-i9-vm gnome-shell[2099]: Object St.Bin (0x5580c487e460), has been already deallocated - impossible to access it. This might be caused by the object having been destroyed from C code using something such as destroy(), dispose(), or remove() vfuncs
Sep 10 16:36:25 ubuntu-i9-vm gnome-shell[2099]: clutter_actor_show: assertion 'CLUTTER_IS_ACTOR (self)' failed
Sep 10 16:37:08 ubuntu-i9-vm gnome-shell[2099]: ShellRecorder: failed to parse pipeline: ingen element 芦x264enc禄
Sep 10 16:37:08 ubuntu-i9-vm gnome-shell[2099]: shell_recorder_close: assertion 'recorder->state != RECORDER_STATE_CLOSED' failed

I have tried installing all of these packages:

apt install chromium-codecs-ffmpeg-extra  h264enc kazam
apt install gstreamer1.0-plugins-ugly
apt install libx264-dev
apt install x264
lsb_release -a
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.3 LTS
Release:    18.04
Codename:   bionic

Using the recommended installation via the stable PPA.

I found the solution in one of the many related issues. One has to log out and kill the session for Wayland to recognize the installed libraries for some reason.

Given the large number of related issues, I'd wager that adding a tip to the installation section on this, possibly also changing the error message to remind users to install the gstreamer libs when the recording mode is x264, would save you a LOT of issues (4 out of the 10 last issues is basically this).

Arch Linux here, I have all gstreamer plugins installed

1 extra/gst-libav 1.16.2-1 (82.0 KiB 230.3 KiB) (Installed)
    GStreamer open-source multimedia framework FFmpeg plugin
5 extra/gst-plugins-ugly 1.16.2-2 (189.7 KiB 666.2 KiB) (Installed)
    GStreamer open-source multimedia framework ugly plugins
4 extra/gst-plugins-good 1.16.2-2 (1.8 MiB 5.9 MiB) (Installed)
    GStreamer open-source multimedia framework good plugins
3 extra/gst-plugins-base-libs 1.16.2-1 (2.1 MiB 17.1 MiB) (Installed)
    GStreamer open-source multimedia framework base libraries
2 extra/gst-plugins-base 1.16.2-1 (277.6 KiB 931.2 KiB) (Installed)
    GStreamer open-source multimedia framework base plugins
1 extra/gst-plugins-bad 1.16.2-2 (2.1 MiB 8.1 MiB) (Installed)
    GStreamer open-source multimedia framework bad plugins

I'm pretty sure I have an H.264 encoder, but here is no "x264enc":

~ 禄 gst-inspect-1.0| grep 264
libav:  avmux_ipod: libav iPod H.264 MP4 (MPEG-4 Part 14) muxer
libav:  avdec_h264: libav H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 decoder
libav:  avenc_h264_omx: libav OpenMAX IL H.264 video encoder encoder
uvch264:  uvch264mjpgdemux: UVC H264 MJPG Demuxer
uvch264:  uvch264src: UVC H264 Source
rtp:  rtph264depay: RTP H264 depayloader
rtp:  rtph264pay: RTP H264 payloader
videoparsersbad:  h264parse: H.264 parser
typefindfunctions: video/x-h264: h264, x264, 264

"Record as WebM" still works

Was this page helpful?
0 / 5 - 0 ratings

Related issues

grimmer-std picture grimmer-std  路  6Comments

msongz picture msongz  路  7Comments

Zorono picture Zorono  路  3Comments

Art-2 picture Art-2  路  6Comments

ttatanepvp123 picture ttatanepvp123  路  4Comments