After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 777862 - gnome-sound-recorder: trying to record sound gives ' Your audio capture settings are invalid'
gnome-sound-recorder: trying to record sound gives ' Your audio capture setti...
Status: RESOLVED FIXED
Product: gnome-sound-recorder
Classification: Other
Component: General
3.21.x
Other Linux
: Normal normal
: ---
Assigned To: gnome-sound-recorder maintainer(s)
gnome-sound-recorder maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2017-01-28 07:38 UTC by Austin English
Modified: 2017-03-20 04:42 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
installed gstreamer packages (5.09 KB, text/plain)
2017-02-12 08:57 UTC, Austin English
Details
glib packages (6.17 KB, text/plain)
2017-03-02 07:49 UTC, Austin English
Details
gst debug log (6.68 KB, text/x-log)
2017-03-12 01:15 UTC, Austin English
Details
config.log (35.04 KB, text/x-log)
2017-03-15 01:59 UTC, Austin English
Details

Description Austin English 2017-01-28 07:38:56 UTC
On both Debian Unstable and Tails, using gnome-sound-recorder and trying to record sound gives an error message: 'Your audio capture settings are invalid'

Debian bug:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=852870

Tails bug:
https://labs.riseup.net/code/issues/11780

There's no output from this, nor anyway that I can see to tweak my audio settings. My audio works for Iceweasel +  Google Hangouts, and I can use my mic.

The system is using pulseaudio.
Comment 1 Meg Ford 2017-02-09 03:10:49 UTC
Hi, That error indicates that there is a missing GStreamer src element. Can you tell me what GStreamer packages you have installed and what codec you are using for the recording?
Comment 2 Austin English 2017-02-12 08:57:39 UTC
Created attachment 345557 [details]
installed gstreamer packages
Comment 3 Austin English 2017-02-12 08:58:18 UTC
Hi Meg,

I was using the defaults (honestly, didn't realize there was an option), so Ogg Vorbis.

I've just tested Ogg Vorbis, Opus, Flac, MP3 and MOV, none of which on my Debian unstable machine.

I've attached my list of installed gstreamer packages as an attachment (it was a bit long for an inline).

Please let me know if I can be of further assistance.
Comment 4 Meg Ford 2017-02-26 23:59:21 UTC
I can't reproduce your bug so far, but I used to get a similar error on my system that was fixed by restarting the pulseaudio demon. Can you try that?
Comment 5 Austin English 2017-02-27 06:01:16 UTC
(In reply to Meg Ford from comment #4)
> I can't reproduce your bug so far, but I used to get a similar error on my
> system that was fixed by restarting the pulseaudio demon. Can you try that?

doing:
$ pulseaudio -k
$ pulseaudio --start
$ gnome-sound-recorder

gives the same error.

Are there some debugging channels I could enable that would shed more light on this?

Alternatively, if you're able to boot tails (a vm should work), you could enable root and install gnome-sound-recorder, where it's reproducible (I've most recently tested in 2.10, which is the current release).
Comment 6 Meg Ford 2017-02-27 13:24:14 UTC
If you cd into the directory with the bin file, you can run GST_DEBUG=6 ./gnome-sound-recorder. That will give you a few thousand lines of output. Please attach them here and I'll take a look.

Thanks for the vm tip! I run Fedora, so I tried to make a live usb of Debian 9 last night but it failed to boot. I'll try the vm tonight.
Comment 7 Meg Ford 2017-02-28 02:21:27 UTC
Don't bother with the debug output. I can reproduce the error on Tails. Will write up a fix tomorrow. Thanks for the report!
Comment 8 Meg Ford 2017-03-01 05:18:22 UTC
So, this is caused by having <Glib 2.46. I changed the code to use some recent Gio File monitor flags and events, but they are only in >=2.46. Does updating the package fix the error for you?
Comment 9 Austin English 2017-03-02 07:48:53 UTC
AFAICT, I have 2.50.3 (on my Debian unstable machine, I haven't checked on Tails).

I'll attach a listing from dpkg -l.
Comment 10 Austin English 2017-03-02 07:49:28 UTC
Created attachment 347030 [details]
glib packages
Comment 11 Meg Ford 2017-03-03 03:45:09 UTC
That's odd; the error is clearly because the Gio.FileMonitor Flags aren't recognized:
amnesia@amnesia:~/Tor Browser$ gnome-sound-recorder
Gjs-Message: JS LOG: Sound Recorder started

(org.gnome.SoundRecorder:14743): Gjs-WARNING **: JS ERROR: Error: Expected type flags for Argument 'flags' but got type 'undefined'
Listview<.monitorListview@resource:///org/gnome/SoundRecorder/js/listview.js:79
wrapper@resource:///org/gnome/gjs/modules/lang.js:169
MainView<.scrolledWinAdd@resource:///org/gnome/SoundRecorder/js/mainWindow.js:535
wrapper@resource:///org/gnome/gjs/modules/lang.js:169
Listview<._onNextFileComplete/<@resource:///org/gnome/SoundRecorder/js/listview.js:153
main@resource:///org/gnome/SoundRecorder/js/main.js:42
run@resource:///org/gnome/gjs/modules/package.js:192
@/usr/bin/gnome-sound-recorder:6

I wonder why this is happening on Debian systems but I don't see it in GNOME. I'll add some code to work around it and let you know when it's fixed.
Comment 12 Meg Ford 2017-03-10 01:50:10 UTC
Hi Austin,

I added a workaround in the code here: https://git.gnome.org/browse/gnome-sound-recorder/commit/?id=895728ed10581d0d2b3cab1dcd256e1ce889f502  

This works correctly for me, but I'd like to verify that this fixes the issue for you. Do you need me to make a release for you to test or can you use the code from master for testing?
Comment 13 Austin English 2017-03-10 05:34:27 UTC
(In reply to Meg Ford from comment #12)
> Hi Austin,
> 
> I added a workaround in the code here:
> https://git.gnome.org/browse/gnome-sound-recorder/commit/
> ?id=895728ed10581d0d2b3cab1dcd256e1ce889f502  
> 
> This works correctly for me, but I'd like to verify that this fixes the
> issue for you. Do you need me to make a release for you to test or can you
> use the code from master for testing?

Hi Meg,

Thanks for the fix (and the release offer). I'm capable of compiling. I did a git pull, and compiled 3.21.92-12-g895728e, but unfortunately I still see the issue on my Debian unstable laptop (which is where that glib package list came from).

If there's some log I can get you that can help more, please let me know.
Comment 14 Meg Ford 2017-03-10 06:03:20 UTC
Can you run gnome-sound-recorder in the terminal and paste the error output when you try to record?
Comment 15 Austin English 2017-03-10 06:07:18 UTC
(In reply to Meg Ford from comment #14)
> Can you run gnome-sound-recorder in the terminal and paste the error output
> when you try to record?

Unfortunately, there's not any. On startup, I see:
austin@debian-laptop:~/src/gnome-sound-recorder$ ./src/org.gnome.SoundRecorder 
Gjs-Message: JS LOG: Running from source tree, using local files
Gjs-Message: JS LOG: Sound Recorder started

then nothing after interacting with the UI.

Are you on IRC at all? I feel like that would be faster for debuggging than BZ :)
Comment 16 Austin English 2017-03-10 06:14:20 UTC
N/m, just found your wiki page. I'll send you a private mail about it.
Comment 17 Miguel Vaello Martínez 2017-03-10 10:37:21 UTC
(In reply to Austin English from comment #15)
> (In reply to Meg Ford from comment #14)
> > Can you run gnome-sound-recorder in the terminal and paste the error output
> > when you try to record?
> 
> Unfortunately, there's not any. On startup, I see:
> austin@debian-laptop:~/src/gnome-sound-recorder$
> ./src/org.gnome.SoundRecorder 
> Gjs-Message: JS LOG: Running from source tree, using local files
> Gjs-Message: JS LOG: Sound Recorder started
> 
> then nothing after interacting with the UI.
> 
> Are you on IRC at all? I feel like that would be faster for debuggging than
> BZ :)

Could you try to run the app with JHBuild and paste the log?

Thanks.
Comment 18 Meg Ford 2017-03-11 00:35:41 UTC
(In reply to Miguel Vaello Martínez from comment #17)
> (In reply to Austin English from comment #15)
> > (In reply to Meg Ford from comment #14)
> > > Can you run gnome-sound-recorder in the terminal and paste the error output
> > > when you try to record?
> > 
> > Unfortunately, there's not any. On startup, I see:
> > austin@debian-laptop:~/src/gnome-sound-recorder$
> > ./src/org.gnome.SoundRecorder 
> > Gjs-Message: JS LOG: Running from source tree, using local files
> > Gjs-Message: JS LOG: Sound Recorder started
> > 
> > then nothing after interacting with the UI.
> > 
> > Are you on IRC at all? I feel like that would be faster for debuggging than
> > BZ :)
> 
> Could you try to run the app with JHBuild and paste the log?
> 
> Thanks.

This bug is only happening in Debian and Tails. It is not reproducible in JhBuild.
Comment 19 Austin English 2017-03-11 04:17:01 UTC
Still preesnt in still present with 3.21.92-15-gae4db49 after the updated fix.
Comment 20 Meg Ford 2017-03-11 22:51:17 UTC

(In reply to Austin English from comment #19)
> Still preesnt in still present with 3.21.92-15-gae4db49 after the updated
> fix.

You can try running the recorder with GST_DEBUG=4 ./src/org.gnome.SoundRecorder and see if you get any useful output. When I ran it that way on Tails just now I got

 0:00:04.808620096 15032  0x9af2020 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:456:gst_element_factory_make: no such element factory "pulsesrc"!

I'm honestly not sure why the app can't find any GStreamer plugins, considering the package manager says they're installed:
amnesia@amnesia:~$ sudo apt-get install  gstreamer1.0*
[sudo] password for amnesia: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'gstreamer1.0-fluendo-mp3' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-vaapi' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-audiosource' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-pocketsphinx' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-vaapi-doc' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-clutter' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-alsa' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-videosink' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-visualization' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-plugins-base-apps' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-tools' for regex 'gstreamer1.0*'
Note, selecting 'libgstreamer1.0-0-dbg' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-pulseaudio' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-plugins-ugly-doc' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-plugins-base-doc' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-plugins-really-bad' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-plugins-ugly' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-doc' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-qapt' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-rtsp-dbg' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-libav-dbg' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-plugins-good' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-ffmpeg' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-plugins-good-dbg' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-espeak' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-plugins-bad-dbg' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-rtsp' for regex 'gstreamer1.0*'
Note, selecting 'libgstreamer1.0-dev' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-audiosink' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-videosource' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-gnonlin' for regex 'gstreamer1.0*'
Note, selecting 'libgstreamer1.0-0' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-plugins-good-doc' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-crystalhd' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-plugins-bad-doc' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-plugins-base' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-packagekit' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-nice' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-lame' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-clutter-3.0' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-x' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-libav' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-plugins-ugly-dbg' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-plugins-base-dbg' for regex 'gstreamer1.0*'
Note, selecting 'gstreamer1.0-plugins-bad' for regex 'gstreamer1.0*'
gstreamer1.0-plugins-base is already the newest version.
gstreamer1.0-clutter is already the newest version.
gstreamer1.0-libav is already the newest version.
libgstreamer1.0-0 is already the newest version.
gstreamer1.0-gnonlin is already the newest version.
gstreamer1.0-plugins-bad is already the newest version.
gstreamer1.0-plugins-ugly is already the newest version.
gstreamer1.0-plugins-good is already the newest version.
gstreamer1.0-x is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 168 not upgraded.

dpkg-query -l 'gstreamer1.0*' gives: 
un  gstreamer1.0-a <none>       <none>       (no description available)
un  gstreamer1.0-a <none>       <none>       (no description available)
ii  gstreamer1.0-c 2.0.12-1     i386         Clutter PLugin for GStreamer 1.0
ii  gstreamer1.0-g 1.2.1-1      i386         non-linear editing module for GSt
un  gstreamer1.0-l <none>       <none>       (no description available)
ii  gstreamer1.0-l 1.4.4-2      i386         libav plugin for GStreamer
ii  gstreamer1.0-p 1.4.4-2.1+de i386         GStreamer plugins from the "bad" 
ii  gstreamer1.0-p 1.4.4-2      i386         GStreamer plugins from the "base"
ri  gstreamer1.0-p 1.4.4-2+deb8 i386         GStreamer plugins from the "good"
un  gstreamer1.0-p <none>       <none>       (no description available)
ii  gstreamer1.0-p 1.4.4-2+b1   i386         GStreamer plugins from the "ugly"
un  gstreamer1.0-p <none>       <none>       (no description available)
un  gstreamer1.0-t <none>       <none>       (no description available)
un  gstreamer1.0-v <none>       <none>       (no description available)
un  gstreamer1.0-v <none>       <none>       (no description available)
un  gstreamer1.0-v <none>       <none>       (no description available)
ii  gstreamer1.0-x 1.4.4-2      i386         GStreamer plugins for X11 and Pan

When I check for the plugin I get:
amnesia@amnesia:~$ gst-inspect-1.0 pulsesrc
bash: gst-inspect-1.0: command not found

When I look for the pulseaudio shared library I can't find it, either:
amnesia@amnesia:/$ sudo find -iname "libgstpulse.so"
[sudo] password for amnesia: 
./usr/lib/i386-linux-gnu/gstreamer-0.10/libgstpulse.so
./lib/live/mount/rootfs/filesystem.squashfs/usr/lib/i386-linux-gnu/gstreamer-0.10/libgstpulse.so

Can you verify that any of these things are happening on your system? I generally use Fedora and everything is fine on my system there, but it's possible I'm missing something simple that a Debian person would recognize quickly.

BTW, for Tails 2.10 Jessie backports is not included in the sources list so I had to add it to get >= Glib 2.46. The default version of Glib was 2.42.1.
Comment 21 Austin English 2017-03-12 01:15:20 UTC
Created attachment 347732 [details]
gst debug log
Comment 22 Austin English 2017-03-12 01:17:47 UTC
Hi Meg,

On my Debian Sid system, I ran with GST_DEBUG=4 (attached). I see the pulsesrc comment:

0:00:03.606222867 29365       0xd3c730 INFO                 default encoding-profile.c:1278:gst_encoding_profile_get_file_extension: caps application/ogg, ext: ogg
0:00:03.606878904 29365       0xd3c730 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:460:gst_element_factory_make: no such element factory "pulsesrc"!

Doing:
$ apt-get -y install gstreamer1.0-pulseaudio

works for me! I haven't tested on Tails yet, but at least for Debian it appears to be a missing package dependency? Does gnome-sound-recorder always expect to have pulse available?
Comment 23 Meg Ford 2017-03-12 01:42:37 UTC
(In reply to Austin English from comment #22)
> Hi Meg,
> 
> On my Debian Sid system, I ran with GST_DEBUG=4 (attached). I see the
> pulsesrc comment:
> 
> 0:00:03.606222867 29365       0xd3c730 INFO                 default
> encoding-profile.c:1278:gst_encoding_profile_get_file_extension: caps
> application/ogg, ext: ogg
> 0:00:03.606878904 29365       0xd3c730 INFO     GST_ELEMENT_FACTORY
> gstelementfactory.c:460:gst_element_factory_make: no such element factory
> "pulsesrc"!
> 
> Doing:
> $ apt-get -y install gstreamer1.0-pulseaudio
> 
> works for me! I haven't tested on Tails yet, but at least for Debian it
> appears to be a missing package dependency? Does gnome-sound-recorder always
> expect to have pulse available?

Yes, you'll always need the gstreamer pulseaudio plugin. It's usually included in gst-plugins-good, so it's odd that you had to install it separately.
Comment 24 Austin English 2017-03-12 04:21:26 UTC
(In reply to Meg Ford from comment #23)
> (In reply to Austin English from comment #22)
> > Hi Meg,
> > 
> > On my Debian Sid system, I ran with GST_DEBUG=4 (attached). I see the
> > pulsesrc comment:
> > 
> > 0:00:03.606222867 29365       0xd3c730 INFO                 default
> > encoding-profile.c:1278:gst_encoding_profile_get_file_extension: caps
> > application/ogg, ext: ogg
> > 0:00:03.606878904 29365       0xd3c730 INFO     GST_ELEMENT_FACTORY
> > gstelementfactory.c:460:gst_element_factory_make: no such element factory
> > "pulsesrc"!
> > 
> > Doing:
> > $ apt-get -y install gstreamer1.0-pulseaudio
> > 
> > works for me! I haven't tested on Tails yet, but at least for Debian it
> > appears to be a missing package dependency? Does gnome-sound-recorder always
> > expect to have pulse available?
> 
> Yes, you'll always need the gstreamer pulseaudio plugin. It's usually
> included in gst-plugins-good, so it's odd that you had to install it
> separately.

Looks like Debian needs to update its package dependencies:
https://packages.debian.org/sid/gnome-sound-recorder

However, I noticed that Fedora is depending on gstreamer1-plugins-base, not gstreamer1-plugins-good:
http://pkgs.fedoraproject.org/cgit/rpms/gnome-sound-recorder.git/tree/gnome-sound-recorder.spec

is that intentional, and gnome-sound-recorder just works works by luck from some other package pulling it in?
Comment 25 Meg Ford 2017-03-12 05:23:10 UTC
It sounds like luck to me. Pulseaudio is in plugins-good https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good-plugins/html/gst-plugins-good-plugins-plugin-pulseaudio.html#plugin-pulseaudio

I'll update configure.ac to include the all GStreamer dependencies.
Comment 26 Austin English 2017-03-12 06:08:55 UTC
(In reply to Meg Ford from comment #25)
> It sounds like luck to me. Pulseaudio is in plugins-good
> https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good-
> plugins/html/gst-plugins-good-plugins-plugin-pulseaudio.html#plugin-
> pulseaudio
> 
> I'll update configure.ac to include the all GStreamer dependencies.

Cool. While that's helpful, I think the proper thing to do here would be:
A) change Fedora's dependencies to gstreamer1-plugins-good, rather than base (your call, of course)
B) Detect if gstreamer-pulseaudio is missing, and warn the user appropriately.

I'm not very familiar with gnome-sound-recorder's codebase, so I'm not sure how difficult B would be..
Comment 27 Meg Ford 2017-03-12 06:34:22 UTC
(In reply to Austin English from comment #26)
> (In reply to Meg Ford from comment #25)
> > It sounds like luck to me. Pulseaudio is in plugins-good
> > https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good-
> > plugins/html/gst-plugins-good-plugins-plugin-pulseaudio.html#plugin-
> > pulseaudio
> > 
> > I'll update configure.ac to include the all GStreamer dependencies.
> 
> Cool. While that's helpful, I think the proper thing to do here would be:
> A) change Fedora's dependencies to gstreamer1-plugins-good, rather than base
> (your call, of course)

Sure, I can contact to the package maintainers and ask them to do that. Is there a reason why you don't think adding it to configure.ac would be helpful for package maintainers? It seems like the best way to enforce that the correct dependencies are installed with the package. However, I'm not a package maintainer so maybe there's a reason it would be better to e.g. file a bug downstream?
Totem, for example, has checks in configure.ac, both for the gstreamer dependencies, and also for the required plugins:
https://git.gnome.org/browse/totem/tree/configure.ac#n173

> B) Detect if gstreamer-pulseaudio is missing, and warn the user
> appropriately.
I can require gst-inspect and use that to check for the plugin and warn the user when they press record. That's a simple fix. It wasn't in the code because GstPbutils missing plugin message is usually used for that, but can't be used if the pipeline can't be created. 

> 
> I'm not very familiar with gnome-sound-recorder's codebase, so I'm not sure
> how difficult B would be..
Comment 28 Austin English 2017-03-12 06:43:07 UTC
(In reply to Meg Ford from comment #27)
> (In reply to Austin English from comment #26)
> > (In reply to Meg Ford from comment #25)
> > > It sounds like luck to me. Pulseaudio is in plugins-good
> > > https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good-
> > > plugins/html/gst-plugins-good-plugins-plugin-pulseaudio.html#plugin-
> > > pulseaudio
> > > 
> > > I'll update configure.ac to include the all GStreamer dependencies.
> > 
> > Cool. While that's helpful, I think the proper thing to do here would be:
> > A) change Fedora's dependencies to gstreamer1-plugins-good, rather than base
> > (your call, of course)
> 
> Sure, I can contact to the package maintainers and ask them to do that. Is
> there a reason why you don't think adding it to configure.ac would be
> helpful for package maintainers? It seems like the best way to enforce that
> the correct dependencies are installed with the package. However, I'm not a
> package maintainer so maybe there's a reason it would be better to e.g. file
> a bug downstream?
> Totem, for example, has checks in configure.ac, both for the gstreamer
> dependencies, and also for the required plugins:
> https://git.gnome.org/browse/totem/tree/configure.ac#n173

No, I think adding configure check is also a good idea, sorry for implying otherwise. My concern is that this particular bug was caused by a missing runtime dependency rather than a builtime one, so it wouldn't have helped here.

IMO the more checks, the better ;).

> > B) Detect if gstreamer-pulseaudio is missing, and warn the user
> > appropriately.
> I can require gst-inspect and use that to check for the plugin and warn the
> user when they press record. That's a simple fix. It wasn't in the code
> because GstPbutils missing plugin message is usually used for that, but
> can't be used if the pipeline can't be created. 

I see, thanks.
Comment 29 Meg Ford 2017-03-14 02:20:47 UTC
https://git.gnome.org/browse/gnome-sound-recorder/log/?h=Bug_777862 has the fix we talked about. Do you mind building that branch on your system when you have a chance and verifying that it doesn't break things on your system? I removed the initial workaround for the wrong GLib, but I think everything should work on Debian without it.
Comment 30 Austin English 2017-03-15 01:58:33 UTC
(In reply to Meg Ford from comment #29)
> https://git.gnome.org/browse/gnome-sound-recorder/log/?h=Bug_777862 has the
> fix we talked about. Do you mind building that branch on your system when
> you have a chance and verifying that it doesn't break things on your system?
> I removed the initial workaround for the wrong GLib, but I think everything
> should work on Debian without it.

Hi Meg,

Unfortunately, it breaks things for me. Running ./autogen.sh && ./configure:

#bug 777862 branch#
configure: error: Package requirements (gdk-3.0
                  gdk-pixbuf-2.0
                  gstreamer-1.0 >= 
                  gstreamer-pbutils-1.0
                  gstreamer-plugins-base-1.0 >= 1.4
                  glib-2.0 >= 2.46
                  gobject-introspection-1.0 >= 1.31.6
                  gtk+-3.0 >= 3.12) were not met:

No package 'gstreamer-1.0' found
No package 'gstreamer-plugins-base-1.0' found

#master#
no errors

I'll attach logs
Comment 31 Austin English 2017-03-15 01:59:03 UTC
Created attachment 347972 [details]
config.log
Comment 32 Meg Ford 2017-03-20 01:48:50 UTC
I updated the fix and tested it out on Debian. Everything was fine for me with the changes. It's in master now and will be in the next release. Please re-open if you run into any issues. Thanks for all your help :)
Comment 33 Austin English 2017-03-20 04:42:07 UTC
(In reply to Meg Ford from comment #32)
> I updated the fix and tested it out on Debian. Everything was fine for me
> with the changes. It's in master now and will be in the next release. Please
> re-open if you run into any issues. Thanks for all your help :)

Works for me as well, with 3.21.92-33-ge0cbeef, thanks for your help as well!

FYI, I sent a patch for this to Debian, which has been applied, so that package is fixed: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=852870

Tails patch (to add gnome-sound-recorder back) is done, not applied yet.