All Projects → peitaosu → LoopbackCapture

peitaosu / LoopbackCapture

Licence: MIT License
A tool which can be used to capture the loopback from audio devices.

Programming Languages

C++
36643 projects - #6 most used programming language
C#
18002 projects
python
139335 projects - #7 most used programming language
Batchfile
5799 projects
c
50402 projects - #5 most used programming language

Labels

Projects that are alternatives of or similar to LoopbackCapture

generator-loopback-module
Module generation for loopback framework
Stars: ✭ 13 (-56.67%)
Mutual labels:  loopback
vue-loopback
A Vue project template with Loopback framework optionally with Vuex, Vue-router, and Auth boilerplaite
Stars: ✭ 52 (+73.33%)
Mutual labels:  loopback
loopback-connector-firestore
Firebase Firestore connector for the LoopBack framework.
Stars: ✭ 32 (+6.67%)
Mutual labels:  loopback
loopback-next
LoopBack makes it easy to build modern API applications that require complex integrations.
Stars: ✭ 4,412 (+14606.67%)
Mutual labels:  loopback
loopback-component-visualizer
Visualize your models and their relationships like ER diagram
Stars: ✭ 38 (+26.67%)
Mutual labels:  loopback
loopback-connector-arangodb
LoopBack connector for ArangoDB
Stars: ✭ 20 (-33.33%)
Mutual labels:  loopback
MultiOS-USB
Boot operating systems directly from ISO files
Stars: ✭ 106 (+253.33%)
Mutual labels:  loopback
fire-starter
Starter kit for the fireloop.io platform
Stars: ✭ 16 (-46.67%)
Mutual labels:  loopback
loopback-example-polyglot
Example LoopBack application with polyglot runtimes
Stars: ✭ 14 (-53.33%)
Mutual labels:  loopback
loopback-typescript-example
Loopback with TypeScript
Stars: ✭ 13 (-56.67%)
Mutual labels:  loopback
logistics-wizard
The Logistics Wizard is an end-to-end, smart supply chain management solution that showcases how to execute hybrid cloud, microservices, and predictive data analytics in the real world.
Stars: ✭ 99 (+230%)
Mutual labels:  loopback
acme-freight
Acme Freight's Logistics Wizard application is composed of several microservices, including three Cloud Foundry applications, LoopBack, API Connect, and multiple Cloud Function actions.
Stars: ✭ 43 (+43.33%)
Mutual labels:  loopback
buddy-linux
Do you remember "Wubi Ubuntu Installer"? This project is both a replacement and an improvement of Wubi. You will be able to install your Debian (or derived) distribution on a PC without repartitioning it, simply by using a secondary/external boot device (like a USB drive).
Stars: ✭ 17 (-43.33%)
Mutual labels:  loopback
loopback-ds-paginate-mixin
A mixin to provide pagination for loopback Model properties
Stars: ✭ 31 (+3.33%)
Mutual labels:  loopback
loopback3 angular6 bootstrap4
API Rest build by Loopback. Frontend on Angular 6
Stars: ✭ 26 (-13.33%)
Mutual labels:  loopback
nuxt-loopback
Nuxt + Loopback template
Stars: ✭ 11 (-63.33%)
Mutual labels:  loopback
strong-error-handler
Error handler for use in development (debug) and production environments.
Stars: ✭ 36 (+20%)
Mutual labels:  loopback
loopback-component-migrate
Migration framework for loopback
Stars: ✭ 43 (+43.33%)
Mutual labels:  loopback
loopback-connector-mongodb
The official MongoDB connector for the LoopBack framework.
Stars: ✭ 183 (+510%)
Mutual labels:  loopback
loopback-connector-cassandra
Cassandra connector for the LoopBack framework.
Stars: ✭ 13 (-56.67%)
Mutual labels:  loopback

Loopback Capture

GitHub license

What is Loopback Capture

Loopback Capture is a tool which can be used to capture the loopback from audio devices.

Build (Windows)

The win32\csharp and win32\dll version require some packages, before you build it, you need to install these packages and put dll files to 3rdparty folder:

  • CSCore - An advanced audio library, written in C#.
  • Unmanaged Exports - DllExport for .Net.

Suggest to use NuGet to install them:

nuget install .\build\packages.config

Then in MSBuild Command Prompt:

> build.all.bat
or
> build.cpp.bat
or
> build.csharp.bat
or
> build.dll.bat

Install Soundflower (macOS)

macOS not support to capture Loopback from device directly. The workaround is to route what is playing on the computer digitally back to the input without using a cable.

Soundflower is a free open source system add-on for Mac computers that allows you to route what is playing on the computer digitally back to the input without using a cable. Set Soundflower as your system output device, then in Audacity, set Soundflower as your recording device.

You can get compiled Soundflower kernel extension in here: https://github.com/mattingalls/Soundflower/releases

About how to setup device, there is an example in Release Note please take a look.

Install Avconv Tool (Linux)

avconv is a part from "libav-tools" package which is support to record audio use command line with specific format specific duration and from specific device.

sudo apt-get install libav-tools

BTW, the pulsectl is required for linux\LoopbackCapture.py, use following command to install it:

pip install pulsectl

Usage

# CSharp

> LoopbackCapture.exe <output/wav> <time/milliseconds>

# C++

> LoopbackCapture.exe -?
> LoopbackCapture.exe --list-devices
> LoopbackCapture.exe [--device "Device long name"] [--file "file name"] [--time "capture milliseconds"] [--int-16]
    -? prints this message.
    --list-devices displays the long names of all active playback devices.
    --device captures from the specified device (default if omitted)
    --file saves the output to a file
    --time capture specific milliseconds
    --int-16 attempts to coerce data to 16-bit integer format

# Python (DLL)

> import os, sys, platform, clr
> if platform.architecture()[0] == "32bit":
>     DLL_PATH = r"bin\x86\Release"
> elif platform.architecture()[0] == "64bit":
>     DLL_PATH = r"bin\x64\Release"
> DLL_PATH = os.path.join(os.path.dirname(os.path.realpath(__file__)), DLL_PATH)
> sys.path.append(DLL_PATH)
> clr.AddReference("LoopbackCapture")
> from LoopbackCapture import LoopbackCapture
> lc = LoopbackCapture()
> lc.Capture("record.wav", 15000)

# Python (macOS)

> from mac.LoopbackCapture import record_sounds
> exit_code = record_sounds(audio_file, milliseconds)

# Python (Linux)

> from linux.LoopbackCapture import record_sounds
> exit_code = record_sounds(audio_file, milliseconds)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].