@kefah/nativescript-sound
TypeScript icon, indicating that this package has built-in type declarations

1.0.1 • Public • Published

@kefah/nativescript-sound

This is a plugin to play games short sound

Limitations Android app can play only sound under 1MB (5.6 seconds) Do not play a large audio with this plugin, it is not made for

npm install @kefah/nativescript-sound

Usage

Do not forged Webpack!

  const config = webpack.resolveConfig();
  const customCopyInstance = new CopyWebpackPlugin({
    patterns: [
        ...
      { from: 'sounds/*.mp3'}, // put here the path to the s-audio file
    ],
  });

  config.plugins.push(customCopyInstance);
  return config;

Use it :-)

    import { NativescriptSound, SoundPathInterface } from '@kefah/nativescript-sound';

    /**
     * Do not forged to configure webpack for your audio file
     * */

    const appPath: string = knownFolders.currentApp().path;
    const soundsPath = path.join(appPath, "sounds");
    this.sounds = {
        "success": {   
            path: path.join(soundsPath, "card_palyed_1.mp3")
        },
        "msg": {   
            path: path.join(soundsPath, "card_played_2.mp3")
        },
        "success_1": {
            path: path.join(soundsPath, "card_played.mp3")
        },
        "shuffle": {   
            path: path.join(soundsPath, "card_shuffle.mp3")
        },
        "wrong": {   
            path: path.join(soundsPath, "card_swipe.mp3")
        }
    };

    this.player = new NativescriptSound(10)

    // Prepare all the audio to be played later
    this.player.prepare({
        paths: this.sounds,
        onLoadCompleted: (player, sampleId, status) => {
            console.log(`${sampleId} with status ${status}`)
        }
    });

    // ... 
    // Later on the game, play the sound
    this.player.play({
        name: "success"
    });

API

Name IOS ANDROID Type Description
prepare X X paths: SoundsOptions Prepare a list of audios to be played later on the game
play X X playOptions: PlayOptions Play a specific audio
stop X X soundName: string Stop the audio with the sound name
pause X X soundName: string Pause the audio
resume X soundName: string resume the audio
setVolume X X soundName: string set the volume of the audio
setRate X X soundName: string set the speed of the audio
unload X soundName: string unload audio, you need new instance after calling this to reload the audio
releaseAll X unload all audios, you need new instance after calling this to reload the audio

License

Apache License Version 2.0

Package Sidebar

Install

npm i @kefah/nativescript-sound

Weekly Downloads

2

Version

1.0.1

License

Apache-2.0

Unpacked Size

41.3 kB

Total Files

14

Last publish

Collaborators

  • kefahb