Tiny quibble: the 13.5 hour problem


#1

Juce can’t play a file for longer than 13.5 hours because of the casts to (int) in juce_AudioFormatReaderSource.cpp.

Now, all my audio file are greater than 13.5 hours. Wait, I meant that NONE of my audio files are greater than 13.5 hours, so it isn’t a real issue for me, but I don’t really see the need for such casts there…?


#2

My apologies! Didn’t know that code was in there, and it looks like a bit of historical cruft that got accidentally left behind from years ago when dinosaurs roamed the earth and audio files were shorter… Have corrected it to use int64s now!


#3

Don’t worry - I didn’t run into it. I was just reading through the code.

My first computer had a 20MB hard drive - that would have been about 20 minutes of audio (8-bit, 20Khz)… I remember when I got a new one and was agonizing between the 80MB drive and the 120MB drive - “What could I possibly do with all that disk space?”


#4

Am I wrong in noticing that the conversion to int64 that has been performed as a result of this discussion in the following commit:

has now been reverted back to int in this later commit (with the purpose of silencing a MSVC warning, I suppose)?


#5

I don’t think so unless you’re planning to read more than 13.5 hours in a single block.


#6

Yes, don’t worry. The casts I added make no difference at all, they’re just to avoid compiler warnings in VC.