[futurebasic] Re: [FB] Cross Channel Problems

Message: < previous - next > : Reply : Subscribe : Cleanse
Home   : October 2002 : Group Archive : Group : All Groups

From: Robert Covington <artlythere@...>
Date: Fri, 18 Oct 2002 08:19:27 -0400
>Hi Guys,
>
>I am trying to get Quicktime to replace SndRecordToFile - I can't seem
>to get the format right on setting up the Toolbox call SGNewChannel
>
>-any suggestions... ?


struct SeqGrabFrameInfo {
    long         frameOffset;
    long         frameTime;
    long         frameSize;
    SGChannel    frameChannel;                                  // IV-2688
    long         frameRefCon;
};

Your problem most likely is that you have your SGChannel as a component
instance, and it should be a reference to the above type structure.

SGNewChannel :
>Creates a sequence grabber channel and assigns a channel component to the
>channel.
>ComponentResult SGNewChannel (                                  // IV-2677
>    SeqGrabComponent    s,                                      // IV-2688
>    OSType              channelType,                            // IV-2695
>    SGChannel           *ref );

Here's the problem area:
>ref
>A pointer to the frameChannel field in the SeqGrabFrameInfo (IV-2486)
>structure that is to receive a reference to the channel that is added to
>the sequence grabber component. If the sequence grabber component
>successfully locates and connects to an appropriate channel component, the
>sequence grabber component returns a reference to the channel component
>into this field.

<
http://developer.apple.com/techpubs/quicktime/qtdevdocs/APIREF/SOURCESIII/sgnewc
hannel.htm >
<
http://developer.apple.com/techpubs/quicktime/qtdevdocs/APIREF/SOURCESIV/seqgrab
frameinfo.htm


Toolbox Info plugin is your pal in all endeavors with such QTpies.

rc


>begin Globals
>
>dim sgSoundComp as ComponentInstance
>dim SGChannel as ComponentInstance
>
>toolbox fn SGNewChannel (ComponentInstance,OSType,@Long) =
>ComponentResult
>
>end globals
>
>window #1
>
>
>clear local
>dim err as long
>local fn SetUpRecord
>err = fn entermovies
>sgSoundComp = fn opendefaultcomponent (_SeqGrabComponentType,0)
>err = FN sginitialize (sgSoundComp)
>print  err
>err = fn SGNewChannel(sgSoundComp,_SoundMediaType,@SGChannel)'crash here
>
>print  err
>end fn
>
>fn SetUpRecord
>
>do
>handleevents
>until gFBQuit
>
>
>--
>To unsubscribe, send ANY message to <futurebasic-unsubscribe@...>