[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [sc-users] large sound files (> 2Gb)
>>>>> "S" == Sciss <contact@xxxxxxxx> writes:
S> hey, there is a problem currently with sclang and scsynth not
S> supporting 64bit integers, for example for the frame number in
S> buffer read commands. however, the frame index (not the file
S> offset in bytes) is most likely in the 32bit range.
Presumably. If this is the sample number in the file, 32 bits should
allow counting up to 1 day,3 hr,3 min,11.5486621 secs, which is far
beyond the files im working with here.
S> i have been working fine with Wave64 files in supercollider, they
S> behave correctly past the 2 GB limit.
Ive tried with w64 files without any luck. Does the example below run
at your place?
S> AIFF and WAV don't support larger file sizes unfortunately,
S> sometimes you are lucky and get to 4 GB if the integers are
S> treated as unsigned.
I know about these limitation with AIFF and WAV, and many softwares
misreading of the size-field as signed integers, leaving you with 2 Gb
limits instead of 4 Gigs. But im testing this with other formats
without these limitations, ie sun/next, w64, ircams sf, flacs etc. - and
still no luck. And as mentioned, the same files work well with other
libsndfile-based apps.
Could you please just test this, and tell me if you can grab the file
with \b_read afterwards?
(
var g, o;
g = [
[0.0, [\s_new, \tut, 1000, 0, 0]],
[12200, [\c_set, 0, 0]]
];
o = ServerOptions.new.numOutputBusChannels = 1;
Score.recordNRT(g, "/tmp/test_lang.osc", "/tmp/test_lang.w64", nil, 44100, 'W64', 'float', o);
)
W64
s.boot
s.sendMsg(\b_free, 0)
s.sendMsg(\b_alloc, 0, 65536, 1)
s.sendMsg(\b_read, 0, "/tmp/test_lang.w64", 0, 65536, 0, 1)
_______________________________________________
sc-users mailing list
info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: https://listarc.bham.ac.uk/marchives/sc-users/
search: https://listarc.bham.ac.uk/lists/sc-users/search/