Help - Search - Members - Calendar
Full Version: FLAC & seekable Option
Hydrogenaudio Forums > Lossless Audio Compression > FLAC
mepistop
Flac 1.10 (Windows) default encoding with seekable option is default.
Is that "Seekable" option important?

What if I use "--no-seektable" option when I encode?

What's the difference of seektable?

Do I need to keep all of those seektable information in flac file?


Here is my "Metaflac" list information with defalut option:
CODE
METADATA block #0
 type: 0 (STREAMINFO)
 is last: false
 length: 34
 minumum blocksize: 4608 samples
 maximum blocksize: 4608 samples
 minimum framesize: 14 bytes
 maximum framesize: 16843 bytes
 sample_rate: 44100 Hz
 channels: 2
 bits-per-sample: 16
 total samples: 11378976
 MD5 signature: dab1753b29e6593a8f9e81fb44457706
METADATA block #1
 type: 3 (SEEKTABLE)
 is last: false
 length: 450
 seek points: 25
   point 0: sample_number=0, stream_offset=0, frame_samples=0
   point 1: sample_number=451584, stream_offset=0, frame_samples=714360
   point 2: sample_number=907776, stream_offset=0, frame_samples=1612600
   point 3: sample_number=1363968, stream_offset=0, frame_samples=2599810
   point 4: sample_number=1820160, stream_offset=0, frame_samples=3602831
   point 5: sample_number=2271744, stream_offset=0, frame_samples=4637984
   point 6: sample_number=2727936, stream_offset=0, frame_samples=5730410
   point 7: sample_number=3184128, stream_offset=0, frame_samples=6860382
   point 8: sample_number=3640320, stream_offset=0, frame_samples=8084635
   point 9: sample_number=4091904, stream_offset=0, frame_samples=9334580
   point 10: sample_number=4548096, stream_offset=0, frame_samples=10568646
   point 11: sample_number=5004288, stream_offset=0, frame_samples=11687999
   point 12: sample_number=5460480, stream_offset=0, frame_samples=12859853
   point 13: sample_number=5916672, stream_offset=0, frame_samples=14020297
   point 14: sample_number=6368256, stream_offset=0, frame_samples=15271218
   point 15: sample_number=6824448, stream_offset=0, frame_samples=16554157
   point 16: sample_number=7280640, stream_offset=0, frame_samples=17827069
   point 17: sample_number=7736832, stream_offset=0, frame_samples=19132661
   point 18: sample_number=8188416, stream_offset=0, frame_samples=20354452
   point 19: sample_number=8644608, stream_offset=0, frame_samples=21691621
   point 20: sample_number=9100800, stream_offset=0, frame_samples=23034895
   point 21: sample_number=9556992, stream_offset=0, frame_samples=24402525
   point 22: sample_number=10013184, stream_offset=0, frame_samples=25762667
   point 23: sample_number=10464768, stream_offset=0, frame_samples=27060899
   point 24: sample_number=10920960, stream_offset=0, frame_samples=28062391
METADATA block #2
 type: 4 (VORBIS_COMMENT)
 is last: false
 length: 40
 vendor string: reference libFLAC 1.1.0 20030126
 comments: 0
METADATA block #3
 type: 1 (PADDING)
 is last: true
 length: 4096


Here is my "Metaflac" list information with option "--no-seektable":
CODE
METADATA block #0
 type: 0 (STREAMINFO)
 is last: false
 length: 34
 minumum blocksize: 4608 samples
 maximum blocksize: 4608 samples
 minimum framesize: 14 bytes
 maximum framesize: 11438 bytes
 sample_rate: 44100 Hz
 channels: 2
 bits-per-sample: 16
 total samples: 14641200
 MD5 signature: 5249ded10e65b404b1306432e34ee974
METADATA block #1
 type: 4 (VORBIS_COMMENT)
 is last: false
 length: 177
 vendor string: reference libFLAC 1.1.0 20030126
 comments: 6
   comment[0]: ALBUM=Let's Get Lost
   comment[1]: ARTIST=Chet Baker
   comment[2]: GENRE=Jazz
   comment[3]: DATE=1989
   comment[4]: TRACKNUMBER=1
   comment[5]: TITLE=Moon & Sand (Motivo di Raggio di Luna)
METADATA block #2
 type: 1 (PADDING)
 is last: true
 length: 3959
pest
if you do not add a seektable to your flac, seeking will be very slow, for example
in foobar. You simply save some bytes. If you never play your flacs or
use them as a backup you could avoid the seektable, but i think it's not recommended...

pest
rtilghman
As stated, Seeking will be slow without a Seektable. In addition you won't be able to seek on devices that use a decoder that doesn't add reference seekpoints on the fly when the file is decoded. So while programs like Winamp will still allow seeking, other hardware and software may not.

For example, the Rio Karma is a portable player that plays FLAC files. The reference decoder used is incapable of adding reference seekpoints, as I understand it by design since creating seekpoints would require the disk spin up constantly, resulting in a big battery hit, etc.

Basically for a couple of k just add the seekpoints, theres nothing but negatives to not having a seektable.

-rt
jcoalson
adding reference seekpoints on the fly is not a requirement for seeking in FLAC files that have no seektable. even on the Karma it should be possible to seek without a seek table, though it may be slow.

the time it takes to seek without a seektable is a function of the length. the reference decoder's seek algorithm in this case is not as good as a binary search but the next release will have a true binary search.

Josh
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.