Open AidenBarrettMovidius opened 5 years ago
Same problem here on ubuntu 18.04.5 LTS.
By default I get this error:
$ peek
Failed to initialize recorder: Could not start GNOME Shell recorder.
Make sure you have the GStreamer ugly plugins installed for MP4 recording.
Switching the backend to ffmpeg does not seem any better.
$ peek -b ffmpeg
Requested screen recording backend ffmpeg
ffmpeg version 4.1.3 Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)
configuration: --enable-shared --disable-static --disable-stripping --enable-swscale --enable-pthreads --enable-libmp3lame --disable-bzlib --disable-devices --enable-libx264 --enable-gpl --enable-libv4l2
libavutil 56. 22.100 / 56. 22.100
libavcodec 58. 35.100 / 58. 35.100
libavformat 58. 20.100 / 58. 20.100
libavdevice 58. 5.100 / 58. 5.100
libavfilter 7. 40.101 / 7. 40.101
libswscale 5. 3.100 / 5. 3.100
libswresample 3. 3.100 / 3. 3.100
libpostproc 55. 3.100 / 55. 3.100
Error: Child process exited with code 1
Recording canceled: Command "ffmpeg -f x11grab -show_region 0 -framerate 10 -video_size 1918x960 -i :0+1921,217 -filter:v scale=iw/1:-1, crop=iw-mod(iw\,2):ih-mod(ih\,2) -codec:v libx264 -preset:v fast -profile:v baseline -pix_fmt yuv420p -r 10 -y /home/piotrgasiorowski/.cache/peek/peekSOSKT0.mp4" failed with status 256 (received signal 0).
Output:
ffmpeg version 4.1.3 Copyright (c) 2000-2019 the FFmpeg developers built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04) configuration: --enable-shared --disable-static --disable-stripping --enable-swscale --enable-pthreads --enable-libmp3lame --disable-bzlib --disable-devices --enable-libx264 --enable-gpl --enable-libv4l2 libavutil 56. 22.100 / 56. 22.100 libavcodec 58. 35.100 / 58. 35.100 libavformat 58. 20.100 / 58. 20.100 libavdevice 58. 5.100 / 58. 5.100 libavfilter 7. 40.101 / 7. 40.101 libswscale 5. 3.100 / 5. 3.100 libswresample 3. 3.100 / 3. 3.100 libpostproc 55. 3.100 / 55. 3.100
Unrecognized option 'show_region'.Error splitting the argument list: Option not found
This used to work before a recent system update.
$ dpkg -l | grep ffmpeg
ii ffmpeg 7:3.4.8-0ubuntu0.2 amd64 Tools for transcoding, streaming and playing of multimedia files
$ dpkg -l | grep gstreamer
ii gir1.2-gstreamer-1.0:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GObject introspection data for the GStreamer library
ii gstreamer1.0-alsa:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer plugin for ALSA
ii gstreamer1.0-clutter-3.0:amd64 3.0.26-1 amd64 Clutter PLugin for GStreamer 1.0
ii gstreamer1.0-gl:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer plugins for GL
ii gstreamer1.0-gtk3:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer plugin for GTK+3
ii gstreamer1.0-libav:amd64 1.14.5-0ubuntu1~18.04.1 amd64 libav plugin for GStreamer
ii gstreamer1.0-nice:amd64 0.1.14-1 amd64 ICE library (GStreamer plugin)
ii gstreamer1.0-packagekit 1.1.9-1ubuntu2.18.04.6 amd64 GStreamer plugin to install codecs using PackageKit
ii gstreamer1.0-plugins-bad:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer plugins from the "bad" set
ii gstreamer1.0-plugins-base:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer plugins from the "base" set
ii gstreamer1.0-plugins-base-apps 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer helper programs from the "base" set
ii gstreamer1.0-plugins-good:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer plugins from the "good" set
ii gstreamer1.0-plugins-ugly:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer plugins from the "ugly" set
ii gstreamer1.0-pulseaudio:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer plugin for PulseAudio
ii gstreamer1.0-tools 1.14.5-0ubuntu1~18.04.1 amd64 Tools for use with GStreamer
ii gstreamer1.0-x:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer plugins for X11 and Pango
ii libgstreamer-gl1.0-0:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer GL libraries
ii libgstreamer-opencv1.0-0:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer OpenCV libraries
ii libgstreamer-plugins-bad1.0-0:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer libraries from the "bad" set
ii libgstreamer-plugins-bad1.0-dev:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer development files for libraries from the "bad" set
ii libgstreamer-plugins-base1.0-0:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer libraries from the "base" set
ii libgstreamer-plugins-base1.0-dev:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer development files for libraries from the "base" set
ii libgstreamer-plugins-good1.0-0:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer development files for libraries from the "good" set
ii libgstreamer-plugins-good1.0-dev 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer development files for libraries from the "good" set
ii libgstreamer1.0-0:amd64 1.14.5-0ubuntu1~18.04.1 amd64 Core GStreamer libraries and elements
ii libgstreamer1.0-dev:amd64 1.14.5-0ubuntu1~18.04.1 amd64 GStreamer core development files
ii libreoffice-avmedia-backend-gstreamer 1:6.0.7-0ubuntu0.18.04.10 amd64 GStreamer backend for LibreOffice
Same issue here, however it works if I launch peek with ffmpeg backend:
peek -b ffmpeg
$ dpkg -l | grep ffmpeg
ii chromium-codecs-ffmpeg-extra 1:85.0.4183.83-0ubuntu2 amd64 Transitional package - chromium-codecs-ffmpeg-extra -> chromium-ffmpeg snap
ii ffmpeg 7:4.4.1-3ubuntu5 amd64 Tools for transcoding, streaming and playing of multimedia files
ii gstreamer1.0-libav:amd64 1.20.1-1 amd64 ffmpeg plugin for GStreamer
$ dpkg -l | grep gstreamer
ii gir1.2-gstreamer-1.0:amd64 1.20.1-1 amd64 GObject introspection data for the GStreamer library
ii gstreamer1.0-alsa:amd64 1.20.1-1 amd64 GStreamer plugin for ALSA
ii gstreamer1.0-clutter-3.0:amd64 3.0.27-2build2 amd64 Clutter PLugin for GStreamer 1.0
ii gstreamer1.0-gl:amd64 1.20.1-1 amd64 GStreamer plugins for GL
ii gstreamer1.0-gtk3:amd64 1.20.1-1ubuntu1 amd64 GStreamer plugin for GTK+3
ii gstreamer1.0-libav:amd64 1.20.1-1 amd64 ffmpeg plugin for GStreamer
ii gstreamer1.0-packagekit 1.2.5-2ubuntu2 amd64 GStreamer plugin to install codecs using PackageKit
ii gstreamer1.0-pipewire:amd64 0.3.48-1ubuntu1 amd64 GStreamer 1.0 plugin for the PipeWire multimedia server
ii gstreamer1.0-plugins-bad:amd64 1.20.1-1ubuntu2 amd64 GStreamer plugins from the "bad" set
ii gstreamer1.0-plugins-base:amd64 1.20.1-1 amd64 GStreamer plugins from the "base" set
ii gstreamer1.0-plugins-base:i386 1.20.1-1 i386 GStreamer plugins from the "base" set
ii gstreamer1.0-plugins-base-apps 1.20.1-1 amd64 GStreamer helper programs from the "base" set
ii gstreamer1.0-plugins-good:amd64 1.20.1-1ubuntu1 amd64 GStreamer plugins from the "good" set
ii gstreamer1.0-plugins-ugly:amd64 1.20.1-1 amd64 GStreamer plugins from the "ugly" set
ii gstreamer1.0-pulseaudio:amd64 1.20.1-1ubuntu1 amd64 GStreamer plugin for PulseAudio (transitional package)
ii gstreamer1.0-tools 1.20.1-1 amd64 Tools for use with GStreamer
ii gstreamer1.0-vaapi:amd64 1.20.1-1 amd64 VA-API plugins for GStreamer
ii gstreamer1.0-x:amd64 1.20.1-1 amd64 GStreamer plugins for X11 and Pango
ii libgstreamer-gl1.0-0:amd64 1.20.1-1 amd64 GStreamer GL libraries
ii libgstreamer-plugins-bad1.0-0:amd64 1.20.1-1ubuntu2 amd64 GStreamer libraries from the "bad" set
ii libgstreamer-plugins-base1.0-0:amd64 1.20.1-1 amd64 GStreamer libraries from the "base" set
ii libgstreamer-plugins-base1.0-0:i386 1.20.1-1 i386 GStreamer libraries from the "base" set
ii libgstreamer-plugins-good1.0-0:amd64 1.20.1-1ubuntu1 amd64 GStreamer development files for libraries from the "good" set
ii libgstreamer1.0-0:amd64 1.20.1-1 amd64 Core GStreamer libraries and elements
ii libgstreamer1.0-0:i386 1.20.1-1 i386 Core GStreamer libraries and elements
$ ffmpeg -version
ffmpeg version 4.4.1-3ubuntu5 Copyright (c) 2000-2021 the FFmpeg developers
built with gcc 11 (Ubuntu 11.2.0-18ubuntu1)
configuration: --prefix=/usr --extra-version=3ubuntu5 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-pocketsphinx --enable-librsvg --enable-libmfx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
libavutil 56. 70.100 / 56. 70.100
libavcodec 58.134.100 / 58.134.100
libavformat 58. 76.100 / 58. 76.100
libavdevice 58. 13.100 / 58. 13.100
libavfilter 7.110.100 / 7.110.100
libswscale 5. 9.100 / 5. 9.100
libswresample 3. 9.100 / 3. 9.100
libpostproc 55. 9.100 / 55. 9.100
For me, Ubuntu 22.04 Journalctl logs when it failed:
Feb 09 21:38:18 Tiles-PC dbus-daemon[8318]: [session uid=1000 pid=8318] Activating service name='org.gnome.Shell.Screencast' requested by ':1.10328' (uid=1000 pid=712491 comm="peek " label="unconfined")
Feb 09 21:38:18 Tiles-PC dbus-daemon[8318]: [session uid=1000 pid=8318] Successfully activated service 'org.gnome.Shell.Screencast'
Feb 09 21:38:23 Tiles-PC dbus-daemon[8318]: [session uid=1000 pid=8318] Activating service name='org.gnome.Shell.Screencast' requested by ':1.10328' (uid=1000 pid=712491 comm="peek " label="unconfined")
Feb 09 21:38:23 Tiles-PC dbus-daemon[8318]: [session uid=1000 pid=8318] Successfully activated service 'org.gnome.Shell.Screencast'
Feb 09 21:38:23 Tiles-PC gjs[712543]: JS LOG: Failed to start recorder: GDBus.Error:org.freedesktop.DBus.Error.Failed: Failed to start screen cast: Couldn't connect pipewire context
PipeWire service was masked:
systemctl --user status pipewire
I don't know why... I might've done it myself to fix some Bluetooth thing a while back, anyway I unmasked and started the service:
systemctl unmask --user pipewire
systemctl --user start pipewire
$ systemctl --user status pipewire
● pipewire.service - PipeWire Multimedia Service
Loaded: loaded (/usr/lib/systemd/user/pipewire.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2024-02-09 21:47:34 GMT; 2s ago
TriggeredBy: ● pipewire.socket
Main PID: 716047 (pipewire)
Tasks: 3 (limit: 38244)
Memory: 5.7M
CPU: 23ms
CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
└─716047 /usr/bin/pipewire
The recording now starts but it crashes when I try to save:
peek
Using screen recorder backend gnome-shell
Recording to file /home/baa/.cache/peek/peek14F6I2.webm
Error: Timeout was reached
Recording canceled: Timeout was reached
I tried both with and without gifski with high quality ticked.
peek -b ffmpeg
worked fine for me.
I could not see any further journalctl lines during this new error. Happy to do more testing let me know what to do.
Yeah I don't know why but enabling Pipewire breaks my microphone ffmpeg works great :)
Peek: 1.4.0 GTK: 3.22.30 GLib: 2.56.4 Desktop: ubuntu:GNOME Display server: X FFmpeg version:
Output format: gif gifski enabled: false
Error details: