Re: How to record audio from a live video (youtube via firefox) ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

ok...it works now...somehow...incompletly...so to say <cough>

My $HOME/.asoundrc looks like this:


# default device
pcm.!default {
    type plug
    slave.pcm "loop"
}

# output device
pcm.loopout {
    type dmix
    ipc_key 328211
    slave.pcm "hw:Loopback,0,0"
}

# input device
pcm.loopin {
    type dsnoop
    ipc_key 686592
    slave.pcm "hw:Loopback,1,0"
}

# duplex plug device
pcm.loop {
    type plug
    slave {
      pcm {
         type asym
         playback.pcm "loopout"
         capture.pcm "loopin"
      }
    }
}


When start firefox and play a video, I can here nothing until I do
this at the commandline:

arecord -f cd -D loop | aplay -f cd -D hw:0,0

The same line can be adapted for recording:

arecord -f cd -D loop <filename>.wav

While recording, I can here nothing and vice versa.

It would be nice, if it would be possible, that audio is audible
(that's audio is for :) ) without any actions from my side
(commandline and such) and recording could be done from a device.
That way, screencast software could use this device for recording.

Cheers!
mcc


On 12/27 08:22, tuxic@xxxxxxxxx wrote:
> Hi,
> 
> this looks interesting:
> http://www.pogo.org.uk/~mark/trx/streaming-desktop-audio.html
> 
> ...but still not the solution.
> 
> The alsaloop command works fine...so the redirection works.
> 
> But I can't record anything still.
> 
> Cheers!
> mcc
> 
> 
> 
> On 12/27 10:47, Robert M. Riches Jr. wrote:
> > (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: tuxic@xxxxxxxxx
> > > To: alsa-user@xxxxxxxxxxxxxxxxxxxxx
> > > 
> > > 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
> > > Alsa-user@xxxxxxxxxxxxxxxxxxxxx
> > > https://lists.sourceforge.net/lists/listinfo/alsa-user
> > 
> 


_______________________________________________
Alsa-user mailing list
Alsa-user@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-user



[Index of Archives]     [ALSA Devel]     [Linux Audio Users]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]

  Powered by Linux