Git Product home page Git Product logo

pcpanel_linux's Introduction

PCPanel Linux

This is a WIP utility to have your PCPanel control PulseAudio application and device volumes on Linux, written in Python.

I don't know how to use PA's API (if there is one), so instead this calls pactl to get application names and set volumes.

Haven't touched Python in a while, so excuse the nasty code.

How it works

What the knobs and buttons on the PCPanel do is simply spit out 3 bytes of raw data over HID, like:

01, 05, 87

1st byte: 01 = slider/knob; 02 = button

2nd byte: 00-04 = knobs; 05-08 = sliders

3rd byte: 00-FF = 256 values, or 00/01 for unpress/press of button

Depends

  • PulseAudio
  • hidapi

pcpanel_linux's People

Contributors

richardternens avatar taotien avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

pcpanel_linux's Issues

Feature tracker

  • Config files/interface
  • Create OpenRGB plugin
  • Add PipeWire support
  • Add Wayland support
  • GUI
  • OBS integration
  • Windows feature parity
  • Non-pro PCPanels (need hardware)
  • Multiple PCPanels
    • Filter by device name rather than hardcoded pid/vid
  • Media controls
  • MIDI
  • Keystokes

Installation Instructions

It would be really nice to have install instructions, especially for dependencies on this.
I have a PCPanel and would love for Linux to work.
Does this use python 3, or an older version? Things like this would be helpful in the install instructions.

Issue tracker

  • Firefox starting new sink-inputs and setting 100% volume on seek/new media

    • Create null sink to handle all of FF's audio
    • Need input on if this issue exists in PipeWire
    • Mozilla bugzilla
  • Audio crackling/skipping when adjusting audio

    • Differs based on resample method in /etc/pulse/daemon.conf
    • soxr-vhq causes fast forwarding
    • pulseaudio gitlab

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.