Hot answers tagged

21

1 - It seems that FFmpeg attempts to respect a common pan law (when routing a centered mono track to a stereo track, lower the mono signal by - 3 dB on each channel of the stereo track). The goal is that the perceived loudness remains coherent. EDIT As mentioned by @Mulvya, you can use the pan filter to keep input file level untouched : ffmpeg -i test.wav ...


5

Better is subjective, and taste differs, but a chain of effects might include the following: High pass filter, maybe set at 20Hz. Depends on the material, but if you have a recording done with microphones the very lowest frequencies often are aeroplanes or lorrys or air condition and not the signal you want. When the signal is spoken word, go higher in ...


4

ReplayGain tags aren't standard in WAV files, so you have to alter the PCM data with the required gain. As per my reading of the Replaygain specs, a correctly implemented Replaygain scanner will print out the gain required to attain 89 dB SPL (as defined in the specs). FFmpeg has a filter to detect replaygain. You can run ffmpeg -i in.wav -af replaygain -...


3

OK you are getting confused between frames as in "SMPTE" frames and audio buffers. The frames you are referring to are actually buffers. They are not 'vision' frames. 25fps refers to vision frames. 44100 samples/second is correct. 1024 samples per 'buffer'. (Note these will be 'stereo' samples - possibly interleaved depending on your input format) Strictly ...


3

Raw PCM does not store stream properties, so when you ingest a raw PCM stream, ffmpeg assumes a sampling rate of 44100 Hz whereas your source is 48000 Hz. So new duration = old duration x (48000/44100). Export to WAV or AIFF using -c:a pcm_s16le. Alternatively, save as now and ingest using -f s16le -sample_rate 48000 -i temp.pcm. First method is recommended....


2

Digital audio is sampled i.e. made up of discrete chunks, with each chunk representing a small sliver of time. So the duration will be quantized to multiples of 1/sampling frequency i.e. if sampling rate is 22050 Hz (samples/sec), and there are 37646 samples (per channel), then duration will be 37646 x 1/22050 seconds == 1.7073015873015873015873015873016. ...


2

The trouble is, there's no such thing as 'dB'… well, of course there is but dB on its own is a measure of relative loudness, not absolute. See https://en.wikipedia.org/wiki/Decibel#Suffixes_and_reference_values for just how many flavours of dB there are. Internally for an audio app, dBFS could be argued as being the only sensible scale to use, as we're up ...


1

As mentioned in a comment, FFMPEG will revert to dynamic in the conditions specified in the manual: linear Normalize by linearly scaling the source audio. measured_I, measured_LRA, measured_TP, and measured_thresh must all be specified. Target LRA shouldn’t be lower than source LRA and the change in integrated loudness shouldn’t result in a true peak which ...


1

Inspecting the input and output files, I realized that the output was upsampled from 48 kHz to 192 kHz. I disabled that with the option -ar 48000.


1

This is more a workaround than an answer as I did not manage to link the libavformat library to Audacity. So here are some clues using FFmpeg version 4.1 with libavformat.58.20.100.dylib on macOS. There is a potential issue depending on the container used and the FFmpeg version. Some containers (m4a and mp4 for instance) include a metadata describing how ...


1

Wav, afaik, has no equivalent soft-gain parameter. You could simply use Audacity to normalise to zero [so you have a level playing field], then again to -92.8dB... but -92.8 is going to be awfully quiet. Are you certain of your figures? It's also pretty much a one-way process because of the noise floor you will generate, so keep your originals in case ...


1

I don't believe this could be done without batch conversion. What you could do is load all the files into a batch converter and have them run through an effect or process that would produce the desired result, either by panning everything hard left in such a way that the right channel's content was eliminated or by panning the left channel's content to the ...


1

I've never used ffmpeg like this, but I had a quick squint at the filter docs, specifically the silenceremover and straight away I noticed the detection system defaults to RMS. Maybe this is where the confusion about the dB value has come from. Try switching it to peak. It should work more the way you want, but I'm not sure if that would be better or not for ...


1

There is no magic trick to make something good out of a bad recording. It will always sound very bad. That is why is it extremely important to get a good recording at first, with plenty of dynamic and the full spectrum of the sources: you will save yourself the pain of desperately trying to get something good out of a bad recording (Something you can't). If ...


1

Have you tried exporting the .wavs from Bitwig as 24-bit? It may be that for some reason the the 32 bit-depth(float) upsets the FFMPEG conversion.


Only top voted, non community-wiki answers of a minimum length are eligible