From: Ivan Riabtsov <hidden> Date: 2021-02-07 12:34:16
Hello. There is a task to receive raw data from the microphone and,
after some processing, send it to the output (headphones or speakers)
to speed up the process, I want to do this at the kernel space, please
tell me where to start (which way to look and what to read)? My sound
device: "Family 17h (Models 10h-1fh) HD Audio Controller".
Thanks Everyone
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
On Sun, Feb 07, 2021 at 03:33:34PM +0300, Ivan Riabtsov wrote:
Hello. There is a task to receive raw data from the microphone and,
after some processing, send it to the output (headphones or speakers)
to speed up the process, I want to do this at the kernel space, please
tell me where to start (which way to look and what to read)? My sound
device: "Family 17h (Models 10h-1fh) HD Audio Controller".
Hi Ivan.
Please consider looking at this question and the comments below it:
https://stackoverflow.com/questions/16360378/kernel-module-vs-user-space-application-which-one-is-faster
If you need a big speed difference, running your code in kernel-space
won't make a huge difference. In either way, you'll get the same CPU cycles.
The only thing that I can think of, is using FPGA to do the job.
Kernel-space won't do any magic for you.
FPGA development is hard and totally different, but it's all magic!
- Best regards
Pouya
On 2/7/21 16:03, Ivan Riabtsov wrote:
Hello. There is a task to receive raw data from the microphone and,
after some processing, send it to the output (headphones or speakers)
to speed up the process, I want to do this at the kernel space, please
tell me where to start (which way to look and what to read)? My sound
device: "Family 17h (Models 10h-1fh) HD Audio Controller".
Thanks Everyone
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
From: Ivan Riabtsov <hidden> Date: 2021-02-07 13:40:04
I want to experiment with active noise cancellation, i want to receive
a wave from an input device (microphone), invert the wave and send it
to the output device (headphone or speaker). Therefore, I need a
minimum delay.
вс, 7 февр. 2021 г. в 15:50, Greg KH [off-list ref]:
On Sun, Feb 07, 2021 at 03:33:34PM +0300, Ivan Riabtsov wrote:
quoted
Hello. There is a task to receive raw data from the microphone and,
after some processing, send it to the output (headphones or speakers)
to speed up the process, I want to do this at the kernel space, please
tell me where to start (which way to look and what to read)? My sound
device: "Family 17h (Models 10h-1fh) HD Audio Controller".
On Sun, Feb 07, 2021 at 04:38:08PM +0300, Ivan Riabtsov wrote:
I want to experiment with active noise cancellation, i want to receive
a wave from an input device (microphone), invert the wave and send it
to the output device (headphone or speaker). Therefore, I need a
minimum delay.
Then I strongly suggest you look into a much smaller kernel, on a
dedicated tiny microcontroller, as that's what systems that do this
today use.
But if you just want to try it with your laptop, good luck, latencies in
your hardware itself are probably going to prevent this from being
possible.
greg k-h
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
From: Ivan Riabtsov <hidden> Date: 2021-02-07 15:52:34
well, I have a portable microphone and the main source of noise a TV,
which is a few meters behind my back, if i put a microphone (for
example) in the middle, between a laptop and a TV, it may be possible
to compensate for the delay, I repeat, this is all solely for the sake
of experiment.
вс, 7 февр. 2021 г. в 16:45, Greg KH [off-list ref]:
On Sun, Feb 07, 2021 at 04:38:08PM +0300, Ivan Riabtsov wrote:
quoted
I want to experiment with active noise cancellation, i want to receive
a wave from an input device (microphone), invert the wave and send it
to the output device (headphone or speaker). Therefore, I need a
minimum delay.
Then I strongly suggest you look into a much smaller kernel, on a
dedicated tiny microcontroller, as that's what systems that do this
today use.
But if you just want to try it with your laptop, good luck, latencies in
your hardware itself are probably going to prevent this from being
possible.
greg k-h