[comp.sys.mac.hypercard] snd1 or snd2 for HC 1.2.5?

johnston@oscar.ccm.udel.edu (01/03/91)

Quick question with maybe a not so quick answer.  Is it better to
use snd1 or snd2 format for inclusion of sounds in a Hypercard 1.2.5 stack?  

Naturally, I would like the sound-containing stack to run without 
modification on all Macs that can run HyperCard.  Would the format 
choice be any different if the goal was to later convert the stack
to work with HyperCard v.2.0 ?

Thanks,

-- Bill Johnston (johnston@oscar.ccm.udel.edu)
-- 38 Chambers St.; Newark, DE 19711; (302)368-1949

johnston@oscar.ccm.udel.edu (01/05/91)

In article <40477@nigel.ee.udel.edu>, johnston@oscar.ccm.udel.edu writes...
>Quick question ... Is it better to use snd1 or snd2 format for 
>inclusion of sounds in a Hypercard 1.2.5 stack?  

I got no replies to this request so I have assembled the information
I was working from when I asked this question.  Parts of it still are
puzzling to me.  I think that the answer is 'no problem, use snd2', 
but I would still like a better explanation.

First, I found no information regarding the sound resource types in
the follow documents:  HyperCard Script Language Guide (Working Draft 4),
HyperCard 1.0 manual, HyperCard 1.2.x User's Guide and Scripting Guide,
GoodMan "Complete" HC (1.0 version).   I also found no explanation in 
the HyperTalk guide stacks released with 1.2.5 or 2.0.

The explanation given in TN 168 (this version last modified March '88).

........................... from TN 168 .............................

HyperCard has the ability to play sounds stored in 'snd ' resources. 
The HyperTalk command to play these sounds is:

    play <"voice"> [tempo <tempo>] <"notes"> [# | b] [octave] [duration]

The 'voice' parameter is the name of an 'snd ' resource. The 'snd '
resource which HyperTalk's play command expects is the format 2 'snd ' 
resource. All format 2 'snd ' resources can be played by HyperCard. 
These use the "Sampled Sound Synthesizer."  Both format 1 and format 2 'snd '
resources are documented in Inside Macintosh Volume V.  The description of 
format 2 is missing from earlier versions.

To see if a sound resource is format 1 or 2, use ResEdit or the MPW Tool 
DeRez to look at the first word of the resource. This will be either 
$0001 or $0002 depending on whether the resource is a format 1 or 2 resource.
Note that all 'snd ' resources in the System file are format 1.
Also, note that the 'snd ' resources which come with HyperCard, 
"Silence", "Harpsichord", and "Boing" are all mistakenly labeled 
as format 1 resources even though they are, in fact, format 2.

............................ end TN quote ...............................

After reading this information, I was still confused by the fact that
the shareware sound manipulation software I was using incorrectly identified
some of the sounds I was working with as "snd 1".  I had heard that sound
compatibility was an issue for running HC 1.2.5 stacks on newer Macs
using HC 2.0 and System 6.0.7 and greater, which apparently makes use
of a new Sound Manager.

Incidentally, checking the 'snd ' resources in HC 1.2.5 with ResEdit indicates
that all are of type 2, including "Silence", "Harpsichord", and "Boing".

Can anyone shed any light on this situation?  I assume that there is
no problem with using snd2 for all Macs, and all versions of HyperCard.

>Thanks,  (Again)
> 
>-- Bill Johnston (johnston@oscar.ccm.udel.edu)
>-- 38 Chambers St.; Newark, DE 19711; (302)368-1949
> 

jkc@Apple.COM (John Kevin Calhoun) (01/06/91)

In article <40758@nigel.ee.udel.edu> johnston@oscar.ccm.udel.edu
(Bill Johnston) writes:
>Quick question ... Is it better to use snd1 or snd2 format for 
>inclusion of sounds in a Hypercard 1.2.5 stack?  

HyperCard 1.2.5 can't play format 1 'snd ' resources.  It does play
format 2 'snd ' resources.

HyperCard 2.0 plays 'snd ' resources of both formats.

>                                              I assume that there is
>no problem with using snd2 for all Macs, and all versions of HyperCard.

Correct.

Kevin Calhoun
HyperCard Team
Apple Computer, Inc.