Page 2 of 2
Re: Problem accessing the mic with 2.1.1 with Azalia sound c
Posted: Mon Mar 28, 2016 11:06 pm
by tgf
I first checked with "ps -eaf | grep pulse" that pulseaudio was running
Code: Select all
gfreeman 1842 1 0 Mar24 ? 00:02:28 /usr/bin/pulseaudio --start --log-target=syslog
I then ran pavucontrol and connected the sound source to the Mic port, confirming that pavucontrol could see the signal.
With pavucontrol on Recording, I issued the command "arecord -d 4 /tmp/test.wav". Pavucontrol window changed from
Code: Select all
No application is currently recording audio
to
Code: Select all
ALSA plugin [aplay]: ALSA Capture from [Built-in Audio Analog Stereo]
and below the arecord command was the message
Code: Select all
Recording WAVE '/tmp/test.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
Re: Problem accessing the mic with 2.1.1 with Azalia sound c
Posted: Tue Mar 29, 2016 11:11 am
by steve
tgf wrote:Code: Select all
Recording WAVE '/tmp/test.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
That could be the problem.
I'm not certain, but I think that Audacity expects / requires the audio sample format to be at least 16 bit.
This article gives a general idea of how to change the default format for PulseAudio:
http://www.overclock.net/a/how-to-get-t ... pulseaudio
I'd suggest that you try setting the default format to signed 16-bit, and a sample rate of 44100 Hz.
This is what I have:
Code: Select all
default-sample-format = s16le
default-sample-rate = 44100
alternate-sample-rate = 48000
default-sample-channels = 2
default-channel-map = front-left,front-right
You will need to at least restart Pulse - I'd suggest logging out and back in again, or rebooting to ensure that the changes take effect.
(Leave Audacity preferences at the default "32-bit float" 44100 Hz.)
BE SURE TO MAKE THE BACKUP.
If the above does not work, there is a much more in-depth article on the subject here:
https://wiki.archlinux.org/index.php/Pu ... figuration
Re: Problem accessing the mic with 2.1.1 with Azalia sound c
Posted: Wed Mar 30, 2016 3:35 am
by tgf
Steve wrote
...This article gives a general idea of how to change the default format for PulseAudio:
http://www.overclock.net/a/how-to-get-t ... pulseaudio
I'd suggest that you try setting the default format to signed 16-bit, and a sample rate of 44100 Hz.
I don't think that is the problem. "arecord" has 8000 Hz and unsigned 8 bit as the defaults. I can change them with
Code: Select all
arecord -d 4 -r 192 -f cd /tmp/test.wav
I did look at /etc/pulse/daemon.conf as you suggested. It indicated that
Code: Select all
default-sample-format = s16le
default-sample-rate = 44100
alternate-sample-rate = 48000
default-sample-channels = 2
default-channel-map = front-left,front-right
were the defaults. I uncommented those lines and re-logged in, but it has made no difference.
Now, I am seeing "default" as the only selectable input.
Re: Problem accessing the mic with 2.1.1 with Azalia sound c
Posted: Wed Mar 30, 2016 10:14 am
by steve
I'm running out of ideas.
Look in "Help > About Audacity > Build Information". Which version of PortAudio and wxWidgets has Audacity been built with?
Re: Problem accessing the mic with 2.1.1 with Azalia sound c
Posted: Wed Mar 30, 2016 4:14 pm
by Gale Andrews
Perhaps tgf should build current Audacity from source code
http://www.audacityteam.org/download/source/. We recently updated PortAudio which has a lot of fixes for Linux.
Gale
Re: Problem accessing the mic with 2.1.1 with Azalia sound c
Posted: Fri Apr 01, 2016 5:19 am
by tgf
Steve wrote:
Which version of PortAudio and wxWidgets has Audacity been built with?
Build information -> Core libraries indicates:
Code: Select all
PortAudio (Audio playback and recording) v19
wxWidgets 2.8.12
Gale Andrews wrote:
I have downloaded the source code, and installed all the "-dev" packages that I thought would help. I have run "./configure" and then "make" but compilation is failing because of data type issues:
Code: Select all
mv -f .deps/audacity-BlockFile.Tpo .deps/audacity-BlockFile.Po
g++ -DHAVE_CONFIG_H -I. -Wno-deprecated-declarations -D__STDC_CONSTANT_MACROS -DLIBDIR=\"/usr/local//lib64\" -I../lib-src/portaudio-v19/include -I../lib-src/libsoxr/src -I../lib-src/lib-widget-extra -I/usr/lib64/wx/include/gtk3-unicode-3.0 -I/usr/include/wx-3.0 -D_FILE_OFFSET_BITS=64 -DwxDEBUG_LEVEL=0 -DWXUSINGDLL -D__WXGTK__ -pthread -I../lib-src/ffmpeg -I../lib-src/lame -I../lib-src/libnyquist -I../lib-src/lv2/include -I../lib-src/lv2/include -I../lib-src/portsmf -I../lib-src/sbsms/include -I../lib-src/libvamp -I/usr/lib64/wx/include/gtk3-unicode-3.0 -I/usr/include/wx-3.0 -D_FILE_OFFSET_BITS=64 -DwxDEBUG_LEVEL=0 -DWXUSINGDLL -D__WXGTK__ -pthread -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/libpng16 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -Wno-unused-local-typedefs -I../lib-src/portmixer/include -DwxDEBUG_LEVEL=0 -Wall -I../include -I../lib-src/FileDialog -MT audacity-DirManager.o -MD -MP -MF .deps/audacity-DirManager.Tpo -c -o audacity-DirManager.o `test -f 'DirManager.cpp' || echo './'`DirManager.cpp
In file included from /usr/include/wx-3.0/wx/intl.h:17:0,
from /usr/include/wx-3.0/wx/filename.h:17,
from DirManager.h:16,
from DirManager.cpp:65:
blockfile/../ondemand/ODDecodeTask.h: In member function ‘virtual const wxChar* ODDecodeTask::GetTip()’:
/usr/include/wx-3.0/wx/translation.h:38:58: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in return
#define _(s) wxGetTranslation((s))
^
blockfile/../ondemand/ODDecodeTask.h:57:42: note: in expansion of macro ‘_’
virtual const wxChar* GetTip(){return _("Decoding Waveform");}
^
DirManager.cpp: In static member function ‘static void DirManager::CleanTempDir()’:
DirManager.cpp:397:88: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ for argument ‘5’ to ‘void RecursivelyRemove(wxArrayString&, int, bool, bool, const wxChar*)’
RecursivelyRemove(filePathArray, count, true, true, _("Cleaning up temporary files"));
^
DirManager.cpp: In member function ‘bool DirManager::SetProject(wxString&, wxString&, bool)’:
DirManager.cpp:523:91: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ for argument ‘5’ to ‘void RecursivelyRemove(wxArrayString&, int, bool, bool, const wxChar*)’
RecursivelyRemove(dirlist, count, false, true, _("Cleaning up cache directories"));
^
DirManager.cpp: In member function ‘wxFileName DirManager::MakeBlockFilePath(wxString)’:
DirManager.cpp:592:9: warning: suggest explicit braces to avoid ambiguous ‘else’ [-Wparentheses]
if(!dir.DirExists() && !dir.Mkdir(0777,wxPATH_MKDIR_FULL))
^
DirManager.cpp: In member function ‘int DirManager::ProjectFSCK(bool, bool)’:
DirManager.cpp:1395:17: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
NULL};
^
DirManager.cpp:1395:17: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1412:40: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ for argument ‘7’ to ‘int RecursivelyEnumerateWithProgress(wxString, wxArrayString&, wxString, bool, bool, int, const wxChar*)’
_("Inspecting project file data"));
^
DirManager.cpp:1449:20: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
NULL};
^
DirManager.cpp:1449:20: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1449:20: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1511:41: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
NULL};
^
DirManager.cpp:1511:41: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1511:41: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1570:20: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
NULL};
^
DirManager.cpp:1570:20: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1570:20: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1629:17: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
NULL};
^
DirManager.cpp:1629:17: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1629:17: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp: In member function ‘void DirManager::RemoveOrphanBlockfiles()’:
DirManager.cpp:1817:40: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ for argument ‘7’ to ‘int RecursivelyEnumerateWithProgress(wxString, wxArrayString&, wxString, bool, bool, int, const wxChar*)’
_("Inspecting project file data"));
^
Makefile:2407: recipe for target 'audacity-DirManager.o' failed
make[2]: *** [audacity-DirManager.o] Error 1
make[2]: Leaving directory '/tmp/audacity-minsrc-2.1.2/src'
Makefile:1346: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/tmp/audacity-minsrc-2.1.2/src'
Makefile:716: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
Re: Problem accessing the mic with 2.1.1 with Azalia sound c
Posted: Fri Apr 01, 2016 12:36 pm
by Gale Andrews
Are you using system wxWidgets? Audacity will fail to compile with the issues you see in that case, because system wxWidgets on OpenSUSE uses STL.
If you self-build wxWidgets with no configure arguments I would assume Audacity will build against it.
Gale
tgf wrote:Gale Andrews wrote:
I have downloaded the source code, and installed all the "-dev" packages that I thought would help. I have run "./configure" and then "make" but compilation is failing because of data type issues:
Code: Select all
mv -f .deps/audacity-BlockFile.Tpo .deps/audacity-BlockFile.Po
g++ -DHAVE_CONFIG_H -I. -Wno-deprecated-declarations -D__STDC_CONSTANT_MACROS -DLIBDIR=\"/usr/local//lib64\" -I../lib-src/portaudio-v19/include -I../lib-src/libsoxr/src -I../lib-src/lib-widget-extra -I/usr/lib64/wx/include/gtk3-unicode-3.0 -I/usr/include/wx-3.0 -D_FILE_OFFSET_BITS=64 -DwxDEBUG_LEVEL=0 -DWXUSINGDLL -D__WXGTK__ -pthread -I../lib-src/ffmpeg -I../lib-src/lame -I../lib-src/libnyquist -I../lib-src/lv2/include -I../lib-src/lv2/include -I../lib-src/portsmf -I../lib-src/sbsms/include -I../lib-src/libvamp -I/usr/lib64/wx/include/gtk3-unicode-3.0 -I/usr/include/wx-3.0 -D_FILE_OFFSET_BITS=64 -DwxDEBUG_LEVEL=0 -DWXUSINGDLL -D__WXGTK__ -pthread -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/libpng16 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -Wno-unused-local-typedefs -I../lib-src/portmixer/include -DwxDEBUG_LEVEL=0 -Wall -I../include -I../lib-src/FileDialog -MT audacity-DirManager.o -MD -MP -MF .deps/audacity-DirManager.Tpo -c -o audacity-DirManager.o `test -f 'DirManager.cpp' || echo './'`DirManager.cpp
In file included from /usr/include/wx-3.0/wx/intl.h:17:0,
from /usr/include/wx-3.0/wx/filename.h:17,
from DirManager.h:16,
from DirManager.cpp:65:
blockfile/../ondemand/ODDecodeTask.h: In member function ‘virtual const wxChar* ODDecodeTask::GetTip()’:
/usr/include/wx-3.0/wx/translation.h:38:58: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in return
#define _(s) wxGetTranslation((s))
^
blockfile/../ondemand/ODDecodeTask.h:57:42: note: in expansion of macro ‘_’
virtual const wxChar* GetTip(){return _("Decoding Waveform");}
^
DirManager.cpp: In static member function ‘static void DirManager::CleanTempDir()’:
DirManager.cpp:397:88: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ for argument ‘5’ to ‘void RecursivelyRemove(wxArrayString&, int, bool, bool, const wxChar*)’
RecursivelyRemove(filePathArray, count, true, true, _("Cleaning up temporary files"));
^
DirManager.cpp: In member function ‘bool DirManager::SetProject(wxString&, wxString&, bool)’:
DirManager.cpp:523:91: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ for argument ‘5’ to ‘void RecursivelyRemove(wxArrayString&, int, bool, bool, const wxChar*)’
RecursivelyRemove(dirlist, count, false, true, _("Cleaning up cache directories"));
^
DirManager.cpp: In member function ‘wxFileName DirManager::MakeBlockFilePath(wxString)’:
DirManager.cpp:592:9: warning: suggest explicit braces to avoid ambiguous ‘else’ [-Wparentheses]
if(!dir.DirExists() && !dir.Mkdir(0777,wxPATH_MKDIR_FULL))
^
DirManager.cpp: In member function ‘int DirManager::ProjectFSCK(bool, bool)’:
DirManager.cpp:1395:17: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
NULL};
^
DirManager.cpp:1395:17: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1412:40: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ for argument ‘7’ to ‘int RecursivelyEnumerateWithProgress(wxString, wxArrayString&, wxString, bool, bool, int, const wxChar*)’
_("Inspecting project file data"));
^
DirManager.cpp:1449:20: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
NULL};
^
DirManager.cpp:1449:20: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1449:20: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1511:41: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
NULL};
^
DirManager.cpp:1511:41: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1511:41: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1570:20: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
NULL};
^
DirManager.cpp:1570:20: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1570:20: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1629:17: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
NULL};
^
DirManager.cpp:1629:17: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp:1629:17: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in initialization
DirManager.cpp: In member function ‘void DirManager::RemoveOrphanBlockfiles()’:
DirManager.cpp:1817:40: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ for argument ‘7’ to ‘int RecursivelyEnumerateWithProgress(wxString, wxArrayString&, wxString, bool, bool, int, const wxChar*)’
_("Inspecting project file data"));
^
Makefile:2407: recipe for target 'audacity-DirManager.o' failed
make[2]: *** [audacity-DirManager.o] Error 1
make[2]: Leaving directory '/tmp/audacity-minsrc-2.1.2/src'
Makefile:1346: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/tmp/audacity-minsrc-2.1.2/src'
Makefile:716: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
Re: Problem accessing the mic with 2.1.1 with Azalia sound c
Posted: Fri Apr 01, 2016 12:50 pm
by steve
tgf wrote: I have run "./configure" and then "make" but compilation is failing because of data type issues:
I think this may be fixed in jengelh's fork:
https://github.com/jengelh/audacity
Unfortunately the pull request from jengelh has merge conflicts with the current audacity/audacity code, but if you can confirm that jengelh's fix works, then that may help to get the fix committed.
Re: Problem accessing the mic with 2.1.1 with Azalia sound c
Posted: Fri Apr 01, 2016 2:01 pm
by Gale Andrews
steve wrote:tgf wrote: I have run "./configure" and then "make" but compilation is failing because of data type issues:
I think this may be fixed in jengelh's fork:
https://github.com/jengelh/audacity
Unfortunately the pull request from jengelh has merge conflicts with the current audacity/audacity code, but if you can confirm that jengelh's fix works, then that may help to get the fix committed.
ThomasFeher has already confirmed that commit fixes building on OpenSUSE
https://github.com/audacity/audacity/pull/112 but Paul did not want to commit it even if he resolved the conflicts.
If no-one reviews and commits we'll have to track it on Audacity Bugzilla.
Gale