wav file more than 2GB can't be read in 32 bit operation system
tsuda.kageyu at gmail.com
Thu Dec 24 23:17:26 UTC 2015
Hi Dave and Jingbo,
JFYI, I mentioned all kinds of files, not only WAV. So please keep in mind
that TagLib can't handle a large file in 32-bit systems even if it's RF64
2015-12-25 1:15 GMT+09:00 Dave Lambley <dave.lambley at gmail.com>:
> WAV files larger than 2^31+8 bytes are asking for compatibility trouble on
> any processor as the format itself contains a 32 bit data size. It might be
> worthwhile looking at RF64 or FLAC file formats.
> On 23 December 2015 at 11:31, Tsuda Kageyu <tsuda.kageyu at gmail.com> wrote:
>> Hi Jingbo,
>> It's a limitation by design. TagLib handles the length and offset of
>> files with the type *long*. So it can handle large files (larger than
>> 2GB) only in which *long* is 64-bit like GCC on 64-bit Linux. For most
>> 32-bit compilers, *long* is 32-bit and TagLib can't handle large files.
>> In taglib2 branch, we have made some changes to remove the limitation. It
>> handles the length and offset of files with *long long* which is 64-bit
>> in most systems.
>> 2015-12-23 12:24 GMT+09:00 Zhang, Jingbo <jingbo.zhang at auralic.com>:
>>> sorry to bother you, but this problem has bother me a couple of days.
>>> When I compile taglib in 64 bit operation system, it can read wav file
>>> more than 2GB.
>>> But when I compile taglib in 32 bit operation system, it can't.
>>> And then I add "SET ( CMAKE_CXX_FLAGS "-D_FILE_OFFSET_BITS=64" CACHE
>>> STRING "compile flags" FORCE)" in top of CMakeLists.txt, And the file
>>> "taglib\CMakeFiles\tag.dir\flags.make" has "-D_FILE_OFFSET_BITS=64" in
>>> "CXX_FLAGS", but it can't work.
>>> So I am helpless in it.
>>> Thanks a lot!
>>> taglib-devel mailing list
>>> taglib-devel at kde.org
>> taglib-devel mailing list
>> taglib-devel at kde.org
> taglib-devel mailing list
> taglib-devel at kde.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the taglib-devel