[flac-dev] Question from Argentina

Ulrich Klauer ulrich at chirlu.de
Wed Jun 12 13:24:42 PDT 2013


Federico Miyara wrote:

> I would like to ask why the seekpoint information in the seek table
> metadata block reserves 64 bit for the number of first sample in
> target frame and for the offset of the first byte of target frame.
>
> It seems to me a lot, since 2^64 = 1.84e+19, i.e., far more samples
> and bytes than can be expected in any file... ever.

Fast reverse to the year 1985, when the Interchange File Format was  
introduced (the basis of many common file formats, notably WAV): The  
best-selling home computer at the time, the Commodore 64, had 2^16  
bytes (64 KiB) of RAM. A typical hard disk drive offered perhaps 10 MB  
of storage, or about 2^24 bytes; although very expensive HDDs of, say,  
1 GB capacity already existed, but noone would have dreamed of filling  
it completely with audio data, let alone in one single file. Still,  
the IFF standard provided for file sizes up to 2^32 bytes, or 4 GiB,  
which seemed plenty at the time. (Of course, IFF was not designed with  
only audio in mind.)

Well, today 4 GiB is about half an hour of 8-channel, 96 kHz, 24-bit  
uncompressed audio, or about 0.9 % of the capacity of a modest 2 TB  
HDD. Not much, in other words, and who hasn't cursed yet at artificial  
4 GiB (or even 2 GiB) limitations? So I wouldn't be too sure about the  
"ever", even though it does seem very far away at the moment.

Apart from that, there are only so many "natural" sizes. 32 bits and  
64 bits are among them, and perhaps the midpoint at 48 bits is as  
well. You wouldn't choose 50 or 53 bits unless absolutely necessary.

Ulrich



More information about the flac-dev mailing list