From owner-freebsd-multimedia@freebsd.org Fri Jul 28 13:55:05 2017 Return-Path: Delivered-To: freebsd-multimedia@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 17DCADC6BB8 for ; Fri, 28 Jul 2017 13:55:05 +0000 (UTC) (envelope-from marcelbonnet@gmail.com) Received: from mail-oi0-x233.google.com (mail-oi0-x233.google.com [IPv6:2607:f8b0:4003:c06::233]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D930B2F32 for ; Fri, 28 Jul 2017 13:55:04 +0000 (UTC) (envelope-from marcelbonnet@gmail.com) Received: by mail-oi0-x233.google.com with SMTP id e124so173472682oig.2 for ; Fri, 28 Jul 2017 06:55:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=zhEd5o/m+2HVpgF68/1DWSzuzTQ/W2Q8E0eNBIetPcY=; b=H5AVuuN5uEqX8t1d9VYH9SxX6T9VPlf7BD6xFF/rkT7BFlusEyTGElYzmWbCylH8ed pldbdIy5/tTU3IJ7ZqIYPTMLgfVu4oJSfQYIKexrgpPgsbbeRRRkG/7a35eoGuOADlVU MFWwurVOUWC4ypvdv0Ppqo0oIl7JIsTMKh/QNdamEwnJI5YYlo4p3m52yHWSHvBrxCEu QHuGyLAd4j6t3p10o1huo7ltDuIZoVrNN1XSW99/CLPbWLTL9I7ztE1jHo+EKgdve0Le +dmkG0HCzOqULfIDEjWZU3lc8N0+N8v9gnwyUWa11eHa4SB3KE391ZCXVmMkogNLKLkw FMwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=zhEd5o/m+2HVpgF68/1DWSzuzTQ/W2Q8E0eNBIetPcY=; b=nXAo/XgaT2S6Bvl/0MhsvWWSCZWMnkjBDBrHfSz3in1PfMyoP1/YGo+/AvwDtqEW20 NDJDa8B/1ez+ib8irED3zRAjSOeay9KawJ+JYWY/KLy/x1SjNorZhoOIsa3Tjt7cADRi UamK/iOy1f/DHfUL8Oa+9W59+zHnG7uArl3CdkRLSWW7lQWq6+n1MVS0FXpXyYvVdRUY Rpff235KHzbxGmBf1DG3zSEQsIcxAV13Ik0cvj4nK4Y5ZR1rtBkSeVoXiYlFGDm8Duba oSB3Eq5VZLk97BmpgvT6R+VeUW7pobjxejGuP+e5wCE2EmHOanU0UYdExWKYNQOHFOKa tBQg== X-Gm-Message-State: AIVw112YCaITtBPAmAX5MX3VQ0nmY0dXBmn+ZLx77V+byJTP8DtWgkua xh6bml0UyHC2+k9tUH4W+TQgn1C1YJoD X-Received: by 10.202.87.2 with SMTP id l2mr6350456oib.277.1501250103908; Fri, 28 Jul 2017 06:55:03 -0700 (PDT) MIME-Version: 1.0 Received: by 10.74.134.3 with HTTP; Fri, 28 Jul 2017 06:55:03 -0700 (PDT) In-Reply-To: References: From: Marcel Bonnet Date: Fri, 28 Jul 2017 10:55:03 -0300 Message-ID: Subject: Re: snd_uaudio monitor recording To: Hans Petter Selasky Cc: FreeBSD multimedia Content-Type: text/plain; charset="UTF-8" X-BeenThere: freebsd-multimedia@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Multimedia discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 28 Jul 2017 13:55:05 -0000 On 26 July 2017 at 13:37, Hans Petter Selasky wrote: > On 07/26/17 18:18, Marcel Bonnet wrote: >> >> On 25 July 2017 at 14:18, Hans Petter Selasky wrote: >>> >>> >>> On 07/25/17 17:00, Marcel Bonnet wrote: >>>> >>>> >>>> Hi. >>>> >>>> I'd like to record to a file whatever the sound card is actually >>>> playing, >>>> essentially when I am not using jackd server. >>>> I don't know if I just did not figure how to do it, or if depends on a >>>> new >>>> driver functionality ? >>>> Thanks in advance, >>>> >>> >>> You'd need to use virtual_oss to do that. >> >> Thanks. But, I didn't understand how to use it. Can you help me, please? >> >> I tried an example from the man page (I changed the sample rate, >> because my USB Fast Track Pro is set to 44100 Hz): >> >> [@machine tmp]$ virtual_oss -C 2 -c 2 -r 44100 -b 16 -s 1024 -f >> /dev/dsp3.0 -w dsp.wav -d dsp >> hw.snd.basename_clone: 1 >> sysctl: hw.snd.basename_clone=0: Operation not permitted >> virtual_oss: Could not create CUSE DSP device >> >> So, I tried with sudo: >> >> [@machine tmp]$ sudo virtual_oss -C 2 -c 2 -r 44100 -b 16 -s 1024 -f >> /dev/dsp3.0 -w dsp.wav -d dsp >> hw.snd.basename_clone: 1 -> 0 >> virtual_oss: Could not open DSP device '/dev/dsp3.0': Device busy >> virtual_oss: Could not open DSP device '/dev/dsp3.0': Device busy >> virtual_oss: Could not open DSP device '/dev/dsp3.0': Device busy >> virtual_oss: Could not open DSP device '/dev/dsp3.0': Device busy >> virtual_oss: Could not open DSP device '/dev/dsp3.0': Device busy >> virtual_oss: Could not open DSP device '/dev/dsp3.0': Device busy >> virtual_oss: Could not open DSP device '/dev/dsp3.0': Device busy >> virtual_oss: Could not open DSP device '/dev/dsp3.0': Device busy >> virtual_oss: Could not open DSP device '/dev/dsp3.0': Device busy >> virtual_oss: Could not open DSP device '/dev/dsp3.0': Device busy >> virtual_oss: Could not open DSP device '/dev/dsp3.0': Device busy >> virtual_oss: Could not open DSP device '/dev/dsp3.0': Device busy >> virtual_oss: Could not open DSP device '/dev/dsp3.0': Device busy >> virtual_oss: Could not open DSP device '/dev/dsp3.0': Device busy >> >> I never know why I have so much /dev/dsp3.x units. When using jack >> server, I always attach to the first one (3.0) and it is ok. I tried >> the other 3.x units, with no success. >> >> Thanks in advance. >> >> My environment: >> >> [@machine tmp]$ ls /dev/dsp* ; cat /dev/sndstat ; sysctl >> hw.snd.default_unit >> >> /dev/dsp0.1 /dev/dsp1.1 /dev/dsp2.1 /dev/dsp3.0 /dev/dsp3.1 >> /dev/dsp3.2 /dev/dsp3.3 >> >> FreeBSD Audio Driver (64bit 2009061500/amd64) >> Installed devices: >> pcm0: on hdaa0 (1p:2v/1r:1v) >> pcm1: on hdaa0 (1p:1v/1r:1v) >> pcm2: on hdaa1 (1p:1v/0r:0v) >> pcm3: at ? kld snd_uaudio (1p:2v/1r:1v) default >> No devices installed from userspace. >> >> hw.snd.default_unit: 3 >> >> [@machine tmp]$ sysctl dev.pcm.3 >> dev.pcm.3.feedback_rate: 0 >> dev.pcm.3.bitperfect: 0 >> dev.pcm.3.buffersize: 0 >> dev.pcm.3.rec.vchanformat: s16le:2.0 >> dev.pcm.3.rec.vchanrate: 44100 >> dev.pcm.3.rec.vchanmode: fixed >> dev.pcm.3.rec.vchans: 1 >> dev.pcm.3.play.vchanformat: s16le:2.0 >> dev.pcm.3.play.vchanrate: 44100 >> dev.pcm.3.play.vchanmode: fixed >> dev.pcm.3.play.vchans: 2 >> dev.pcm.3.hwvol_mixer: vol >> dev.pcm.3.hwvol_step: 5 >> dev.pcm.3.%parent: uaudio0 >> dev.pcm.3.%pnpinfo: >> dev.pcm.3.%location: >> dev.pcm.3.%driver: pcm >> dev.pcm.3.%desc: USB audio >>> >>> >>> --HPS >> >> > > Hi, > > Try this: > > sudo virtual_oss -S -C 2 -c 2 -r 44100 -b 16 -s 1024 \ > -f /dev/dsp3 -d dsp -w dsp.rec.wav -l dsp.rec > > > Then either: > > dd if=/dev/dsp.rec.wav of=myfile.wav bs=1024 > > Or use a program like audacity (not sox, due to reading one and one sample) > to record from /dev/dsp.rec . > > --HPS > Thanks, Hans! I ran virtual_oss as above: 1. when I'm playing with mplayer, it was possible to capture the sound. The same works if I connect jack server to the new device. Very cool! 2. Browsers: 2.1 But, when I started YouTube (chromium browser), virtual_oss stopped with a message: Floating point exception . After crash, I had no sound anymore. I had to re run virtual_oss to get system sound again. 2.2 No crashes with Firefox, except that no sound was captured, although I was hearing what I was playing (1. youtube ; 2. a mp3 file from local system played with the browser). Can virtual_oss capture the sound from thoses browsers ? They were compiled with ALSA lib, is that the cause of a crash for Chromium and no sound captured when playing youtube from Firefox? chromium-57.0.2987.133 Options : ALSA : on CODECS : on DEBUG : off DRIVER : on GCONF : on KERBEROS : on PULSEAUDIO : off TEST : off firefox-52.0.2,1 Options : ALSA : on BUNDLED_CAIRO : on CANBERRA : off DBUS : on DEBUG : off DTRACE : on FFMPEG : on GCONF : off GNOMEUI : off GTK2 : off GTK3 : on INTEGER_SAMPLES: off LIBPROXY : off OPTIMIZED_CFLAGS: on PGO : off PROFILE : off PULSEAUDIO : on RUST : on SNDIO : off TEST : off Thanks, again! -- Marcel Bonnet