Package: recordmydesktop Version: 0.3.8.1+svn602-1+b1 Followup-For: Bug #649824
Dear Maintainer, The issue is still present and caused by an upstream bug/typo. --use-jack sets the parameter also used by the --x option. (src/rmd_parseargs.c:194) A workaround is to order the options: --use-jack .. -x 0 Related issue with --use-jack is that poptGetOptArg() does not iterate correctly over space separate arguments. So at most a single jack port can be used, and jack-ports with spaces are not possible. A Attached patch resolves both issues, by allowing incremental --use-jack options. e.g. to record a stereo file: recordmydesktop --width=1920 --height=1072 --fps=25 -o /tmp/test.ogv \ -x 0 -y 0 --use-jack system:capture_1 --use-jack "jackapp:Right Channel" -- System Information: Debian Release: stretch/sid APT prefers testing APT policy: (900, 'testing') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.6.0-1-amd64 (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages recordmydesktop depends on: ii libasound2 1.1.2-1 ii libc6 2.23-5 ii libice6 2:1.0.9-1+b1 ii libjack-jackd2-0 [libjack-0.116] 1.9.10+20150825git1ed50c92~dfsg-2 ii libogg0 1.3.2-1 ii libpopt0 1.16-10 ii libsm6 2:1.2.2-1+b1 ii libtheora0 1.1.1+dfsg.1-14 ii libvorbis0a 1.3.5-3 ii libvorbisenc2 1.3.5-3 ii libvorbisfile3 1.3.5-3 ii libx11-6 2:1.6.3-1 ii libxdamage1 1:1.1.4-2+b1 ii libxext6 2:1.3.3-1 ii libxfixes3 1:5.0.2-1 ii zlib1g 1:1.2.8.dfsg-2+b1 recordmydesktop recommends no packages. recordmydesktop suggests no packages. -- no debconf information
Index: recordmydesktop-0.3.8.1+svn602/src/rmd_parseargs.c =================================================================== --- recordmydesktop-0.3.8.1+svn602.orig/src/rmd_parseargs.c +++ recordmydesktop-0.3.8.1+svn602/src/rmd_parseargs.c @@ -191,7 +191,7 @@ boolean rmdParseArgs(int argc, char **ar "SOUND_DEVICE" }, { "use-jack", '\0', - POPT_ARG_STRING | RMD_USE_JACK_EXTRA_FLAG, &arg_return->x, RMD_ARG_USE_JACK, + POPT_ARG_STRING | RMD_USE_JACK_EXTRA_FLAG, NULL, RMD_ARG_USE_JACK, "Record audio from the specified list of space-separated jack ports.", "port1 port2... portn" }, @@ -350,9 +350,7 @@ boolean rmdParseArgs(int argc, char **ar case RMD_ARG_USE_JACK: { - arg_return->jack_nports = 0; - - while (arg) { + while (arg && arg_return->jack_nports < RMD_MAX_JACK_PORTS) { arg_return->jack_nports++;