At 03:10 PM 8/25/2011 +0000, Dave Crozier wrote:
>George,
>You have 4 options.
...

>4. Hold the audio file in its original format in a preset folder and 
>simply store a link to it.
>
>Personally I would go the (4) route as you may soon break the 2Gb limit in 
>VFP with large files and apart from that the chances of data corruption 
>are small. If the database gets too large then you could always use 
>SQLExpress to hold the binary data which will go up to 10Gb and is free.
>
>The problem with memo fields is that the replaced data space never gets 
>reused unless the database is packed (pack memo) so if the file is 
>constantly updated then replaced records still take up space

The downside of #4 is if the app is to be distributed. If the app is only 
going to play on his own computer no biggie, but when deploying elsewhere, 
#4 is a lot of headaches waiting to happen (unless the app is intended to 
"read" the target's sound files, whatever they have, and let folks play 
those - e.g. sort of like a sound library app).

Also note that memo field "bloat" doesn't occur unless you save to the same 
record over and over again AND if the replacement value is larger than the 
previous one. In other words, if you store a 1MB file in a memo field, and 
then you REPLACE it with a < 1MB file, the fpt size does not grow. And if 
you replace that record 1,000 times with < 1MB the FPT will not grow. The 
bloat will occur when the replacement string is larger than what was 
previously there. And heck, what is the price of a PACK just before sending 
out the distro anyway?

I'd strongly advise against SQLExpress (the good ol' MSDE eh?), no need 
setting up a "server" component on a target computer with God only knows 
how many security holes floating around in it. If you've really got more 
than 2GB of sound files, it's simple enough to create as many VFP tables as 
you want. You could add 1 or 2 lines of code in the "play sound" method to 
easily handle however many sound tables you would ever expand to in an 
application.

I read the original message as if the application were going to be 
distributed to other computers, and that there were certain sounds that 
would be played by the application based on the application's design/logic. 
So my responses were in line with that concept.

-Charlie


_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/profox
OT-free version of this list: http://leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: 
http://leafe.com/archives/byMID/profox/[email protected]
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.

Reply via email to