Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

hifi-decode: Performance enhancements, Fix head switching interpolation #195

Merged
merged 35 commits into from
Feb 22, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
12f20f5
refactor shared memory
eshaz Feb 15, 2025
24b4d70
run separate decoder steps in processes
eshaz Feb 15, 2025
77b6447
clean up auto fine tune, modify audio buffer in place, parallel copying
eshaz Feb 15, 2025
060024a
fix multipass headswitching noise reduction
eshaz Feb 15, 2025
39e404e
use parallel copy on large chunks only
eshaz Feb 15, 2025
124f7c9
fix guess bias
eshaz Feb 15, 2025
abf7ecd
remove prange
eshaz Feb 15, 2025
a214989
use buffer_read_into to avoid memory copies, refactor block overlap l…
eshaz Feb 16, 2025
e144e3e
use statefull resampler
eshaz Feb 16, 2025
1e44a05
fix block overlap, optimize fm demod
eshaz Feb 17, 2025
3e53486
use one decoder process for both channels, fix headswitching filter, …
eshaz Feb 17, 2025
9907a59
use memmove for shared memory
eshaz Feb 17, 2025
3b500ec
increase buffer size
eshaz Feb 17, 2025
760e69b
fix progress bar
eshaz Feb 17, 2025
5b34f08
refactor to dictionaries to dataclasses
eshaz Feb 17, 2025
db2a57f
use pipes to connect processes
eshaz Feb 17, 2025
05b9a99
limit number of queued decoders to decoder threads
eshaz Feb 17, 2025
ecbbf96
log on input
eshaz Feb 17, 2025
e2d0bd3
try polling with busy loop
eshaz Feb 17, 2025
6788c44
separate post processor shared memory
eshaz Feb 18, 2025
f563eb5
add perf counters in block decode
eshaz Feb 18, 2025
0a44f98
align shared memory blocks
eshaz Feb 18, 2025
3ac706b
put back original process worker design
eshaz Feb 18, 2025
95d1e14
refactor
eshaz Feb 18, 2025
a90e4ad
use numba function signatures, install rocket-fft
eshaz Feb 19, 2025
e445616
remove spike at beginning of audio
eshaz Feb 19, 2025
ef061b0
use asyncio to avoid blocking on queue
eshaz Feb 19, 2025
fadd69e
put decoder memory copy operations in a thread
eshaz Feb 20, 2025
8a08010
try simple queue
eshaz Feb 20, 2025
aeb0455
implement numba fm demod
eshaz Feb 21, 2025
5557e6d
remove parallel, fix overflow
eshaz Feb 21, 2025
1f1965f
fix overflow
eshaz Feb 21, 2025
032ba45
prevent overload, limit auto fine tune
eshaz Feb 21, 2025
ac61abf
update u16 file reader
eshaz Feb 21, 2025
aab98df
fix windows issues, further optimize demod
eshaz Feb 22, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ classifiers = [
"Topic :: Multimedia :: Video",
]
dependencies = [
"numpy>=1.22","numba>=0.58.1","scipy>=1.10.1","samplerate", "static-ffmpeg", "cython", "soundfile", "sounddevice", "importlib_resources >= 5.0; python_version < '3.10'", "matplotlib", "noisereduce>=2.0.0"
"numpy>=1.22","numba>=0.58.1","scipy>=1.10.1","samplerate", "static-ffmpeg", "cython", "soundfile>=0.13.1", "sounddevice", "importlib_resources >= 5.0; python_version < '3.10'", "matplotlib", "noisereduce>=2.0.0", "rocket-fft>=0.2.5", "icc_rt"
]
dynamic = ["version"]
# version = "0.2.1dev0"
Expand Down
6 changes: 4 additions & 2 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ numba>=0.58.1
numpy>=1.22
samplerate
scipy >=1.10,<=1.12
soundfile
soundfile>=0.13.1
sounddevice
noisereduce
noisereduce>=2.0.0
rocket-fft>=0.2.5
icc_rt
4 changes: 4 additions & 0 deletions scripts/ci/build-windows-decode-bin.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,10 @@
"decode.py",
"--collect-submodules",
"application",
"--collect-all",
"rocket_fft",
"--collect-all",
"icc_rt",
"--add-data",
"vhsdecode/format_defs:vhsdecode/format_defs",
"--icon",
Expand Down
Loading