Giter Site home page Giter Site logo

decky-recorder-fork's Introduction

Decky Recorder Fork

Original Repo: https://github.com/marissa999/decky-recorder?tab=readme-ov-file

Using enhanced mic noise cancellation

Optionally, you can download an enhanced noise cancellation binary for better noise cancellation from https://github.com/werman/noise-suppression-for-voice. If you run the script below, the binary will be extracted to /home/deck/homebrew/data/decky-recorder/librnnoise_ladspa.so. The recorder backend will automatically check for this and will use this noise cancellation binary instead of the default cancellation if it exists.

# Download gpl-3 binary for superior denoising (cannot include in this repo as gpl)

# Define the URLs and file paths
denoise_version="1.03"
denoise_zip_url="https://github.com/werman/noise-suppression-for-voice/releases/download/v${denoise_version}/linux-rnnoise.zip"
denoise_zip_file_path="/home/deck/homebrew/data/decky-recorder/linux-rnnoise.zip"
denoise_extracted_file_path="/home/deck/homebrew/data/decky-recorder/librnnoise_ladspa.so"

wget "${denoise_zip_url}" -O "${denoise_zip_file_path}"
unzip -j "${denoise_zip_file_path}" 'linux-rnnoise/ladspa/librnnoise_ladspa.so' -d /tmp
mv /tmp/librnnoise_ladspa.so "${denoise_extracted_file_path}"

Once you do this, reopen decky recorder, restart the microphone toggle, and you should see options to change the noise reduction percentage.

Building

If you want to build this plugin in theory you only need to run make init first, fill out details in the .env file, and then run make it. You will need the following:

  • node 18 (I recommend using nvm)
  • jq
  • pnpm
  • python + pip
  • Docker

Readme from the original author of the repo marisaa999 below:

Decky-Recorder Example Screenshot

This plugin is heavily based on the Recapture-Plugin for Crankshaft from Avery: https://git.sr.ht/~avery/recapture In particular a lot of code for the gst-launch-1.0-command itself and the additionally needed dependencies were taken from the Recapture-Plugin.

https://git.sr.ht/~avery/recapture/tree/0fdbe014ec1f11bce386dc9468a760f8aed492e9/item/record.go#L19 https://git.sr.ht/~avery/recapture/tree/0fdbe014ec1f11bce386dc9468a760f8aed492e9/item/plugin/src/index.tsx#L161 https://git.sr.ht/~avery/recapture/tree/0fdbe014ec1f11bce386dc9468a760f8aed492e9/item/plugin/Makefile#L22

This plugin was made with the decky-plugin-template (https://github.com/SteamDeckHomebrew/decky-plugin-template)

Please do not judge my code, I am bad!

This plugin is still in WIP.

Thanks

Known issues

FAQs

Can I save to the SD card / some other location?

This is not yet configurable through the plugin but yes. What you would do instead is

  1. Move your Videos folder to the new destination (e.g. /run/media/mmcblk0p1)
  2. Make a symbolic link (e.g. ln -s /run/media/mmcblk0p1 /home/deck/Videos)

Now it'll look like there's a Videos folder on your ssd but the data will actually be in the SD card.

decky-recorder-fork's People

Contributors

safijari avatar marissa999 avatar jamochl avatar ratismal avatar derpychap avatar fsworld009 avatar kleutzinger avatar korewakiyo avatar newbytee avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.