Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Please add lossless output option(s) #29

Open
leaumar opened this issue Nov 7, 2020 · 10 comments
Open

Please add lossless output option(s) #29

leaumar opened this issue Nov 7, 2020 · 10 comments

Comments

@leaumar
Copy link

leaumar commented Nov 7, 2020

Aside from #13, please add an option for compressed lossless formats. Flac comes to mind as probably the best candidate. Exposing the compression level or not is up to you, but in my experience the increased compression levels waste a lot of precious cpu time for barely any gain. I googled a reference example for you.

Thanks

@paulle
Copy link

paulle commented Nov 13, 2020

In the configuration menus you can choose m4a as file extension. Is this lossless but compressed?

@tibbi
Copy link
Member

tibbi commented Nov 13, 2020

Im honestly not sure how it works under the hood, I just set it to save to m4a in the app. I dont know much about such audio files properties, thats why the related settings are limited to just 2 file extensions and nothing else.

@leaumar
Copy link
Author

leaumar commented Nov 13, 2020

Just m4a doesn't really specify the actual codec used, it would be great if the app added that information. It's lossy encoding more often than not in my experience though, typically AAC.

@notramo
Copy link

notramo commented Dec 11, 2020

AAC is Apple's proprietary codec. It is lossy, and is less supported than the also proprietary MP3.

@tibbi
Copy link
Member

tibbi commented Jul 8, 2023

is this a duplicate of #13? Do you guys mean the same by lossless and uncompressed?

@paulle
Copy link

paulle commented Jul 8, 2023 via email

@leaumar
Copy link
Author

leaumar commented Jul 8, 2023

There's no lossy uncompressed afaik, but mp3 and aac are lossy compressed, wav is lossless uncompressed, and flac is lossless compressed. Just for reference, monkey (it's called that) even offers a hybrid where you have a lossy main file and an optional second file containing the remaining data so the two together are lossless.

Compressed just means the equivalent of zipping a file, while lossy/lossless is about the audio fidelity being reduced to arbitrary quality levels to save on file size (beyond what compression achieves).

It's like jpg (lossy) with its ugly artifacts and decoloration vs png, and webp supporting both modes. Then there's bmp that's not even compressed, just the raw literal RGB bytes.

So anyway, when I opened this topic, the app supported only lossy encoding, meaning some of the audio data gets discarded. Flac and wav are the lossless standards in my experience.

@tibbi
Copy link
Member

tibbi commented Jul 8, 2023

ok thanks, so marking #133 as a child of this

@elishamint
Copy link

@tibbi :

Im honestly not sure how it works under the hood, I just set it to save to m4a in the app. I dont know much about such audio files properties, thats why the related settings are limited to just 2 file extensions and nothing else.

Container format (file extension) does not equal codec used.
Lossy ones:
.mp4/.m4a multimedia format, can contain several streams of video, audio, subtitles, and other media/metadata; can use about any codec; mainly uses AAC (superior quality at same bitrate) or MP3.
.ogg open multimedia format, supports multiple streams of video, audio, text, and metadata. Compression methods include Theora (video), Vorbis (audio), Opus (audio), FLAC (audio), and OggPCM (audio).
.opus audio file using OPUS codec. It was developed mainly with streaming purposes in mind, with good quality at lower bitrates.
.mp3 is MPEG-1 Audio Layer III (MP3) format but can be any of a number of MP3 encoder versions.

Lossless or Semi-Lossless:
.wav is an uncompressed single-media format that supports different sample "bit dephts" (bits per sample, dynamic resolution); 32-bit floating-point with a constant Signal to Noise Ratio (SNR) which is used in digital audio processing, down to ... I guess 4-bit integer (called PCM, Pulse Code Modulation). 16 bits per sample is the standard CD format and it's a bit lossy at the SNR; 21 bits per sample is considered a SNR inaudible to humans, so the standard 24-bit is lossless in that regard.
.flac is a compressed and considered lossless format (no loss of quality from the original, only integer/PCM) using an open-source Free Lossless Audio Codec (FLAC) out of a number of versions. (comparable to zipping a WAV file, resulting in about 50-60% file size reduction)

@leaumar
Copy link
Author

leaumar commented Jun 17, 2024

.opus audio file using OPUS codec

For completeness, .opus files are typically just ogg containers with an opus audio stream, no different from combos like ogg vorbis. You can rename .opus files to .ogg, might even be better since the container is more important than the codec and we don't give the other combinations their own extension either.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants