[LAU] everything stops after 2.1GB

Ralf Mardorf ralf.mardorf at alice-dsl.net
Thu Nov 10 11:43:40 UTC 2016


On Thu, 10 Nov 2016 10:59:31 +0000, Bill Purvis wrote:
>On 09/11/16 19:47, Johannes Kroll wrote:
>> On Wed, 9 Nov 2016 20:08:39 +0100 (CET)
>> "J. C." <julien at mail.upb.de> wrote:
>>  
>>> Nov 9 2016, Markus Seeber has written:
>>> ...  
>>>> Are you perhaps on a 32bit OS?  
>>> Yes, I am, but would that really effect the systems facility to
>>> read and interpret 64bit integers in a file?  
>> No, but it could be a bug/misfeature in the software you are using
>> for recording. It could be related to an integer overflow when using
>> a 32-bit signed integer to keep track of file size or something
>> similar. In C, an 'int' would compile to a 32-bit or 64-bit variable
>> according to the word size of the target machine. As other possible
>> causes don't seem to apply, this seems likely.  
>Sorry, that's not true. In earlier times, before things like standards
>were invented and 32 bits seemed a lot, int=16 bits, long=32bits. When
>they got round to standardising C, int was defined as either 16 or 32
>bits, depending on the architecture. Short=16 bits, long=32bits. Then
>64 bits came in, and 16-bit machine were virtually forgotten. int was
>then only vaguely defined but in practice it is always 32 bits (unless
>you have a very old compiler for
>a 16-bit machine). It does NOT extend to 64 bits, with the possible 
>exception
>of some obscure machines that only support 64 bits (CDC?). Long is
>either 32 or 64 bit, depending on applicable architecture.
>
>The only reliable way is to use the extended types: int_16, int_32,
>int_64 which are now available (for those that like typing longer
>names.... ;-))

Perhaps useful information for those who program, but irrelevant for
this thread, since WAV files > 2GiB don't require 64bit at all.

libsndfile on Arch, this is what the OP does use, is configured with
"--prefix=/usr --disable-sqlite" and it's the latest official upstream
release without patches and no changes excepted of

  sed -i 's|#!/usr/bin/python|#!/usr/bin/python2|' src/binheader_writef_check.py \
    src/create_symbols_file.py programs/test-sndfile-metadata-set.py
  sed -i 's|python|&2|' src/Makefile.am

I hope we agree on the following:

1. wav, even 32bit is not limited to 2GiB

2. ext3, with ulimit file size unlimited on a partition where > 100GiB
are free, allows to write files >2GiB

Regards,
Ralf



More information about the Linux-audio-user mailing list