On Mar 6, 2013, at 00:55, Erik de Castro Lopo wrote: > Brian Willoughby wrote: > >> I do not see the need to jump to 64-bit merely to get beyond the 2 GB >> limit. There are modern API that handle 32-bit unsigned file lengths >> - i.e., up to 4 GB - without going to 64-bit. > > When we are talking about offset_t we are talking about the flac C and > C++ API. Currently if we have a flac file with more than 2Gig samples > it is not possible to seek past the 2 Gig sample point on platforms > where offset_t is 32 bit. To fix this we need to guarantee that the > offset parameter is 64 bits on all platforms.
What about fseeko()? I use that in my ObjC library for converting between AIFF, FLAC, and WAVE. It takes an unsigned 32-bit offset, as contrasted with fseek() classic. Unless you need negative offsets, that seems like a simple change. FLAC__stream_decoder_seek_absolute() already takes a FLAC__uint64 offset. I just cast my 32-bit unsigned long and use that in the existing FLAC API. Brian Willoughby Sound Consulting _______________________________________________ flac-dev mailing list flac-dev@xiph.org http://lists.xiph.org/mailman/listinfo/flac-dev