Skip to main content

A Python package for creating slowed and reverbed versions of videos

Project description

Reverbed

A Python package for creating slowed and reverbed versions of videos by processing audio and video content from YouTube.

Features

  • Download and process audio from YouTube videos
  • Adjust audio speed and add custom reverb effects
  • Loop video segments with custom start and end times
  • Combine processed audio with looped video
  • Support for multiple processing configurations
  • Interactive YouTube search with keyboard navigation

Installation

From PyPI (Recommended)

pip install reverbed

From Source

  1. Clone the repository:
git clone https://github.com/paramp07/reverbed.git
cd reverbed
  1. Install the package:
pip install -e .

Usage

Command Line Interface

After installation, you can use the package from the command line:

reverbed

This will start the interactive interface where you can:

  1. Choose to use an example configuration or create a new one
  2. Input YouTube URLs or search for videos
  3. Customize audio speed and reverb effects
  4. Set video loop times
  5. Process and combine the final video

Python API

You can also use the package programmatically:

from reverbed import Reverbed

# Create a Reverbed instance
reverbed = Reverbed()

# Process a video
reverbed.process()

Configuration

Create a config.json file with your processing settings. Example configuration:

{
    "examples": [
        {
            "name": "Example 1",
            "audio_url": "https://www.youtube.com/watch?v=example",
            "audio_speed": 0.2,
            "loop_video": "https://www.youtube.com/watch?v=example",
            "start_time": "20",
            "end_time": "30",
            "final_video": "example1_output",
            "room_size": 0.75,
            "damping": 0.5,
            "wet_level": 0.08,
            "dry_level": 0.2
        }
    ]
}

Configuration Parameters

  • name: Name of the processing example
  • audio_url: YouTube URL for the audio source
  • audio_speed: Speed multiplier for the audio (0.0 to 1.0)
  • loop_video: YouTube URL for the video to loop
  • start_time: Start time for video loop (in seconds or MM:SS format)
  • end_time: End time for video loop (in seconds or MM:SS format)
  • final_video: Name for the output video file
  • room_size: Room size for reverb effect (0.0 to 1.0)
  • damping: Damping for reverb effect (0.0 to 1.0)
  • wet_level: Wet level for reverb effect (0.0 to 1.0)
  • dry_level: Dry level for reverb effect (0.0 to 1.0)

Requirements

  • Python 3.6 or higher
  • FFmpeg (for audio/video processing)
  • Required Python packages (automatically installed with pip):
    • pytube
    • moviepy
    • yt-dlp
    • soundfile
    • pedalboard
    • numpy

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • FFmpeg for audio/video processing
  • YouTube-DL for video downloading
  • Other open-source libraries used in this project

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

reverbed-0.1.0.tar.gz (9.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

reverbed-0.1.0-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

Details for the file reverbed-0.1.0.tar.gz.

File metadata

  • Download URL: reverbed-0.1.0.tar.gz
  • Upload date:
  • Size: 9.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for reverbed-0.1.0.tar.gz
Algorithm Hash digest
SHA256 59e2a7c076dd8a87fb612e85300e368b94e6c87722745340421b41320b5eb839
MD5 8a724c70f21eb9ce2dfba6a4f642aed0
BLAKE2b-256 e147b5d4e0089876e00fba4c2432550d21b947041372e89450170559ca03128c

See more details on using hashes here.

File details

Details for the file reverbed-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: reverbed-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 9.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for reverbed-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 413c3cb9c5b6a1c70a4cf15ec7c98f2b00bd6a7d7810972d806ea401fca59f5d
MD5 ac5579b7050eea65a477bc517b373b6c
BLAKE2b-256 d1b25ec66052a848ef92765f4e5c34edd2ec11da0e4a09df14a589d77cefd2db

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page