# NNS_SndArcPlayerStartSeqArc*

## Syntax

      #include <nnsys/snd.h>

      BOOL NNS_SndArcPlayerStartSeqArc(
              NNSSndHandle* handle,
              int seqArcNo,
              int index );
      BOOL NNS_SndArcPlayerStartSeqArcEx(
              NNSSndHandle* handle,
              int playerNo,
              int bankNo,
              int playerPrio,
              int seqArcNo,
              int index );

## Arguments

`handle` | The sound handle pointer.
`seqArcNo` | Sequence archive number.
`index` | The index number of the sequence archive.
`playerNo` | Player number.
`bankNo` | Bank number.
`playerPrio` | Player priority. The value is in the 0-127 range; a greater value indicates higher priority.

## Return Values

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

## Description

Plays back a sequence archive.

With the `NNS_SndArcPlayerStartSeqArc` function, the player number and other parameters are configured based the specifications in the sound data. By using ``NNS_SndArcPlayerStartSeqArcEx`` the player number, bank number and player priority can be specified on the program side. However, if any of these arguments (`playerNo`, `bankNo`, or `playerPrio`) are set to `-1`, the parameter specified in the sound data will be used.

The sound archive must first be initialized with `NNS_SndArcInit` or `NNS_SndArcInitOnMemory`.

The sound handle `handle` must be initialized once, in advance, with `NNS_SndHandleInit`. When this function is called, the sequence already bound to the sound handle will be unbound (but not stopped). If playback is successful, the sequence will be bound to the sound handle.

This function internally calls `NNS_SndArcGetFileAddress` to determine if the required sound data is loaded into memory. If the required data is not in memory, the function will fail.

The function internally calls the `NNS_SndPlayerSetSeqArcNo` function so that you can later use the `NNS_SndPlayerStopSeqBySeqArcNo` function to stop sequences by specifying sequence archive number.

If you want to reset the voicing priority and volume settings configured in the sound data, you can call `NNS_SndPlayerSetChannelPriority` or `NNS_SndPlayerSetInitialVolume` immediately after starting the sequence.

Playback failure may be the result of the following factors:

- Sequence archive number is invalid
- Index number is invalid
- Priority is lower than the sequence already playing
- Data is not in memory

## See Also

`NNS_SndArcInit, NNS_SndArcInitOnMemory, NNS_SndHandleInit, NNS_SndArcGetFileAddress, NNS_SndPlayerStopSeqBySeqArcNo, NNS_SndPlayerSetSeqArcNo, NNS_SndPlayerSetChannelPriority, NNS_SndPlayerSetInitialVolume`

## Revision History

2004/11/30 Corrected the type of the returned value.
2004/06/01 Expanded `NNS_SndArcPlayerStartSeqArcWithPlayerNo` and changed it to `NNS_SndArcPlayerStartSeqArcEx`.
2004/04/19 Manuals for `NNS_SndArcPlayerStartSeq` and `NNS_SndArcPlayerStartSeqWithPlayerNo` were unified.
2004/04/01 Initial Version.

CONFIDENTIAL