From dd451961fd4cc8c268ec06e0e0678a100f9b6c19 Mon Sep 17 00:00:00 2001 From: inhyeok Date: Tue, 7 Apr 2015 14:11:45 +0900 Subject: [PATCH] update sound-manager, wav-player, tone-player doc Change-Id: Ia655600ff1bce30b49ccb7a47b5ffba5766bb210 Signed-off-by: inhyeok --- org.tizen.guides/html/images/tone.png | Bin 14224 -> 30850 bytes .../html/images/wav_player_state_changes.png | Bin 17420 -> 30850 bytes .../html/native/multimedia/sound_manager_n.htm | 97 ++++++++++++++++++++- .../native/multimedia/sound_manager_tutorial_n.htm | 96 +++++++++++++++++++- .../native/multimedia/tone_player_tutorial_n.htm | 18 +++- .../native/multimedia/wav_player_tutorial_n.htm | 11 ++- 6 files changed, 210 insertions(+), 12 deletions(-) diff --git a/org.tizen.guides/html/images/tone.png b/org.tizen.guides/html/images/tone.png index 0c021cf439bfbcc12c5f68ef945421ba48c0a029..bc46737d62e5d377d080f825687e2fa81e28ac58 100644 GIT binary patch literal 30850 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 literal 14224 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 diff --git a/org.tizen.guides/html/images/wav_player_state_changes.png b/org.tizen.guides/html/images/wav_player_state_changes.png index 4d987f1ec0c593d658bbabe4cedd8dada3ebf2d8..bc46737d62e5d377d080f825687e2fa81e28ac58 100644 GIT binary patch literal 30850 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 literal 17420 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 P00000NkvXXu0mjfTaQA` diff --git a/org.tizen.guides/html/native/multimedia/sound_manager_n.htm b/org.tizen.guides/html/native/multimedia/sound_manager_n.htm index 82a9392..e972b32 100644 --- a/org.tizen.guides/html/native/multimedia/sound_manager_n.htm +++ b/org.tizen.guides/html/native/multimedia/sound_manager_n.htm @@ -24,6 +24,7 @@

Related Info

@@ -45,8 +46,11 @@
  • Volume control

    Control the output volume by managing the sound type and its volume level.

  • -
  • Sound session types -

    Set the sound session type, which specifies the behavior of your application sound across the system.

  • +
  • Sound session types (Deprecated) +

    Set the sound session type, which specifies the behavior of your application sound across the system. (see Sound Stream Policy for substitute)

  • + +
  • Sound Stream Policy (Since 2.4) +

    Set the attributes of your application's sound stream, which specify the behavior of the sound stream across the system.

  • Sound device query

    Using the query functions, you can get various information, such as the state of the sound devices.

  • @@ -69,7 +73,7 @@ -

    Sound Session Types

    +

    Sound Session Types (Deprecated)

    The Sound Manager API offers 5 different sound session types: media, alarm, notification, emergency and VOIP. According to these types, your application's audio works in a specific way to mix with sounds of other applications or to respond to an audio interruption made by another application.

    @@ -79,6 +83,91 @@

    You can also set options for resuming the media session when the interruption ends by using the sound_session_option_for_resumption_e enumerator. The sound system notifies the media session when the interruption ends, and you are able to resume your session.

    +

    Sound Stream Policy (Since 2.4)

    + +

    Setting sound stream policy is a newly added concept to replace sound session. Instead of sound session types, Sound Manager now provides sound stream types, and stream focus to moderate the sound streams.

    + +

    Obtain sound stream informaion handle

    + +

    Use the sound_manager_create_stream_information() function to create a stream info handle, and set the stream type to the handle. Once created, this handle will be used throughout the playback or recording stream APIs(e.g., Player, Wave-Player, Audio-Io, etc.). Your application can have multiple stream info handles and each handles can have multiple sound streams.

    + +

    There are 8 sound stream types to define the nature of your sound steam, and those are:

    + +
    • SOUND_STREAM_TYPE_MEDIA
    • +
    • SOUND_STREAM_TYPE_SYSTEM
    • +
    • SOUND_STREAM_TYPE_ALARM
    • +
    • SOUND_STREAM_TYPE_NOTIFICATION
    • +
    • SOUND_STREAM_TYPE_EMERGENCY
    • +
    • SOUND_STREAM_TYPE_VOICE_INFORMATION
    • +
    • SOUND_STREAM_TYPE_VOICE_RECOGNITION
    • +
    • SOUND_STREAM_TYPE_RINGTONE_VOIP
    • +
    • SOUND_STREAM_TYPE_VOIP
    + +

    Fundamentally, SYSTEM, ALARM, NOTIFICATION, EMERGENCY, VOICE_INFORMATION and RINGTONE_VOIP types are considered as playback stream, and VOICE_RECOGNITION type as recording stream. MEDIA type can be both playback and recording stream uppon your usage, and VOIP type has the nature of both playback and recording stream. According to these type, the routing path, and sound type are determined internally through the system.

    + +

    Notice that only playback stream types are matched to sound types which are used for Volume control.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Table: Correspoding sound types for playback stream types +
    Sound Stream TypeSound Type
    SOUND_STREAM_TYPE_MEDIASOUND_TYPE_MEDIA
    SOUND_STREAM_TYPE_SYSTEMSOUND_TYPE_SYSTEM
    SOUND_STREAM_TYPE_ALARMSOUND_TYPE_ALARM
    SOUND_STREAM_TYPE_NOTIFICATIONSOUND_TYPE_NOTIFICATION
    SOUND_STREAM_TYPE_VOICE_INFORMATIONSOUND_TYPE_VOICE
    SOUND_STREAM_TYPE_RINGTONE_VOIPSOUND_TYPE_RINGTONE
    SOUND_STREAM_TYPE_VOIPSOUND_TYPE_VOIP
    + +

    Managing Stream Focus

    + +

    Unlike setting sound session types, setting sound stream types and acquiring focus relatively give you more independence for your application's audio behavior. In sound session concept, it is the system that has the authority whether to stop or play the stream. However, in stream focus concept, you have the authority to control the steam of sound accross the system.

    + +

    To activate your sound stream, you should acquire stream focus. Once acquired, you are free to start playback or recording sound. Acquiring stream focus is possible anytime after the stream info handle has been creaated.

    + +

    Sound Manager offers steam focus for both playback and recording, meaning you can independetly control the playback and recording steam.

    + +
    • SOUND_STREAM_FOCUS_FOR_PLAYBACK = 0x0001
    • +
    • SOUND_STREAM_FOCUS_FOR_RECORDING = 0x0002
    + +

    Let's say your stream type is for playback, and there are two different streams are activated, one for playback, the other for recording. If you want to activate your playback stream and has no intention to interrupt the current recording stream, you only need to acquire playback focus, to stop the current playback stream, and start to play yours. And vice versa.

    + +

    However, don't be misguided that you can only acquire stream focus based on the strem types of yours. Even though your stream type is playback, you can also acquire recording focus if you want to stop recording stream while your stream playing. To long story make short, you can acquire both playback and recording focus for your stream at the same time.

    + +

    To acquire stream focus, use the sound_manager_acquire_focus()function. You will need a stream info hadle to specify which sound stream you want to acquire the focus.

    + +

    Don't forget to call the sound_manager_release_focus() function when you no longer need the stream focus, so that the other sound stream might resume.

    + +

    You are able to get a notice when the sate of stream focus changes through the sound_stream_focus_state_changed_cb() callback you've set when creating the stream info handle. If released, you are obliged to stop your sound stream. If acquired, you might want to resume your stream.

    +

    Sound Device Query

    The audio behavior of your application must differ in accordance with the various sound devices that are connected.

    @@ -117,4 +206,4 @@ var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga - \ No newline at end of file + diff --git a/org.tizen.tutorials/html/native/multimedia/sound_manager_tutorial_n.htm b/org.tizen.tutorials/html/native/multimedia/sound_manager_tutorial_n.htm index a220380..d2439b2 100644 --- a/org.tizen.tutorials/html/native/multimedia/sound_manager_tutorial_n.htm +++ b/org.tizen.tutorials/html/native/multimedia/sound_manager_tutorial_n.htm @@ -24,6 +24,8 @@

    Content

    • Setting the Sound Session Type
    • +
    • Setting the Sound Stream Information
    • +
    • Managing Stream Focus
    • Managing Volume Control
    • Querying Sound Devices
    • Managing Sound Manager Session Parameters
    • @@ -46,9 +48,15 @@

      Become familiar with the Sound Manager API basics by learning about:

        -
      • Setting the Sound Session Type +
      • Setting the Sound Session Type (deprecated)

        Set a sound session type for your application.

      • +
      • Setting the Sound Stream Information (since 2.4) +

        Create a sound stream information handle.

      • + +
      • Managing Stream Focus (since 2.4) +

        Control the stream focus of your sound stream.

      • +
      • Managing Volume Control

        Control the volume of your application.

      • @@ -108,7 +116,91 @@ error_code = sound_manager_set_session_type(SOUND_SESSION_TYPE_MEDIA);
        error_code = sound_manager_set_session_interrupted_cb(_sound_session_interrupted_cb, NULL);
         
        - + + +
          +
        • +
          +

          Setting the Sound Stream Information

          +Hide +
          +
          +

          To creat and set sound stream informaion handle:

          + + +
          1. To use the functions and data types of the Sound Manager API, include the <sound_manager.h> header file in your application:

            +
            +#include <sound_manager.h>
            +
          2. + +
          3. Create the sound stream informaion handle. +

            Create the sound stream info handle using the sound_manager_create_stream_information() function. The function sets the type of your sound stream, and registers the sound_stream_focus_state_cahnged_cb() callback function.

            + +

            The sound_stream_type_e enumeration defines the available sound stream types.

            +
            int error_code;
            +sound_stream_info_h stream_info;
            +
            +error_code = sound_manager_create_stream_information(SOUND_STREAM_TYPE_MEDIA, _sound_stream_focus_state_changed_cb, NULL, &stream_info);
            +
            +

            Use this stream_info to handle your playback/recording stream.

            +

            See Managing Stream Focus to define sound_stream_focus_state_cahnged_cb() callback

          +
          +
        • +
        • +
          +

          Managing Stream Focus

          +Hide +
          +
          +

          Control the stream focus of your sound stream:

          + + +
          1. To use the functions and data types of the Sound Manager API, include the <sound_manager.h> header file in your application:

            +
            +#include <sound_manager.h>
            +
          2. + +
          3. Managing stream focus. +

            Acquire a stream focus for your sound stream using the sound_manager_acquire_focus() function. Pass the stream_info handle you've create to specify which sound stream you want to acquire the focus. Once you succeed to acquire the focus, you are free to activate your sound stream.

            +

            Release the stream focus when you no longer need the focus for your sound stream using the sound_manager_release_focus() function. Also, pass the stream_info handle to specify the sound stream. +

            Use the sound_stream_focus_mask_e enumeration to set the type of stream focus.

            +
            int error_code;
            +sound_stream_focus_mask_e focus_mask;
            +
            +focus_mask = SOUND_STREAM_FOCUS_FOR_PLAYBACK | SOUND_STREAM_FOCUS_FOR_RECORDING;
            +//Masking is possible to acquire both playback and recording focus.
            +
            +error_code = sound_manager_acquire_focus(stream_info, focus_mask, NULL);
            +if (!error_code)
            +   //Activate your sound stream
            +
            +//Your sound stream has finished
            +error_code = sound_manager_release_focus(stream_info, focus_mask, NULL);
            +
          4. + +
          5. Subscribe to the stream focus change notifications. +

            To be informed when a stream focus change has occurred, define the sound_stream_focus_state_changed_cb() callback function:

            +

            You need to call the sound_manager_get_focus_state() function to get current state of your stream focus.

            +

            The snippet below is for the sound stream which has both playback and recording focus.

            + +
            static void sound_stream_focus_state_changed_cb(sound_stream_info_h stream_info, sound_stream_focus_change_reason_e reason_for_change, const char *additional_info, void *user_data)
            +{
            +   int error_code;
            +   sound_stream_focus_state_e state_for_playback;
            +   sound_stream_focus_state_e state_for_recording;
            +
            +   error_code = sound_manager_get_focus_state(stream_info, &state_for_playback, &state_for_recording);
            +   if(!error_code) {
            +      if(state_for_playback == SOUND_STREAM_FOCUS_STATE_RELEASED || state_for_recording == SOUND_STREAM_FOCUS_STATE_RELEASED)
            +         //You lost your focus, pause/stop your sound stream
            +      if(state_for_playback == SOUND_STREAM_FOCUS_STATE_ACQUIRED && state_for_recording == SOUND_STREAM_FOCUS_STATE_ACQUIRED)
            +         //You regained your focus, you might resume your sound stream
            +   printf("The stream focus changed by [%d]", reason_for_change);
            +}
            +
          6. +

            Register the callback fucntion when you create the stream_info handle. See Setting the Sound Stream Information to create the stream_info handle.

            +
          +
        • Managing Volume Control

          diff --git a/org.tizen.tutorials/html/native/multimedia/tone_player_tutorial_n.htm b/org.tizen.tutorials/html/native/multimedia/tone_player_tutorial_n.htm index f6e8134..616ec2d 100644 --- a/org.tizen.tutorials/html/native/multimedia/tone_player_tutorial_n.htm +++ b/org.tizen.tutorials/html/native/multimedia/tone_player_tutorial_n.htm @@ -90,7 +90,7 @@

          To start and stop playing a tone:

            -
          1. To start playback, use the tone_player_start() function. The player ID is assigned if the function succeeds. The function takes the following parameters: +
          2. To start playback, use the tone_player_start() function (deprecated, use tone_player_start_with_stream_info() instead). The player ID is assigned if the function succeeds. The function takes the following parameters:
            • Tone type, selected from the tone_type_e enum, defines which tone type to use (such as DTMF0 or DTMF1).
            • Media sound type, from the sound_type_e enum, defines which sound type is used (such as NOTIFICATION, ALARM, or RINGTONE).
            • @@ -101,6 +101,17 @@
              tone_player_start(TONE_TYPE_DEFAULT, SOUND_TYPE_MEDIA, -1, &tone_player_id);
              +
            • Since Tizen 2.4, it is recommended to use the tone_player_start_with_stream_info() function to start playback. The player ID is assigned if the function succeeds. The function takes the following parameters: +
                +
              • Tone type, selected from the tone_type_e enum, defines which tone type to use (such as DTMF0 or DTMF1).
              • +
              • Sound stream information handle, you've created with sound_manager_create_stream_informaion() function, defines which sound stream is used (see Sound Manager Tutorial to learn how to create the sound stream information handle).
              • +
              • Tone duration in milliseconds. If the duration is set to -1, the playback continues infinitely.
              • +
              • Player ID is an output parameter, and its value is set by the function. The ID of the tone player that started first is 0, the ID of the second is 1, and so on. If you determine the value to be NULL, the ID is not returned.
              • +
              + +
              tone_player_start_with_stream_info(TONE_TYPE_DEFAULT, stream_info, -1, &tone_player_id);
              +
            • +
            • To stop the playback, use the tone_player_stop() function with the ID of the player which you want to stop:
              tone_player_stop(tone_player_id);
            • @@ -114,8 +125,9 @@
          -

          To start playing a tone, use the tone_player_start() function with the tone type, sound type, and duration time as parameters. In this example, a congestion tone is played as a call sound for 1 second (1000 milliseconds):

          -
          tone_player_start(TONE_TYPE_SUP_CONGESTION, SOUND_TYPE_CALL, 1000, &tone_player_id);
          +

          To start playing a tone, use the tone_player_start_with_stream_info() function with the tone type, stream_info handle, and duration time as parameters. In this example, a congestion tone is played as a call sound for 1 second (1000 milliseconds):

          +
          tone_player_start_with_stream_info(TONE_TYPE_SUP_CONGESTION, stream_info, 1000, &tone_player_id);
          +

          When the duration is set to a specified time, playing is stopped automatically. You can also use the tone_player_stop() function to stop the playback manually.

        • diff --git a/org.tizen.tutorials/html/native/multimedia/wav_player_tutorial_n.htm b/org.tizen.tutorials/html/native/multimedia/wav_player_tutorial_n.htm index ac0c85a..d73dcc9 100644 --- a/org.tizen.tutorials/html/native/multimedia/wav_player_tutorial_n.htm +++ b/org.tizen.tutorials/html/native/multimedia/wav_player_tutorial_n.htm @@ -73,8 +73,9 @@

          Implement a callback function that is called when the WAV file is no longer being played.

          -

          Declare a variable which keeps the return value of the function. Invoke the wav_player_start() function to play the WAV file:

          - +

          Declare a variable which keeps the return value of the function. Invoke the wav_player_start_with_stream_info() or wav_player_start() function to play the WAV file.

          +

          Notice that the wav_player_start() is deprecated. It is recommended to use the wav_player_start_with_stream_info() since Tizen 2.4.

          +

          You need a sound stream information handle to pass to the wav_player_start_with_stream_info(). see Sound Manager Tutorial to learn how to create the sound stream information handle.

           static void _playback_completed_cb(int id, void *user_data) 
          @@ -88,8 +89,12 @@ void main()
              int wav_player_id;
              wav_player_error_e ret;
              const char* wav_path = "/tmp/test.wav";
          +   sound_stream_info_h stream_info;
          +
          +   ...
           
          -   ret = wav_player_start(wav_path, SOUND_TYPE_MEDIA, _playback_completed_cb, (void*)wav_path, &wav_player_id);
          +   ret = wav_player_start_with_stream_info(wav_path, stream_info, _playback_completed_cb, (void*)wav_path, &wav_player_id); //Since Tizen 2.4
          +   ret = wav_player_start(wav_path, SOUND_TYPE_MEDIA, _playback_completed_cb, (void*)wav_path, &wav_player_id); //Depricated
           }
           
          -- 2.7.4