Comments (1)
I don't think that shell execution is a big problem from a performance point of view. The reason is that watermarking itself is kind-of expensive. Also usually you'd have to re-encode the audio before you send it. So I'd expect to see most of the actual CPU time being spent on watermarking and compression (for instance mp3/aac encoding), and not so much in the shell execution (especially on Linux where spawning sub processes is quite fast). But I'd encourage you to measure the actual CPU usage for serving a typical request yourself.
Could you please tell me about the logic of this package and what is going on behind the scenes of that?
Well, adding "developer documentation" that describes details on how everything works is on my TODO, but I don't have time to do it right now. So I can only quote from the README:
Internally, audiowmark is using the patchwork algorithm to hide the data in the spectrum of the audio file. The signal is split into 1024 sample frames. For each frame, some pseoudo-randomly selected amplitudes of the frequency bands of a 1024-value FFTs are increased or decreased slightly, which can be detected later. The algorithm used here is inspired by
Martin Steinebach: Digitale Wasserzeichen für Audiodaten.
Darmstadt University of Technology 2004, ISBN 3-8322-2507-2
It is German though, an english short description of the patchwork algorithm by the same author is available here:
https://onlinelibrary.wiley.com/doi/epdf/10.1002/047134608X.W8281
but developing something like audiowmark
from scratch is quite a lot of research / development you'd need to invest.
from audiowmark.
Related Issues (20)
- How do I extract the watermark from the ts file?
- sprintf is deprecated on macOS 13 HOT 1
- fails to compile with clang15 HOT 2
- hello please HOT 1
- Zita-resampler issue HOT 1
- zita-resampler not found after compiling from source HOT 3
- autoconf issue: AC_LIB_HAVE_LINKFLAGS HOT 1
- syncfinder
- How to find synchronization bits HOT 1
- Build for Windows HOT 18
- Audible noise in watermarked audio even with --strength 5, also not extractable even at --strength 100 HOT 11
- Build for Mac OSX High Sierra HOT 6
- Using 48kHz files
- Supported formats?
- --with-ffmpeg: deprecation warnings with libavcodec 7:5.1.4-0+deb12u1 HOT 1
- Enhancement Request: Preserve MP3 Metadata When Watermarking HOT 1
- Preserving Video Metadata When Watermarking
- Hope to support mingw32
- weird results with hls when original audio source is mono HOT 3
- Video Watermarking: support for multiple audio tracks
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from audiowmark.