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: Flac encoding: differences between bitrates (Read 40904 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Flac encoding: differences between bitrates

Hello everyone,
I'm in the process of transferring my CD collection to a server running Squeezebox software. I'm using EAC for ripping, and FLAC for compressing the files.
One of the options I have is choosing between different bitrates. By default, EAC/FLAC have selected 768 kbit/s. However, there are other options, maxing out at 1024 kbit/s.
The default setting (768) is fine by me, and I actually prefer it, because it saves me space. However, I'm concerned about the final result. Quality is very important to me and I want to make sure I'm doing everything right, so that my archived files come out "perfect."
Are the files going to be truly lossless? In other words, will the stream sent by the Squeezebox to the DAC will be identical to the one read from the CD by a normal player?
If yes, then why give me the option of choosing a bitrate, at all? What for, and what would the difference be, except file size?
What is the minimum rate necessary for a quality CD "stream"? Any other tips regarding how to compress the files?


Flac encoding: differences between bitrates

Reply #1
Lossless is lossless.

For that reason, lossless encoders use whatever bitrate they must to maintain the input signal exactly. Different lossless compression settings simply devote different durations of time to the encoding process in order to change the degree of compression. Even at the highest compression setting for a given encoder, a lot of material would require considerably more than 768 kbps.

Thus, lossless compressors don’t provide an option to set the bitrate; so, if they did receive the parameter, they would either ignore it or return an error.

From the wiki > EAC compression options > Bit rate:
Quote
What is shown in this drop-down box depends on the Parameter passing scheme selected and specifies the bit rate/quality settings of the external compressor. This setting is also used to calculate the approximate size of the compressed tracks shown in EAC's main window.

In the case that User Defined Encoder is selected as the Parameter passing scheme this setting does not have an effect unless the %r parameter is specified in the Additional command-line options.

Flac encoding: differences between bitrates

Reply #2
Additionally, more compression requires more decoding CPU time, which can make a difference to the battery life of portable players.

Flac encoding: differences between bitrates

Reply #3
Can't we just close and redirect these posts to a standard one about lossless codecs? It seems this question comes up almost daily at the moment.

Flac encoding: differences between bitrates

Reply #4
What always baffled me about these questions, is the futility of ever bothering with it to begin with.

For all those "is FLAC level 1/4/8/16/32 / Ape / WMAL / TTL / CCT / BIFL really lossless" questions in the future, here's your thorough, detailed Answer Recipe:
  • Take your original, lossless WAV (or AIFF, or CD, or recording, or what-have-you-calling-it)
  • Encode it to FLAC level 5 (or 8, or 1, or APE, or WMAL, or whatever)
  • Take your FLAC level 5 (or 8, or 1, or APE, or WMAL, or whatever) file, and decode it back to WAV (or AIFF, or burn to CD with appropriate software, or whatever)
  • Compare your new, decoded WAV (or AIFF, or burned CD, or whatever) to your original source. Use any of the file comparison tools such as FC, or BC, or a numerous list of others, Or with an Audio Editor using the "Mix-with-inverted-phase" method, or use Foobar's 'Binary Comparison' plugin to compare these two.
  • Spam us then with numerous questions regarding how-can-it-be that files with different extensions, codecs and size result in the same, bitwise-identical WAV (or AIFF, or properly burned Audio CD, or what have you)
  • Take into account that not skipping the previous stage may render you eligible to be served as stew.

    -- L. Ipsum

Flac encoding: differences between bitrates

Reply #5
Never mind searching the archives, how about just looking at the first page of topics on the FLAC forum and seeing how many involve "quality of lossless."

Flac encoding: differences between bitrates

Reply #6
I don't think anybody's really answered the OP's question...

He's not questioning the lossless-ness of lossless , he's wondering why a fixed bitrate is listed, and that's a legitimate concern.

OP, the bitrate selected in the drop-down list in EAC is only used if you insert a special parameter in the command line for the encoder.  It's designed to be used with lossy encoders (such as LAME) when using CBR or ABR encoding.  This allows you to leave the command line alone and change bitrates by just selecting it in the drop-down list.  That bitrate will then be inserted into the command line when the encoder is called.

For FLAC (or any lossless encoder), it's only use is for calculating an estimated compressed size to be displayed in the "Compr. Size" column in the main ripping window, and also in the status bar at the bottom.

FLAC's compression level is set by the "-6" parameter at the very start of the command line.  -8 is maximum, but it's generally agreed that -6 gives the best balance between encoding speed and compression: -8 gains you very little in terms of compression, and takes longer to encode...but with the speed of today's CPUs, "longer" is very relative.
"Not sure what the question is, but the answer is probably no."

Flac encoding: differences between bitrates

Reply #7
Additionally, more compression requires more decoding CPU time, which can make a difference to the battery life of portable players.

When it comes to FLAC, the additional decoding time required by more compression is extremely small, with barely any correlation, at least according to this post.
Also, when I tried on my phone, a FLAC at 8 still used less CPU than an MP3 V3 for playback.

Flac encoding: differences between bitrates

Reply #8
He's not questioning the lossless-ness of lossless , he's wondering why a fixed bitrate is listed, and that's a legitimate concern.


From the OP:
Quote
Are the files going to be truly lossless?

(and more fretting about quality)

It sure looks like he's questioning the loosslessness of lossless.

Flac encoding: differences between bitrates

Reply #9
To me, this

Quote
If yes, then why give me the option of choosing a bitrate, at all?

is not "fretting," but rather indicates that the OP "gets" that lossless *should be* lossless, and is (rightfully) confused by the presence of a bitrate selector, which implies alteration of the audio data to hit a certain bitrate, like lossy encoding...and really, since EAC is supporting FLAC "natively" now, when it's selected as the compression type, EAC should disable that bitrate drop-down.
"Not sure what the question is, but the answer is probably no."

Flac encoding: differences between bitrates

Reply #10
To me, the bitrate setting when using the FLAC (or any other LOSSLESS ) encoder with EAC can be mostly ignored.  It then practically serves as just a way to estimate how big the resulting encodings will be.

I'm presuming that the OP is using the External Compresion pane under Compression Options.  EAC cannot simply "grey out" the bitrate when you specify "User Defined Encoder" because it cannot tell when the program path is pointing to a lossy or a lossless compressor.

Thus. the "bitrate" field is active at all times.  However, I pretty much ignore it when I'm using FLAC, ALAC, or TAK.  I do set the bitrate to 896kbps with those because the resulting actual bitrates are often in the 800 kbps range.  Thus, when EAC estimates the compressed filesize by using the bitrate setting (which is displayed in the Compr. Size column in the main window), it is somewhat close to the actual resulting one.

EDIT:
Since I'm using an older version of EAC (pre 1.0), newer versions probably support lossless natively in the selection, and one doesn't really have to choose "User Defined Encoder".

Flac encoding: differences between bitrates

Reply #11
The newest version (1.0b1) gives you the option to select FLAC compression during initial setup, hence "native" support.

Yes, it is still a User Defined Encoder, but if EAC is going to provide that option during setup and automatically provide the command line - as well as greatly extend the list of bitrates - it would be helpful it if incorporated some kind of extension mask to detect at least the formats it offers to set up for the user, and adjust the bitrate drop-down accordingly (for instance, you shouldn't see anything higher than 320 kbps for MP3, which used to be the maximum bitrate available).

However, I'm not a programmer etc., so I realize that may be far more difficult to implement than it seems.  However, since EAC does make extensive use of mouse-over help pop-ups, simply expanding the one for the bitrate drop-down could eliminate a lot of confusion, especially in light of the added bitrates.
"Not sure what the question is, but the answer is probably no."

Flac encoding: differences between bitrates

Reply #12
EAC is supporting FLAC "natively" now, when it's selected as the compression type, EAC should disable that bitrate drop-down.

Your scary quotes are fitting since EAC is not natively supporting flac.  How is EAC to know when to disable the bitrate drop-down based on what are manual entries in other fields using a user-defined encoding scheme?  This "should" scenario should require a complete overhaul of EAC's external compression settings.

Flac encoding: differences between bitrates

Reply #13
To me, this

Quote
If yes, then why give me the option of choosing a bitrate, at all?

is not "fretting," but rather indicates that the OP "gets" that lossless *should be* lossless, and is (rightfully) confused by the presence of a bitrate selector, which implies alteration of the audio data to hit a certain bitrate, like lossy encoding...and really, since EAC is supporting FLAC "natively" now, when it's selected as the compression type, EAC should disable that bitrate drop-down.


Thanks. That's exactly what was confusing me. A lossless format that allows a major filesize change for the same track?
Also, that's what I was using: EAC's control panel. Perhaps that option should be greyed out. I was under the impression that my rips have a lower bitrate and hence they may be of lesser quality, since I keep seeing people talking about their 1024 kB settings and such.