On 12/27 10:47, Robert M. Riches Jr. wrote:
Hi Robert,
thanks a lot for your reply!
This seems to record as soon as .asoundrc is "active". In my case,
this isn't exactly what I am trying to acchieve.
After I posted my initial question I finally found something, which
may be kinda solution....if it would work.... ;)
It seems, that with the kernel module snd_aloop and the command
alsaloop one is able to create a "copy" of the existing soundcard
in a way, that what goes into the real soundcard (the sound, firefox
creates) can be recorded from the loopback device.
But until now I can't get this working.
The .asoundrc so far looks like this (with the setup/hardware listed
in my initial posting):
# .asoundrc
pcm.multi {
type route;
slave.pcm {
type multi;
slaves.a.pcm "output";
slaves.b.pcm "loopin";
slaves.a.channels 2;
slaves.b.channels 2;
bindings.0.slave a;
bindings.0.channel 0;
bindings.1.slave a;
bindings.1.channel 1;
bindings.2.slave b;
bindings.2.channel 0;
bindings.3.slave b;
bindings.3.channel 1;
}
ttable.0.0 1;
ttable.1.1 1;
ttable.0.2 1;
ttable.1.3 1;
}
pcm.!default {
type plug
slave.pcm "multi"
}
pcm.output {
type hw
card 0
}
pcm.loopin {
type plug
slave.pcm "hw:Loopback,0,0"
}
pcm.loopout {
type plug
slave.pcm "hw:Loopback,1,0"
}
(this is copied from the web mainlu)
But - as mentioned - this does not work currently. The recorded audio
(arecord) produces an "The Sound of Silence"... ;)
But may be this is a starting point ... I am still at the very
beginning of all this it seems...
Cheers!
Meino
> (Apologies if you want reply to list without also a direct reply.
> My mail client has 'reply' and 'Reply' only.)
>
> I am also using pure ALSA. After a little web searching a few
> days ago, I came up with this .asoundrc file that records to a
> raw file:
>
> vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv cut here vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
> pcm.Intel { type hw; card Intel; }
> ctl.Intel { type hw; card Intel; }
> pcm.NVidia { type hw; card NVidia; }
> ctl.NVidia { type hw; card NVidia; }
>
> pcm.rate48000Hz {
> type rate
> slave {
> pcm writeFile # Direct to the plugin which will write to a file
> format S16_LE
> # channels 2
> rate 48000
> }
> #route_policy copy
> }
>
> pcm.writeFile {
> type file
> slave {
> pcm "Intel" # Now write to the actual sound card
> }
> file "aplay-D_card0-t_raw-f_S16_LE-r48000-c_2.raw"
> format "raw"
> }
>
> pcm.!default {
> type plug
> slave.pcm "rate48000Hz"
> }
> ctl.!default ctl.Intel
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cut here ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
> Caution: Some web browsers take liberties with how they deal with
> sound. For example, some years ago, Firefox Hello (video chat)
> would work only with very specific .asoundrc content.
>
> Changing the sample rate may or may not work. With Musescore, I
> had to use exactly 48000, not 44100.
>
> Here are example commands for converting to WAV and then to MP3:
>
> Convert it to WAV:
>
> sox -r 48k -e signed -b 16 -c 2 \
> aplay-D_card0-t_raw-f_S16_LE-r48000-c_2.raw \
> -r 44100 something.wav
>
> Crop it as needed.
>
> Optional: Convert it to MP3:
>
> ffmpeg -i something.wav something.mp3
>
> HTH
>
> Robert
>
>
>
> > Date: Sun, 27 Dec 2020 10:25:14 +0100
> > From: [email protected]
> > To: [email protected]
> >
> > Hi,
> >
> > I want to record the audio of a live stream video (youtube).
> >
> > Everything I tried resulted in audio files with constant or
> > intermitted sine wave like sounds.
> >
> > I am using pure alsa. I don't want pulseaudio and with jack
> > started firefoxs audio does not work.
> >
> > How can I accomplish this recording task successfully ?
> >
> > My setup:
> >
> > GENTOO Linux
> > External USB audio DAC (FIIO Olympus 2)
> >
> > No $HOME/.asoundrc
> > /etc/conf.d/alsasound:
> >
> > # RESTORE_ON_START:
> > # Do you want to restore your mixer settings? If not, your cards will be
> > # muted.
> > # no - Do not restore state
> > # yes - Restore state
> >
> > RESTORE_ON_START="yes"
> >
> > # SAVE_ON_STOP:
> > # Do you want to save changes made to your mixer volumes when alsasound
> > # stops?
> > # no - Do not save state
> > # yes - Save state
> >
> > SAVE_ON_STOP="yes"
> >
> > arecord -l:
> >
> > **** List of CAPTURE Hardware Devices ****
> > card 0: Audio [DigiHug USB Audio], device 0: USB Audio [USB Audio]
> > Subdevices: 1/1
> > Subdevice #0: subdevice #0
> >
> >
> > arecord -L:
> > null
> > Discard all samples (playback) or generate zero samples (capture)
> > default
> > Default Audio Device
> > sysdefault
> > Default Audio Device
> > lavrate
> > Rate Converter Plugin Using Libav/FFmpeg Library
> > upmix
> > Plugin for channel upmix (4,6,8)
> > vdownmix
> > Plugin for channel downmix (stereo) with a simple spacialization
> > default:CARD=Audio
> > DigiHug USB Audio, USB Audio
> > Default Audio Device
> > sysdefault:CARD=Audio
> > DigiHug USB Audio, USB Audio
> > Default Audio Device
> > front:CARD=Audio,DEV=0
> > DigiHug USB Audio, USB Audio
> > Front output / input
> > usbstream:CARD=Audio
> > DigiHug USB Audio
> > USB Stream Output
> >
> > aplay -l:
> > **** List of PLAYBACK Hardware Devices ****
> > card 0: Audio [DigiHug USB Audio], device 0: USB Audio [USB Audio]
> > Subdevices: 1/1
> > Subdevice #0: subdevice #0
> > card 0: Audio [DigiHug USB Audio], device 1: USB Audio [USB Audio #1]
> > Subdevices: 1/1
> > Subdevice #0: subdevice #0
> >
> > lsusb -v (excerpt):
> >
> > Bus 005 Device 002: ID 1852:7022 GYROCOM C&C Co., LTD Fiio E10
> > Device Descriptor:
> > bLength 18
> > bDescriptorType 1
> > bcdUSB 1.10
> > bDeviceClass 0
> > bDeviceSubClass 0
> > bDeviceProtocol 0
> > bMaxPacketSize0 8
> > idVendor 0x1852 GYROCOM C&C Co., LTD
> > idProduct 0x7022 Fiio E10
> > bcdDevice 0.01
> > iManufacturer 1 FiiO
> > iProduct 2 DigiHug USB Audio
> > iSerial 0
> > bNumConfigurations 1
> > Configuration Descriptor:
> > bLength 9
> > bDescriptorType 2
> > wTotalLength 0x0182
> > bNumInterfaces 4
> > bConfigurationValue 1
> > iConfiguration 0
> > bmAttributes 0x80
> > (Bus Powered)
> > MaxPower 500mA
> > Interface Descriptor:
> > bLength 9
> > bDescriptorType 4
> > bInterfaceNumber 0
> > bAlternateSetting 0
> > bNumEndpoints 1
> > bInterfaceClass 3 Human Interface Device
> > bInterfaceSubClass 0
> > bInterfaceProtocol 0
> > iInterface 0
> > HID Device Descriptor:
> > bLength 9
> > bDescriptorType 33
> > bcdHID 1.00
> > bCountryCode 0 Not supported
> > bNumDescriptors 1
> > bDescriptorType 34 Report
> > wDescriptorLength 58
> > Report Descriptors:
> > ** UNAVAILABLE **
> > Endpoint Descriptor:
> > bLength 7
> > bDescriptorType 5
> > bEndpointAddress 0x81 EP 1 IN
> > bmAttributes 3
> > Transfer Type Interrupt
> > Synch Type None
> > Usage Type Data
> > wMaxPacketSize 0x0012 1x 18 bytes
> > bInterval 32
> > Interface Descriptor:
> > bLength 9
> > bDescriptorType 4
> > bInterfaceNumber 1
> > bAlternateSetting 0
> > bNumEndpoints 0
> > bInterfaceClass 1 Audio
> > bInterfaceSubClass 1 Control Device
> > bInterfaceProtocol 0
> > iInterface 3 FiiO USB DAC-E10
> > AudioControl Interface Descriptor:
> > bLength 10
> > bDescriptorType 36
> > bDescriptorSubtype 1 (HEADER)
> > bcdADC 1.00
> > wTotalLength 0x003e
> > bInCollection 2
> > baInterfaceNr(0) 2
> > baInterfaceNr(1) 3
> > AudioControl Interface Descriptor:
> > bLength 12
> > bDescriptorType 36
> > bDescriptorSubtype 2 (INPUT_TERMINAL)
> > bTerminalID 5
> > wTerminalType 0x0605 SPDIF interface
> > bAssocTerminal 0
> > bNrChannels 2
> > wChannelConfig 0x0003
> > Left Front (L)
> > Right Front (R)
> > iChannelNames 0
> > iTerminal 0
> > AudioControl Interface Descriptor:
> > bLength 12
> > bDescriptorType 36
> > bDescriptorSubtype 2 (INPUT_TERMINAL)
> > bTerminalID 9
> > wTerminalType 0x0101 USB Streaming
> > bAssocTerminal 0
> > bNrChannels 2
> > wChannelConfig 0x0003
> > Left Front (L)
> > Right Front (R)
> > iChannelNames 0
> > iTerminal 0
> > AudioControl Interface Descriptor:
> > bLength 9
> > bDescriptorType 36
> > bDescriptorSubtype 3 (OUTPUT_TERMINAL)
> > bTerminalID 3
> > wTerminalType 0x0605 SPDIF interface
> > bAssocTerminal 0
> > bSourceID 16
> > iTerminal 0
> > AudioControl Interface Descriptor:
> > bLength 9
> > bDescriptorType 36
> > bDescriptorSubtype 3 (OUTPUT_TERMINAL)
> > bTerminalID 7
> > wTerminalType 0x0101 USB Streaming
> > bAssocTerminal 0
> > bSourceID 5
> > iTerminal 0
> > AudioControl Interface Descriptor:
> > bLength 10
> > bDescriptorType 36
> > bDescriptorSubtype 6 (FEATURE_UNIT)
> > bUnitID 16
> > bSourceID 9
> > bControlSize 1
> > bmaControls(0) 0x01
> > Mute Control
> > bmaControls(1) 0x02
> > Volume Control
> > bmaControls(2) 0x02
> > Volume Control
> > iFeature 0
> > Interface Descriptor:
> > bLength 9
> > bDescriptorType 4
> > bInterfaceNumber 2
> > bAlternateSetting 0
> > bNumEndpoints 0
> > bInterfaceClass 1 Audio
> > bInterfaceSubClass 2 Streaming
> > bInterfaceProtocol 0
> > iInterface 0
> > Interface Descriptor:
> > bLength 9
> > bDescriptorType 4
> > bInterfaceNumber 2
> > bAlternateSetting 1
> > bNumEndpoints 1
> > bInterfaceClass 1 Audio
> > bInterfaceSubClass 2 Streaming
> > bInterfaceProtocol 0
> > iInterface 0
> > AudioStreaming Interface Descriptor:
> > bLength 7
> > bDescriptorType 36
> > bDescriptorSubtype 1 (AS_GENERAL)
> > bTerminalLink 7
> > bDelay 0 frames
> > wFormatTag 0x0001 PCM
> > AudioStreaming Interface Descriptor:
> > bLength 26
> > bDescriptorType 36
> > bDescriptorSubtype 2 (FORMAT_TYPE)
> > bFormatType 1 (FORMAT_TYPE_I)
> > bNrChannels 2
> > bSubframeSize 2
> > bBitResolution 16
> > bSamFreqType 6 Discrete
> > tSamFreq[ 0] 8000
> > tSamFreq[ 1] 16000
> > tSamFreq[ 2] 32000
> > tSamFreq[ 3] 44100
> > tSamFreq[ 4] 48000
> > tSamFreq[ 5] 96000
> > Endpoint Descriptor:
> > bLength 9
> > bDescriptorType 5
> > bEndpointAddress 0x82 EP 2 IN
> > bmAttributes 9
> > Transfer Type Isochronous
> > Synch Type Adaptive
> > Usage Type Data
> > wMaxPacketSize 0x0184 1x 388 bytes
> > bInterval 1
> > bRefresh 0
> > bSynchAddress 0
> > AudioStreaming Endpoint Descriptor:
> > bLength 7
> > bDescriptorType 37
> > bDescriptorSubtype 1 (EP_GENERAL)
> > bmAttributes 0x01
> > Sampling Frequency
> > bLockDelayUnits 2 Decoded PCM samples
> > wLockDelay 0x0002
> > Interface Descriptor:
> > bLength 9
> > bDescriptorType 4
> > bInterfaceNumber 2
> > bAlternateSetting 2
> > bNumEndpoints 1
> > bInterfaceClass 1 Audio
> > bInterfaceSubClass 2 Streaming
> > bInterfaceProtocol 0
> > iInterface 0
> > AudioStreaming Interface Descriptor:
> > bLength 7
> > bDescriptorType 36
> > bDescriptorSubtype 1 (AS_GENERAL)
> > bTerminalLink 7
> > bDelay 0 frames
> > wFormatTag 0x0001 PCM
> > AudioStreaming Interface Descriptor:
> > bLength 26
> > bDescriptorType 36
> > bDescriptorSubtype 2 (FORMAT_TYPE)
> > bFormatType 1 (FORMAT_TYPE_I)
> > bNrChannels 2
> > bSubframeSize 3
> > bBitResolution 24
> > bSamFreqType 6 Discrete
> > tSamFreq[ 0] 8000
> > tSamFreq[ 1] 16000
> > tSamFreq[ 2] 32000
> > tSamFreq[ 3] 44100
> > tSamFreq[ 4] 48000
> > tSamFreq[ 5] 96000
> > Endpoint Descriptor:
> > bLength 9
> > bDescriptorType 5
> > bEndpointAddress 0x82 EP 2 IN
> > bmAttributes 9
> > Transfer Type Isochronous
> > Synch Type Adaptive
> > Usage Type Data
> > wMaxPacketSize 0x0246 1x 582 bytes
> > bInterval 1
> > bRefresh 0
> > bSynchAddress 0
> > AudioStreaming Endpoint Descriptor:
> > bLength 7
> > bDescriptorType 37
> > bDescriptorSubtype 1 (EP_GENERAL)
> > bmAttributes 0x01
> > Sampling Frequency
> > bLockDelayUnits 2 Decoded PCM samples
> > wLockDelay 0x0002
> > Interface Descriptor:
> > bLength 9
> > bDescriptorType 4
> > bInterfaceNumber 3
> > bAlternateSetting 0
> > bNumEndpoints 0
> > bInterfaceClass 1 Audio
> > bInterfaceSubClass 2 Streaming
> > bInterfaceProtocol 0
> > iInterface 0
> > Interface Descriptor:
> > bLength 9
> > bDescriptorType 4
> > bInterfaceNumber 3
> > bAlternateSetting 1
> > bNumEndpoints 1
> > bInterfaceClass 1 Audio
> > bInterfaceSubClass 2 Streaming
> > bInterfaceProtocol 0
> > iInterface 0
> > AudioStreaming Interface Descriptor:
> > bLength 7
> > bDescriptorType 36
> > bDescriptorSubtype 1 (AS_GENERAL)
> > bTerminalLink 9
> > bDelay 0 frames
> > wFormatTag 0x0001 PCM
> > AudioStreaming Interface Descriptor:
> > bLength 20
> > bDescriptorType 36
> > bDescriptorSubtype 2 (FORMAT_TYPE)
> > bFormatType 1 (FORMAT_TYPE_I)
> > bNrChannels 2
> > bSubframeSize 2
> > bBitResolution 16
> > bSamFreqType 4 Discrete
> > tSamFreq[ 0] 32000
> > tSamFreq[ 1] 44100
> > tSamFreq[ 2] 48000
> > tSamFreq[ 3] 96000
> > Endpoint Descriptor:
> > bLength 9
> > bDescriptorType 5
> > bEndpointAddress 0x03 EP 3 OUT
> > bmAttributes 9
> > Transfer Type Isochronous
> > Synch Type Adaptive
> > Usage Type Data
> > wMaxPacketSize 0x0184 1x 388 bytes
> > bInterval 1
> > bRefresh 0
> > bSynchAddress 0
> > AudioStreaming Endpoint Descriptor:
> > bLength 7
> > bDescriptorType 37
> > bDescriptorSubtype 1 (EP_GENERAL)
> > bmAttributes 0x01
> > Sampling Frequency
> > bLockDelayUnits 2 Decoded PCM samples
> > wLockDelay 0x0002
> > Interface Descriptor:
> > bLength 9
> > bDescriptorType 4
> > bInterfaceNumber 3
> > bAlternateSetting 2
> > bNumEndpoints 1
> > bInterfaceClass 1 Audio
> > bInterfaceSubClass 2 Streaming
> > bInterfaceProtocol 0
> > iInterface 0
> > AudioStreaming Interface Descriptor:
> > bLength 7
> > bDescriptorType 36
> > bDescriptorSubtype 1 (AS_GENERAL)
> > bTerminalLink 9
> > bDelay 0 frames
> > wFormatTag 0x0001 PCM
> > AudioStreaming Interface Descriptor:
> > bLength 20
> > bDescriptorType 36
> > bDescriptorSubtype 2 (FORMAT_TYPE)
> > bFormatType 1 (FORMAT_TYPE_I)
> > bNrChannels 2
> > bSubframeSize 3
> > bBitResolution 24
> > bSamFreqType 4 Discrete
> > tSamFreq[ 0] 32000
> > tSamFreq[ 1] 44100
> > tSamFreq[ 2] 48000
> > tSamFreq[ 3] 96000
> > Endpoint Descriptor:
> > bLength 9
> > bDescriptorType 5
> > bEndpointAddress 0x03 EP 3 OUT
> > bmAttributes 9
> > Transfer Type Isochronous
> > Synch Type Adaptive
> > Usage Type Data
> > wMaxPacketSize 0x0246 1x 582 bytes
> > bInterval 1
> > bRefresh 0
> > bSynchAddress 0
> > AudioStreaming Endpoint Descriptor:
> > bLength 7
> > bDescriptorType 37
> > bDescriptorSubtype 1 (EP_GENERAL)
> > bmAttributes 0x01
> > Sampling Frequency
> > bLockDelayUnits 2 Decoded PCM samples
> > wLockDelay 0x0002
> > Interface Descriptor:
> > bLength 9
> > bDescriptorType 4
> > bInterfaceNumber 3
> > bAlternateSetting 3
> > bNumEndpoints 1
> > bInterfaceClass 1 Audio
> > bInterfaceSubClass 2 Streaming
> > bInterfaceProtocol 0
> > iInterface 0
> > AudioStreaming Interface Descriptor:
> > bLength 7
> > bDescriptorType 36
> > bDescriptorSubtype 1 (AS_GENERAL)
> > bTerminalLink 9
> > bDelay 0 frames
> > wFormatTag 0x2001 IEC1937_AC-3
> > AudioStreaming Interface Descriptor:
> > bLength 11
> > bDescriptorType 36
> > bDescriptorSubtype 2 (FORMAT_TYPE)
> > bFormatType 3 (FORMAT_TYPE_III)
> > bNrChannels 2
> > bSubframeSize 2
> > bBitResolution 16
> > bSamFreqType 1 Discrete
> > tSamFreq[ 0] 48000
> > Endpoint Descriptor:
> > bLength 9
> > bDescriptorType 5
> > bEndpointAddress 0x03 EP 3 OUT
> > bmAttributes 9
> > Transfer Type Isochronous
> > Synch Type Adaptive
> > Usage Type Data
> > wMaxPacketSize 0x00c0 1x 192 bytes
> > bInterval 1
> > bRefresh 0
> > bSynchAddress 0
> > AudioStreaming Endpoint Descriptor:
> > bLength 7
> > bDescriptorType 37
> > bDescriptorSubtype 1 (EP_GENERAL)
> > bmAttributes 0x01
> > Sampling Frequency
> > bLockDelayUnits 2 Decoded PCM samples
> > wLockDelay 0x0002
> > Device Status: 0x0000
> > (Bus Powered)
> >
> >
> >
> > Cheers!
> > mcc
> >
> >
> > _______________________________________________
> > Alsa-user mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/alsa-user
>
_______________________________________________
Alsa-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/alsa-user