NNS_SndArcStrmStartEx

Syntax

#include <nnsys/snd.h>
BOOL NNS_SndArcStrmStartEx(
        NNSSndStrmHandle* handle,
        int playerNo,
        int playerPrio,
        int strmNo,
        u32 offset );

Arguments

handle Pointer to a stream handle.
playerNo Player number.
playerPrio Player priority. The value is in the 0-127 range; a greater value indicates higher priority.
strmNo Stream number.
offset Starting offset position. Units are milliseconds.

Return Values

If playback succeeds, TRUE; if it fails, FALSE.

Description

This function specifies the player number and player priority, and plays back the stream.

The sound archive stream library must be initialized in advance using the NNS_SndArcStrmInit function.

The stream handle handle needs to be initialized only once in advance using the NNS_SndStrmHandleInit function. Calling this function releases the stream already attached to the stream handle (this does not mean it is stopped). If playback succeeds, the stream is attached to the stream handle.

If -1 is specified for the player number playerNo and player priority playerPrio, the parameters specified with the sound data are used.

If a non-zero value is set for the start offset position offset, it is possible to play from the middle of the stream data.

The starting data must be loaded into the stream buffer before stream playback can begin, so the beginning of the actual sound production is delayed by several frames. If you want to start playback immediately, the data load to the stream buffer needs to be completed in advance. The NNS_SndArcStrmPrepare function is used for this.

The channels used for stream playback are allocated internally by this function. If the allocated channels were being used by sequence playback, the audio being produced is forcibly stopped. To control the timing of when channels are allocated, call the NNS_SndArcStrmAllocChannel function in advance.

If the stream data is in stereo, channel 0 is output from the left and channel 1 from the right. These settings can be changed with the NNS_SndArcStrmSetChannelPan function.

Playback failure may be the result of the following factors:

  • The stream number is invalid.
  • The priority is lower than the stream already being played.
  • The channels used by the stream player are already being used for another purpose.

See Also

NNS_SndArcStrmInit, NNS_SndStrmHandleInit, NNS_SndArcStrmPrepare, NNS_SndArcStrmAllocChannel, NNS_SndArcStrmSetChannelPan

Revision History

2004/11/26 Extracted from description of NNS_SndArcStrmStart function.


CONFIDENTIAL