phw / peek

Simple animated GIF screen recorder with an easy to use interface
GNU General Public License v3.0
10.32k stars 320 forks source link

Error when starting a new record #315

Closed damien-monni closed 6 years ago

damien-monni commented 6 years ago

Peek: 1.3.1 GTK: 3.18.9 GLib: 2.48.2

Details:

Command "ffmpeg -f x11grab -show_region 0 -framerate 25 -video_size 795x310 -i :0+309,288 -filter:v scale=iw/1:-1 -codec:v libvpx-vp9 -lossless 1 -r 25 -y /home/damien/.cache/peek/peekWLVYHZ.webm" failed with status 256 (received signal 0).

Output:
ffmpeg version N-87871-g7480f23 Copyright (c) 2000-2017 the FFmpeg developers  built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.5) 20160609  configuration:   libavutil      55. 79.100 / 55. 79.100  libavcodec     57.108.100 / 57.108.100  libavformat    57. 84.100 / 57. 84.100  libavdevice    57. 11.100 / 57. 11.100  libavfilter     6.108.100 /  6.108.100  libswscale      4.  9.100 /  4.  9.100  libswresample   2. 10.100 /  2. 10.100Unrecognized option 'show_region'.Error splitting the argument list: Option not found

This happens everytime I start a new record, just after the countdown from 3 to 0 finished.

phw commented 6 years ago

What version of ffmpeg is this and how did you install it? It looks like it was built without x11grab / xcb support. If you built ffmpeg from source please try compiling it with --enable-libxcb. Maybe you even have to specify --enable-libxcb

phw commented 6 years ago

See also https://bugs.funtoo.org/browse/FL-4269

phw commented 6 years ago

Closing, no user feedback. But compiling ffmpeg with xcb support should fix this.

mkyral commented 6 years ago

Hi, I've ffmpeg compiled with xcb support, but recording fails (was working before)

worker /home/marian # emerge -av ffmpeg

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] media-video/ffmpeg-3.3.6:0/55.57.57::gentoo  USE="X alsa bzip2 encode gnutls gpl hardcoded-tables iconv mp3 network opengl postproc sdl theora threads truetype vorbis x264 xcb xvid zlib (-altivec) -amr -amrenc -bluray -bs2b -cdio -chromaprint -chromium -cpudetection -debug -doc -fdk -flite -fontconfig -frei0r -fribidi -gcrypt -gme -gmp -gsm -iec61883 -ieee1394 -jack -jpeg2k -kvazaar -ladspa -libass -libcaca -libilbc -librtmp -libsoxr -libv4l -lzma (-mipsdspr1) (-mipsdspr2) (-mipsfpu) (-mmal) -modplug -nvenc -openal -openh264 -openssl -opus -oss -pic -pulseaudio -rubberband -samba (-schroedinger) -snappy -sofalizer -speex -ssh -static-libs -test -twolame -v4l -vaapi -vdpau -vpx -wavpack -webp -x265 -zeromq -zimg -zvbi (-celt%)" ABI_X86="32 (64) (-x32)" CPU_FLAGS_X86="aes avx avx2 fma3 mmx mmxext sse sse2 sse3 sse4_1 sse4_2 ssse3 -3dnow -3dnowext -fma4 -xop" FFTOOLS="aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart sidxindex trasher" 0 KiB

Total: 1 package (1 reinstall), Size of downloads: 0 KiB
Command "ffmpeg -f x11grab -show_region 0 -framerate 10 -video_size 1120x707 -i :0+521,372 -filter:v scale=iw/1:-1 -codec:v libvpx-vp9 -lossless 1 -r 10 -y /home/marian/.cache/peek/peekI3JBSZ.webm" failed with status 256 (received signal 0).

Output:
ffmpeg version 3.3.6 Copyright (c) 2000-2017 the FFmpeg developers  built with gcc 7.3.0 (Gentoo 7.3.0-r3 p1.4)  configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --docdir=/usr/share/doc/ffmpeg-3.3.6/html --mandir=/usr/share/man --enable-shared --cc=x86_64-pc-linux-gnu-gcc --cxx=x86_64-pc-linux-gnu-g++ --ar=x86_64-pc-linux-gnu-ar --optflags='-march=native -O2 -pipe' --disable-static --enable-avfilter --enable-avresample --disable-stripping --disable-indev=v4l2 --disable-outdev=v4l2 --disable-indev=oss --disable-indev=jack --disable-outdev=oss --enable-bzlib --disable-runtime-cpudetect --disable-debug --disable-gcrypt --enable-gnutls --disable-gmp --enable-gpl --enable-hardcoded-tables --enable-iconv --disable-lzma --enable-network --disable-openssl --enable-postproc --disable-libsmbclient --enable-ffplay --enable-sdl2 --disable-vaapi --disable-vdpau --enable-xlib --enable-libxcb --enable-libxcb-shm --enable-libxcb-xfixes --enable-zlib --disable-libcdio --disable-libiec61883 --disable-libdc1394 --disable-libcaca --disable-openal --enable-opengl --disable-libv4l2 --disable-libpulse --disable-libopencore-amrwb --disable-libopencore-amrnb --disable-libfdk-aac --disable-libopenjpeg --disable-libbluray --disable-libcelt --disable-libgme --disable-libgsm --disable-mmal --disable-libmodplug --disable-libopus --disable-libilbc --disable-librtmp --disable-libssh --disable-libschroedinger --disable-libspeex --enable-libvorbis --disable-libvpx --disable-libzvbi --disable-libbs2b --disable-chromaprint --disable-libflite --disable-frei0r --disable-libfribidi --disable-fontconfig --disable-ladspa --disable-libass --enable-libfreetype --disable-librubberband --disable-netcdf --disable-libzmq --disable-libzimg --disable-libsoxr --enable-pthreads --disable-libvo-amrwbenc --enable-libmp3lame --disable-libkvazaar --disable-nvenc --disable-libopenh264 --disable-libsnappy --enable-libtheora --disable-libtwolame --disable-libwavpack --disable-libwebp --enable-libx264 --disable-libx265 --enable-libxvid --disable-amd3dnow --disable-amd3dnowext --disable-fma4 --disable-xop --cpu=host --disable-doc --disable-htmlpages --enable-manpages  libavutil      55. 58.100 / 55. 58.100  libavcodec     57. 89.100 / 57. 89.100  libavformat    57. 71.100 / 57. 71.100  libavdevice    57.  6.100 / 57.  6.100  libavfilter     6. 82.100 /  6. 82.100  libavresample   3.  5.  0 /  3.  5.  0  libswscale      4.  6.100 /  4.  6.100  libswresample   2.  7.100 /  2.  7.100  libpostproc    54.  5.100 / 54.  5.100Unrecognized option 'lossless'.Error splitting the argument list: Option not found
Jieiku commented 5 years ago

I am wondering if Peek could do a little error handling here and check that the lossless option is available, and use a different mode if it is not. I am not too horribly concerned about quality. I just want to make a simple gif recording that I can submit with bug reports.

anastasiadubrovina commented 4 years ago

Re-opening this thread: @phw I used standard sudo apt-get ... to install both keep and ffmpeg, and get the same error. Do you have some instructions for installing ffmpeg with xcb? Alternatively, to make Peek to actually work "out of the box" - could it include the necessary pre-built ffmpeg? Thanks!