Hey Geof, somehow I've now been missing your reply. Thanks for all you do!
Best regards, Marcus On Mon, 2019-05-13 at 08:46 -0400, Geof Nieboer wrote: > I apologize for missing this email chain. > > FYI, anytime you see a "Z:\gr-build" somewhere in a Windows install, > know that that is the path I use when buildiing the installers, so > exactly as was already deduced, that is a path that ended up being > hardcoded someplace. It's particular of the cultural difference > between Linux/Win, as Linux tends to assume that code is running on > the machine that built it. > > The best approach to modification of environment variables specific > to GR usage on Windows is to modify the "run_gr.bat" in C:\Program > Files\Gnuradio-3.7\bin, which sets up a complete set of variable to > support the custom python install etc., and will also then allow > side-by-side of multiple installs (when we release a 3.8 version). > > So I will create an issue on the scripts github to set this > environment variable automatically in run_gr.bat in the next version > (I'll also include the stereo source fix as well). > > Geof > > > > On Sat, May 11, 2019 at 5:48 AM Marcus Müller < > marcus.muel...@ettus.com> wrote: > > Hi Gary, > > > > I'm sorry for the long silence, but just to let you know: > > a) if you think you can get me fed up with you, you'll have to do > > better than to patiently report bugs, take suggestions, give > > feedback. > > That's absolutely no way to annoy me! > > b) Your work has led me to writing a small patch that we'll > > hopefully > > be able to roll out soon, see > > https://github.com/gnuradio/gnuradio/pull/2475 > > > > Best regards, > > Marcus > > > > On Mon, 2019-05-06 at 12:16 +0100, Gary.Simpkins wrote: > > > Hi Marcus. > > > > > > It was late last night and I missed the errors in the > > > grnradio-config-info -- prefsdir response. > > > > > > It had the dirs twice. So I changed the Prefix in windows to be > > just > > > GNUradio-3.7, and the tried again. > > > > > > The prefs now has details includng portaudio. > > > > > > When I start gnuradio companion I now see lots of warnings about > > > files > > > already existing. > > > > > > When try to generate with the audio source I get a lot of audio > > > config > > > lines. all to do with portaudio > > > > > > BUT ------IT Looks like portaudio is working for me on windows. > > > > > > Certainly I get two outputs. If they are the I and Q Ioutputs t > > is > > > my > > > next test, but looking very good. > > > > > > Many Many thanks. > > > > > > Regards > > > > > > Gary > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > On 05/05/2019 17:43, Marcus Müller wrote: > > > > Hi Gary, > > > > > > > > > This confuses simple folk like me. > > > > this confuses simple folks such as me, too! > > > > > > > > That --prefsdir output is most defintely bogus. I can speculate > > > > what > > > > happened there, however: > > > > > > > > > Z:gr-buildsrc-stage3staged_installReleaseetcgnuradioconf.d > > > > That --prefsdir value is part of the source code that gets > > compiled > > > > into the tool/the GNU Radio libraries. Normally, you wouldn't > > do > > > > that, > > > > "hardwiring" a directory path into a library, but write it in a > > > > configuration file or something. > > > > > > > > However, in this case, that's the place we start looking into > > to > > > > find > > > > the configuration files. So, that's the one thing that actually > > > > need to > > > > hardwire. > > > > > > > > So, there's a text string "Z:\gr-build\src- > > > > stage3\staged_install\Release\etc\gnuradio\conf.d" in there, > > which > > > > is > > > > probably a remnant of the machine that your GNU Radio got built > > on > > > > (again, how did you install that?). > > > > Sadly, the "\" gets interpreted by the compiler to be "escape > > > > symbol", > > > > so that you can have things like "\n" for newline in strings. > > > > Luckily, > > > > none of the first letters of directory names combined with "\" > > give > > > > a > > > > valid escape sequence, so the compiler just silently drops the > > "\" > > > > and > > > > this is the string you end up with. > > > > > > > > I'll admit it: that's funky, and I didn't know that happened. > > We'll > > > > most definitely will have to rewrite something to make this > > work > > > > under > > > > windows (which uses backslashes for directory separation, > > unlike > > > > unixoids, which use forward slashes). > > > > > > > > So, why does --userprefsdir work, but --prefsdir not? > > > > > > > > Well, --userprefsdir is built from environment variables at > > > > runtime, so > > > > it's correct, not mangled by a compiler. > > > > > > > > I hear you say, that's fine and all, and now? > > > > > > > > Welllllll! I thought it strange that, although your > > userprefsdir > > > > seems > > > > correct, GNU Radio didn't read the configuration file you > > modified. > > > > So, > > > > down the rabbit hole it goes. Here's our culprit, in prefs.cc: > > > > > > > > std::vector<std::string> > > > > prefs::_sys_prefs_filenames() > > > > { > > > > std::vector<std::string> fnames; > > > > > > > > fs::path dir = prefsdir(); > > > > if(!fs::is_directory(dir)) > > > > return fnames; //<------------------------OUCH! > > > > > > > > […] > > > > > > > > // Find if there is a ~/.gnuradio/config.conf file and add > > > > this to > > > > // the end of the file list to override any preferences in > > the > > > > // installed path config files. > > > > fs::path userconf = fs::path(gr::userconf_path()) / > > > > "config.conf"; > > > > if(fs::exists(userconf)) { > > > > fnames.push_back(userconf.string()); > > > > } > > > > > > > > return fnames; > > > > } > > > > > > > > So what happens here is that if the prefsdir isn't a proper > > > > directory, > > > > and Z:gr-buildsrc-stage3staged_installReleaseetcgnuradioconf.d > > > > bloody > > > > well excels at not being a proper directory, it just throws the > > > > towel > > > > and doesn't try to scan the userprefsdir things for > > configuration > > > > files. > > > > > > > > I'm fully away of the irony saying the following in a > 10 > > emails > > > > thread that started with a sound card problem: > > > > > > > > The solution should be simple. > > > > > > > > There's a way of overriding the hardwired prefsdir! We don't > > even > > > > have > > > > to set it to the *right* directory, just any path that is > > actually > > > > a > > > > directory. The way to do that would be setting an environment > > > > variable > > > > "GR_PREFIX" that leads to the right place. > > > > > > > > So, I don't actually know where these things get installed to > > on > > > > Windows, or on your individual machine, but: Can you look for a > > > > directory "conf.d" in a path ending in etc\gnuradio\conf.d? > > > > > > > > Let's say it's > > > > C:\Progams\gnuradio\dragonsbehere\etc\gnuradio\conf.d . > > > > > > > > then, you'd have to do something like > > > > > > > > set GR_PREFIX=C:\Programs\gnuradio\dragonsbehere > > > > gnuradio-config-info --prefsdir > > > > > > > > If that now prints > > > > C:\Progams\gnuradio\dragonsbehere\etc\gnuradio\conf.d, we're > > almost > > > > there. Try, from the same command window, > > > > > > > > gnuradio-config-info --prefs > > > > > > > > Does that work? > > > > If it does, there's a way to permanently set environment > > variables > > > > under windows, but I've forgotten it. I can look it up, if you > > > > want. > > > > > > > > Best regards, > > > > Marcus > > > > > > > > On Sun, 2019-05-05 at 13:55 +0100, Gary.Simpkins wrote: > > > > > Hi Marcus > > > > > > > > > > --prefsdir returns > > > > > > > > > > Z:gr-buildsrc-stage3staged_installReleaseetcgnuradioconf.d > > > > > > > > > > I dont have a drive Z: > > > > > > > > > > This confuses simple folk like me. Willing to learn though. > > > > > > > > > > Regards > > > > > > > > > > Gary > > > > > > > > > > On 05/05/2019 11:30, Marcus Müller wrote: > > > > > > Hi Gary, > > > > > > > > > > > > The "* " is good; when you take that full output of > > gnuradio- > > > > > > config…, > > > > > > and replace the ";" with line breaks, you get a nice list > > with > > > > > > indented > > > > > > subentries. In this case, the list entry of interest would > > be > > > > > > > > > > > > gr-audio > > > > > > * portaudio > > > > > > * windows > > > > > > > > > > > > Nothing to do with windows vs UNIX, it's just the way we > > output > > > > > > things > > > > > > (for historical reasons). I think it wasn't originally > > meant to > > > > > > be > > > > > > all > > > > > > on one line (I don't actually know), but you can't change a > > > > > > "diagnostic" program's output to look better later on – > > there > > > > > > might > > > > > > be > > > > > > someone else's software depending on it being one line > > (welcome > > > > > > to > > > > > > the > > > > > > hell of popular software!). > > > > > > > > > > > > > I saved and restarted the PC, but GNUradio is not using > > > > > > > portaudio. So > > > > > > > it > > > > > > Huh! Interesting, to say the least. Can you check whether > > > > > > `gnuradio- > > > > > > config-info --prefs` actually shows the correct value (as > > put > > > > > > by > > > > > > you > > > > > > there)? > > > > > > > > > > > > Best regards, > > > > > > Marcus > > > > > > > > > > > > On Sun, 2019-05-05 at 10:39 +0100, Gary.Simpkins wrote: > > > > > > > Hi Marcus and any windows experts > > > > > > > > > > > > > > Trying to get portaudio working in GNURadio (win10). can > > you > > > > > > > answer > > > > > > > these simple questions. > > > > > > > > > > > > > > Using gnuradio-config-info --enabled-components, I get > > the > > > > > > > following. > > > > > > > > > > > > > > python-support;testing- > > support;volk;doxygen;sphinx;gnuradio- > > > > > > > runtime;gr-ctrlport;gr-blocks;gnuradio-companion;gr- > > fec;gr- > > > > > > > fft;gr- > > > > > > > filter;gr-analog;gr-digital;gr-dtv;gr-atsc;gr-audio;* > > > > > > > portaudio;* > > > > > > > windows;gr-channels;gr-noaa;gr-pager;gr-qtgui;gr- > > trellis;gr- > > > > > > > uhd;gr- > > > > > > > utils;gr-video-sdl;gr-vocoder;gr-fcd;gr-wavelet;gr- > > wxgui;gr- > > > > > > > zeromq. > > > > > > > > > > > > > > Is the * infront of portaudio significant? Is it a > > wild > > > > > > > card? > > > > > > > do > > > > > > > you > > > > > > > now what this means? (I know this is windows and not > > UNIX) > > > > > > > > > > > > > > gnuradio-config-info --userprefsdir responds with > > > > > > > > > > > > > > C:\Users\Gary\AppData\Roaming\.gnuradio > > > > > > > > > > > > > > In this directory is a config.conf file. It was empty, > > so I > > > > > > > added > > > > > > > > > > > > > > [audio] > > > > > > > > > > > > > > audio_module = portaudio > > > > > > > > > > > > > > I saved and restarted the PC, but GNUradio is not using > > > > > > > portaudio. So > > > > > > > it > > > > > > > looks like it is not being used. > > > > > > > > > > > > > > Regards > > > > > > > > > > > > > > Gary > > > > > > > > > > > > > > > > > > > > > > > > > > > > On 04/05/2019 14:39, Müller, Marcus (CEL) wrote: > > > > > > > > Hey Gary, > > > > > > > > please keep things on the list! Good news: > > > > > > > > That's the exact opposite of what I wanted to convey! > > *Use* > > > > > > > > GNU > > > > > > > > Radio's > > > > > > > > existing portaudio interface; chances are that your GNU > > > > > > > > Radio > > > > > > > > installation supports that (which is why I asked how > > you've > > > > > > > > installed > > > > > > > > it). > > > > > > > > https://www.gnuradio.org/doc/doxygen/page_audio.html > > tells > > > > > > > > us > > > > > > > > how > > > > > > > > to do > > > > > > > > that: > > > > > > > > you just need to find your GNU Radio configuration (for > > me > > > > > > > > as > > > > > > > > Unix > > > > > > > > user > > > > > > > > it's in ~/.gnuradio/config.conf, but yours is probably > > > > > > > > somewhere > > > > > > > > else; > > > > > > > > running `gnuradio-config-info --userprefsdir` should > > give > > > > > > > > you > > > > > > > > an > > > > > > > > idea > > > > > > > > where to look). Add, if not already in there, the > > > > > > > > following: > > > > > > > > > > > > > > > > [audio] > > > > > > > > audio_module = portaudio > > > > > > > > > > > > > > > > Done! That tells GNU Radio to not just try the first > > best > > > > > > > > guess > > > > > > > > of > > > > > > > > what > > > > > > > > audio system you want to use (that being windows API > > under > > > > > > > > windows), > > > > > > > > but to specifically use portaudio – and that should > > have > > > > > > > > the > > > > > > > > features > > > > > > > > you're looking for. > > > > > > > > > > > > > > > > Still, the windows source not working as it should is a > > > > > > > > pain. > > > > > > > > We > > > > > > > > should > > > > > > > > fix that. > > > > > > > > > > > > > > > > Best regards, > > > > > > > > Marcus > > > > > > > > > > > > > > > > On Sat, 2019-05-04 at 08:05 +0100, > > > > > > > > gary.simpk...@gdscs.co.uk > > > > > > > > wrote: > > > > > > > > > Many thanks for the explanation. Looks like I can go > > no > > > > > > > > > further. > > > > > > > > > I do > > > > > > > > > not have the skills to develope the audio source. > > > > > > > > > > > > > > > > > > Gary > > > > > > > > > > > > > > > > > > Sent from my Huawei Mobile > > > > > > > > > > > > > > > > > > > > > > > > > > > -------- Original Message -------- > > > > > > > > > Subject: Re: [Discuss-gnuradio] Audio source cannot > > use 2 > > > > > > > > > outputs > > > > > > > > > (Stereo) in > > > > > > > > > windows > > > > > > > > > From: "M黮ler, Marcus (CEL)" > > > > > > > > > To: discuss-gnuradio@gnu.org, > > gary.simpk...@gdscs.co.uk > > > > > > > > > CC: > > > > > > > > > > > > > > > > > > > > > > > > > > > > Hi Gary! > > > > > > > > > > > > > > > > > > > > > I have double checked and all the windows audio > > > > > > > > > > > devices I > > > > > > > > > > > have > > > > > > > > > > > used > > > > > > > > > > > for the audio source are 2 channels. > > > > > > > > > > I never doubted that – all I wanted to point out > > that > > > > > > > > > > the I > > > > > > > > > > think > > > > > > > > > > it > > > > > > > > > > was Windows that told the GNU Radio windows audio > > > > > > > > > > source it > > > > > > > > > > saw > > > > > > > > > > only > > > > > > > > > > one channel, and consequently the windows audio > > source > > > > > > > > > > only > > > > > > > > > > enabled > > > > > > > > > > one > > > > > > > > > > output port. > > > > > > > > > > > > > > > > > > > > I was wrong, it turns out! When you look at gr- > > > > > > > > > > audio/liob/windows/windows_source.cc, you'll find > > the > > > > > > > > > > number of > > > > > > > > > > output > > > > > > > > > > streams of the block to be hardcoded to be between > > 1 > > > > > > > > > > and 1, > > > > > > > > > > so... > > > > > > > > > > 1: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > windows_source::windows_source(int sampling_freq, > > > > > > > > > > const std::string > > > > > > > > > > device_name) > > > > > > > > > > : sync_block("audio_windows_source", > > > > > > > > > > io_signature::make(0, 0, 0), > > > > > > > > > > io_signature::make(1, 1, > > > > > > > > > > sizeof(float))), > > > > > > > > > > > > > > > > > > > > The last line does that. > > > > > > > > > > So, that's a um, underdeveloped feature in the > > windows > > > > > > > > > > audio > > > > > > > > > > source. > > > > > > > > > > > > > > > > > > > > > They work fine with WSJT-X, or MAP65. > > > > > > > > > > > > > > > > > > > > > > The stereo channels I wish to use are the I and Q > > > > > > > > > > > outputs > > > > > > > > > > > from > > > > > > > > > > my > > > > > > > > > > > SDRPLay Duo using virtual cables > > > > > > > > > > > > > > > > > > > > > > (I have tried the speaker outputs from the PC > > with > > > > > > > > > > > GNURadio > > > > > > > > > > > audio > > > > > > > > > > > source > > > > > > > > > > > and get the same problem) > > > > > > > > > > > > > > > > > > > > > > Does the audio source work with two channels on > > > > > > > > > > > linux? > > > > > > > > > > Yes, (haven't tried today, but it /used/ to work), > > but > > > > > > > > > > it > > > > > > > > > > sadly > > > > > > > > > > shares > > > > > > > > > > nearly no code with the windows audio source. > > That's > > > > > > > > > > due to > > > > > > > > > > fact > > > > > > > > > > that > > > > > > > > > > Linux' ALSA and Windows' sound API and OS X's Core > > > > > > > > > > Audio > > > > > > > > > > are > > > > > > > > > > pretty > > > > > > > > > > different. > > > > > > > > > > > > > > > > > > > > I do have an idea, though, which *might* be a > > solution > > > > > > > > > > to > > > > > > > > > > your > > > > > > > > > > problem, > > > > > > > > > > but: untested; don't expect wonders. > > > > > > > > > > > > > > > > > > > > Has your GNU Radio build portaudio enabled? As > > said, > > > > > > > > > > it's > > > > > > > > > > not > > > > > > > > > > tested, > > > > > > > > > > but unlike the windows audio source, the portaudio > > > > > > > > > > source > > > > > > > > > > at > > > > > > > > > > least > > > > > > > > > > from > > > > > > > > > > the state of the source code (far as I can tell) > > > > > > > > > > enables as > > > > > > > > > > many > > > > > > > > > > maximum output streams as your card has. > > > > > > > > > > > I am using the latest version of GNURadio > > 3.7.13.4 on > > > > > > > > > > > a > > > > > > > > > > > 64bit > > > > > > > > > > > win > > > > > > > > > > 10 > > > > > > > > > > > PC. > > > > > > > > > > > > > > > > > > > > > Built from source, or where did you happen across > > it? > > > > > > > > > > > > > > > > > > > > > I am really stuck here. Nothing I try allows the > > > > > > > > > > > second > > > > > > > > > > > output to > > > > > > > > > > be > > > > > > > > > > > enabled. > > > > > > > > > > > > > > > > > > > > > Sorry to hear that! We'll try to get you unstuck :) > > > > > > > > > > > > > > > > > > > > Best regards, > > > > > > > > > > Marcus > > > > > > > _______________________________________________ > > > > > > > Discuss-gnuradio mailing list > > > > > > > Discuss-gnuradio@gnu.org > > > > > > > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio > > > > > _______________________________________________ > > > > > Discuss-gnuradio mailing list > > > > > Discuss-gnuradio@gnu.org > > > > > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio > > > > > > _______________________________________________ > > > Discuss-gnuradio mailing list > > > Discuss-gnuradio@gnu.org > > > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio > > > > > > _______________________________________________ > > Discuss-gnuradio mailing list > > Discuss-gnuradio@gnu.org > > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio > > _______________________________________________ > Discuss-gnuradio mailing list > Discuss-gnuradio@gnu.org > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio