Files
Gjermund Garaba 9a78b3e3f1
Release / build (amd64, darwin, macos-latest) (push) Has been cancelled
Release / build (amd64, linux, ubuntu-latest) (push) Has been cancelled
Release / build (amd64, windows, windows-latest) (push) Has been cancelled
Release / build (arm64, darwin, macos-latest) (push) Has been cancelled
Release / build (arm64, linux, ubuntu-latest) (push) Has been cancelled
Release / release (push) Has been cancelled
Release / update-homebrew (push) Has been cancelled
feat: support media controller on mac (#172)
* feat: support media controller on mac

* fix(notifications): publish current playback state when media notifier attaches

* fix(darwin): lock startup to the Cocoa main thread

* refactor: cleanup and simplify

* missed cleanup
2026-04-07 08:56:17 +02:00

28 lines
352 B
Go

package mediactl
import "math"
func dbToLinear(db float64) float64 {
if db <= -30 {
return 0.0
}
if db >= 6 {
return 1.0
}
return math.Pow(10, db/20) / math.Pow(10, 6.0/20)
}
func linearToDb(v float64) float64 {
if v <= 0 {
return -30
}
if v >= 1 {
return 6
}
db := 20*math.Log10(v) + 6
if db < -30 {
return -30
}
return db
}