Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: The best audio codec to recognize itself (Read 688 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

The best audio codec to recognize itself

I would like to compress already compressed audio but I only have access to a decoded PCM version of it recorded via a microphone.

I don't know the source codec though AFAIK it must be Opus at some very low variable bitrate.

What codec will have fewer compression artifacts when compressing PCM audio (with a much wider frequency range because the microphone will pick up noises as well) of such an Opus stream?

Will it be Opus? xHE-AAC? or something else entirely?

Would be great if someone could run tests to figure it out scientifically.

The source audio already contains major compression artifacts and sounds quite "metallic".

Question N2:

If you have access to a "clean" (unaltered) PCM output of the codec, it must be possible to recreate a compressed original source version by trying to guess encoding parameters. Has anyone ever attempted that?

 

Re: The best audio codec to recognize itself

Reply #1
Will it be Opus? xHE-AAC? or something else entirely?
I assume you want your encoded file to be fairly small, so the most suitable formats for your task are likely Opus or xHE-AAC. For very low bitrates, you should also consider Fraunhofer's xHE-AAC encoder, as Exhale doesn't handle such low bitrates effectively.

Quote
Would be great if someone could run tests to figure it out scientifically.
Conducting a quick test by yourself is quite straightforward. However, it's important to be more specific about your requirements. Are you aiming for 32 kbps or 320 kbps? What is your tolerance for new artifacts or changes in sound quality?


Quote
The source audio already contains major compression artifacts and sounds quite "metallic".
If the sound is already heavily degraded, compressing it to maintain a minimal footprint on your drive could be worthwhile. It might introduce some new issues, but if the source is already poor, it may not be a significant problem. Check out:
https://hydrogenaud.io/index.php/topic,120997.0.html

Additionally, you can increase the bitrate to achieve near-transparency at moderate bitrates:
https://hydrogenaud.io/index.php/topic,125899.0.html
https://hydrogenaud.io/index.php/topic,121099.0.html
Opus and xHE-AAC are excellent. Ogg Vorbis and some AAC encoders are not far but the latter has better compatibility.

Quote
If you have access to a "clean" (unaltered) PCM output of the codec, it must be possible to recreate a compressed original source version by trying to guess encoding parameters. Has anyone ever attempted that?
It's possible, but I don't see the point. Just keep in mind that you need to find the right encoder, the right version, the right bitrate, and the right settings. Good luck with that!
Wavpack Hybrid: one encoder for all scenarios
WavPack -c4.5hx6 (44100Hz & 48000Hz) ≈ 390 kbps + correction file
WavPack -c4hx6 (96000Hz) ≈ 768 kbps + correction file
WavPack -h (SACD & DSD) ≈ 2400 kbps at 2.8224 MHz

Re: The best audio codec to recognize itself

Reply #2
Conducting a quick test by yourself is quite straightforward. However, it's important to be more specific about your requirements. Are you aiming for 32 kbps or 320 kbps? What is your tolerance for new artifacts or changes in sound quality?

I'm aiming at something close to 16Kbps or even less.

It's possible, but I don't see the point. Just keep in mind that you need to find the right encoder, the right version, the right bitrate, and the right settings. Good luck with that!

Thanks!

Re: The best audio codec to recognize itself

Reply #3
I'm aiming at something close to 16Kbps or even less.
That's a very low bitrate for musical stuff, but for personal microphone recorded (voice only maybe?) stuff, maybe at less than 44100 or even 32000Hz sound may be quite acceptable. I don't really have experience with this kind of situation.
Did you already tried Opus at this bitrate? How does it sound to you?
If you have a small sample of your source file, I can try on my side with Fraunhofer's xHE-AAC (you can also try with EZ-CD Audio Converter, there's a free trial period).
Wavpack Hybrid: one encoder for all scenarios
WavPack -c4.5hx6 (44100Hz & 48000Hz) ≈ 390 kbps + correction file
WavPack -c4hx6 (96000Hz) ≈ 768 kbps + correction file
WavPack -h (SACD & DSD) ≈ 2400 kbps at 2.8224 MHz

Re: The best audio codec to recognize itself

Reply #4
At those bitrates you probably want to use xHE-AAC for best results.