1

I'm including details of my AUDIO packages / environment below. Other similar questions/answers I've researched haven't worked due to my particular below limitations. Either:

  1. would require a reboot; and/or
  2. requires an entirely NEW base set of audio-packages, which consume too much RAM in addition to running the below webapps; and/or
  3. if needs new /conflicting/ packages, then => simply fails to work on my particular distro / software environment due to unmet dependencies, e.g. Bodhi Linux is using something different than what others are running in similar questions/answers.
  4. specifies a different /version/ of the packages/base OS than what i've got installed. N.B. if i try to run apt-get upgrade my system will soon hang, due to out-of-memory/RAMDISK.

Environment

  • OS: Bodhi Linux (Ubuntu community variant; uses ubuntu-minimal metapackage, which is the minimal core of Ubuntu, and has full access to respective Ubuntu repositories)

  • HARDWARE: macbookpro 5,5 (mid-2008/mid-2009).

  • 32/64? depends on the day/session. Sometimes 32bit, other times 64bit; both will boot.

  • LiveCD/LiveDVD (NOT_persistence),

    • either, **Bodhi 5.1.0 / Ubuntu 18.04 **
    • or, Bodhi 6.0.0 / Ubuntu 20.04
  • cat /etc/debian_version : buster/sid

  • (from Bodhi 5.1.0, 32bit livecd) :

    • uname -a:
      Linux bodhi 4.9.0-6-686 #1 SMP Debian 4.9.88-1+deb9u1 (2018-05-07) i686 i686 i686 GNU/Linux
      
    • lsb_release -a :
      No LSB modules are available.
      Distributor ID:Ubuntu
      Description:    Ubuntu
      Release:    18.04
      Codename:   bionic
      

What makes this question unique:

Am running on a LIVECD/LIVEDVD, so

  • I CAN (obviously) install new packages [to the LIMITS OF MY RAMDISK and working memory!]
  • but I'm UNABLE TO REBOOT. (why I'm running this environment is a separate question: no im not currently interested in persistence ) so NO PERSISTENCE NO REBOOTS AVAILABLE Must be in realtime only

INSTALLED/base AUDIO ENVIRONMENT:

Note: this is the base livecd system; I can of course [to the limits of my ramdisk] install additional packages.

some [not complete] results: [this is on Bodhi 5.1.0 / ubuntu 18.04, 32bit only]

~# apt search audio
pavucontrol -
 3.0-4 i386 [installed,local]
   PulseAudio Volume Control

pulseaudio -
 1:11.1-1ubuntu7.4 i386 [installed,local]
   PulseAudio sound server

one-line results without versions:

root@bodhi:~# apt-cache search audio
libvorbisfile3 - high-level API for Vorbis General Audio Compression Codec
pulseaudio - PulseAudio sound server
gstreamer1.0-plugins-base - GStreamer plugins from the "base" set
libtwolame0 - MPEG Audio Layer 2 encoding library
libtag1v5 - audio meta-data library
pavucontrol - PulseAudio Volume Control
libpulse-mainloop-glib0 - PulseAudio client libraries (glib support)
libpulsedsp - PulseAudio OSS pre-load library
gstreamer1.0-pulseaudio - GStreamer plugin for PulseAudio
libwavpack1 - audio codec (lossy and lossless) - library
pulseaudio-utils - Command line tools for the PulseAudio sound server
libwebrtc-audio-processing1 - AudioProcessing module from the WebRTC project.
libflac8 - Free Lossless Audio Codec - runtime C library
libasound2-plugins - ALSA library additional plugins
libcdio-cdda2 - library to read and control digital audio CDs
libiec61883-0 - partial implementation of IEC 61883 (shared lib)
libspeex1 - The Speex codec runtime library
libcdparanoia0 - audio extraction tool for sampling CDs (library)
libmtp-runtime - Media Transfer Protocol (MTP) runtime tools
libpulse0 - PulseAudio client libraries
libmtp-common - Media Transfer Protocol (MTP) common files
libopus0 - Opus codec runtime library
libsndfile1 - Library for reading/writing audio files
alsa-utils - Utilities for configuring and using ALSA
libcdio-paranoia2 - library to read digital audio CDs with error correction
libmtp9 - Media Transfer Protocol (MTP) library
libavc1394-0 - control IEEE 1394 audio/video devices
libjack-jackd2-0 - JACK Audio Connection Kit (libraries)
libvisual-0.4-0 - audio visualization framework
gstreamer1.0-plugins-good - GStreamer plugins from the "good" set
libvorbisenc2 - encoder library for Vorbis General Audio Compression Codec
libsamplerate0 - Audio sample rate conversion library
libvorbis0a - decoder library for Vorbis General Audio Compression Codec
libmpg123-0 - MPEG layer 1/2/3 audio decoder (shared library)
libshout3 - MP3/Ogg Vorbis broadcast streaming library
libspeexdsp1 - The Speex extended runtime library
libtag1v5-vanilla - audio meta-data library - vanilla flavour
root@bodhi:~#

My actual question

I want to use a webapp in-browser, to record in realtime a Voice, Zoom, Jitsi, or other call. [With fully informed consent of the party]

HOW/CRITERIA:

I'd like to create a 'virtual microphone', as a second or third audio-input-method, which combines both

  • my physical laptop microphone; and
  • audio-out (e.g. headphones);

such that

  1. both the above (mic and headphones) continue to work normally; and
  2. their audio-feed gets "tee'd" also into this additional, "virtual microphone"; and
  3. the latter ("virtual microphone") can be chosen by my webbrowser (e.g. firefox or any chromium-based browser) as a "real microphone" audio-input method; and
  4. two different websites** can both /simultaneously/ use the two DIFFERENT 'microphones' as audio-input ("this website is recording/listening to your microphone").... one being the actual call/conference i'm on, using the real/physical mic; the other being something e.g. otter using my combined 'virtual' mic, which contains both my mic and my audio-output, combined. (preferably different tabs/webapps - running in the same browser - BUT, could be different browsers if needed e.g. both firefox and chromium installed; each browser listening to a different mic, one phyiscal and the other virtual)

Responses requested:

I've already read a bunch of man-pages and documentation. Other answers to similar questions have already been researched -- but, for one reason or another, aren't functioning on my machine (e.g. i try it, and those pkgs aren't installed, because my system is using an entirely different ubuntu base, AND/OR i'd need to reboot my machine with persistence (i.e. an actually installed OS, not a livecd), which i'm unable to do since i dont have a hard drive and the usb persistence methods quickly destroy said usb drive.

muru
  • 69,900
  • 13
  • 192
  • 292

0 Answers0