Questions tagged [audio-processing]

Audio processing involves the study of mathematical and signal processing techniques to understand or alter the nature of audio signals. The different kind of audio signals under study include speech, music, environmental audio and computer audio. Audio is analyzed in the temporal or spectral domain by applying various filters.

Key concept is to transform the audio into PCM format so you have access to the raw audio curve. Each channel will have its own curve.

Digital audio is represented by a series of points on this curve. Each point is called an audio sample. Numerical value of each sample can be represented in either integer or floating point.

Be aware to map each audio sample numerical value to memory typically requires several bytes of storage. One byte can store only 2^8 distinct values (256) which will result in noticeable distortion. High quality audio is typically stored using at least two bytes of storage per audio sample. When we use two bytes this gives us 2^16 possible values of the raw audio curve height as the audio wobbles up and down. The more bytes we use for storage the higher fidelity we gain as this reduces the gap between each distinct curve height measurement. This called bit depth. CD quality audio uses two bytes per audio sample per channel. The other fundamental aspect of digital audio is Sample Rate with determines the number of samples per second of time.

556 questions
2
votes
1 answer

Is there anything special I have to do to create a 24-bit WAV file?

I can successfully create a 16-bit wav file, but when creating a 24-bit file, all I hear is white noise. I'm setting 24-bit signed integer data chunks. Do I have to set some special audio format at byte 20 in the wav file header? I'm currently using…
Maxime Dupré
  • 5,319
  • 7
  • 38
  • 72
2
votes
1 answer

How to render in a specific bit depth?

How can OfflineAudioContext.startRendering() output an AudioBuffer that contains the bit depth of my choice (16 bits or 24 bits)? I know that I can set the sample rate of the output easily with AudioContext.sampleRate, but how do I set the bit…
Maxime Dupré
  • 5,319
  • 7
  • 38
  • 72
2
votes
3 answers

Implementing a post-processed low-pass filter using core audio

I have implemented a rudimentary low-pass filter using a time based value. This is ok, but trying to find the correct time slice is guess work, and gives different results based on different input audio files. Here is what I have now: -…
coneybeare
  • 33,113
  • 21
  • 131
  • 183
2
votes
1 answer

Understanding Formants from Audio Signal

I went through the Matlab tutorial on Formant Estimation using LPC Coefficients. Though I vaguely understand the details, it's not entirely clear why we need to do this. From http://person2.sol.lu.se/SidneyWood/praate/whatform.html: A formant is a…
Sean
  • 445
  • 1
  • 5
  • 10
2
votes
1 answer

Librosa : MFCC feature calculation

Given a audio file of 22 mins (1320 secs), Librosa extracts a MFCC features by data = librosa.feature.mfcc(y=None, sr=22050, S=None, n_mfcc=20, **kwargs) data.shape (20,56829) It returns numpy array of 20 MFCC features of 56829 frames…
Rangooski
  • 825
  • 1
  • 11
  • 29
2
votes
1 answer

Find matching content in two compressed audio files

I am trying to find the time range of any matching content in two audio files. An example of use is: I have two mp3 files stripped from a tv show. At the start of the tv show they have a "previously on" recap, and then the show's theme tune and then…
2
votes
2 answers

audio processing in labVIEW( Is stream process possible ?? )

I am quite new to LabVIEW and NI devices. I am working on Active Noise Cancellation Project, where I will be using two microphones input and one loud speaker as output. I have NI myRIO 1900 and CDAQ 9178 devices in our university lab. I need to do…
2
votes
0 answers

Fade out audio at the end of video using avconv with shortest option

I'm using avconv for merging an audio file with a video file. I'm using a script in which the video length will vary from file to file. So, I use -shortest flag to stop audio abruptly at the end of the video. I want to fade out audio alone for 2…
BalaramanL
  • 21
  • 2
2
votes
1 answer

Beat Detection on iPhone with wav files and openal

Using this website i have tried to make a beat detection engine. http://www.gamedev.net/reference/articles/article1952.asp { ALfloat energy = 0; ALfloat aEnergy = 0; ALint beats = 0; bool init = false; ALfloat Ei[42]; ALfloat V = 0; ALfloat C =…
Dmacpro
  • 491
  • 4
  • 11
2
votes
3 answers

Audio processing in C# or C++

I would like to create an application that uses AI techniques and allows the user to record a part of a song and then tries to find that song in a database of wav files. I would have liked to use some already existing libraries for the audio…
melculetz
  • 1,961
  • 8
  • 38
  • 51
2
votes
1 answer

WebRTC AEC not working on Android with USB Camera

We have a webrtc enabled service with 2 different endpoints; a web app and a native android app. The android app is installed on a android device with a USB Camera. Using the web app on chrome/firefox, pc2pc audio quality is almost perfect. But we…
furkan
  • 442
  • 4
  • 13
2
votes
1 answer

FFT on .WAV file

I am trying to get the Fast Fourier Transform of a specific part of the signal coming from a .wav file. The .wav file is a repetition of the signal every 0.6 seconds. I am trying to figure out how to get the repetition 10 times and compare to show…
fragkos
  • 43
  • 3
2
votes
1 answer

Real time audio processing Android

I am trying to do some audio processing on Android in real time. What I got so far, is an app that records a sound during a predefined amount on time and save it on a WAV file which is then processed. This works pretty good but, since I am just…
paviflo
  • 105
  • 2
  • 13
2
votes
1 answer

A method in the Dirac 3 LE library always returns 0

I'm trying to use the DIRAC 3 LE library to stretch Audio in an Xcode Project and everything works like a charm except for this method: - (NSTimeInterval) currentTime; in DiracAudioPlayerBase.h. This method is supposed to return the current…
2
votes
1 answer

Time delay of sound files using cross correlation

I'm trying to speed up my algorithm of time delay estimation between two sound files in Java. My idea was to use cross correlation and search for the highest value which gives me the amount of samples that are delayed. I've done this and its…