PPB_MediaStreamAudioTrack Struct Reference

Data Fields

PP_Bool(* IsMediaStreamAudioTrack )(PP_Resource resource)
int32_t(* Configure )(PP_Resource audio_track, const int32_t attrib_list[], struct PP_CompletionCallback callback)
int32_t(* GetAttrib )(PP_Resource audio_track, PP_MediaStreamAudioTrack_Attrib attrib, int32_t *value)
struct PP_Var(* GetId )(PP_Resource audio_track)
PP_Bool(* HasEnded )(PP_Resource audio_track)
int32_t(* GetBuffer )(PP_Resource audio_track, PP_Resource *buffer, struct PP_CompletionCallback callback)
int32_t(* RecycleBuffer )(PP_Resource audio_track, PP_Resource buffer)
void(* Close )(PP_Resource audio_track)

Field Documentation

Closes the MediaStream audio track and disconnects it from the audio source.

After calling Close(), no new buffers will be received.

Parameters:
[in]audio_trackA PP_Resource corresponding to a MediaStream audio track resource.
int32_t(* PPB_MediaStreamAudioTrack::Configure)(PP_Resource audio_track, const int32_t attrib_list[], struct PP_CompletionCallback callback)

Configures underlying buffers for incoming audio samples.

If the application doesn't want to drop samples, then the PP_MEDIASTREAMAUDIOTRACK_ATTRIB_BUFFERS should be chosen such that inter-buffer processing time variability won't overrun all the input buffers. If all buffers are filled, then samples will be dropped. The application can detect this by examining the timestamp on returned buffers. If Configure() is not called, default settings will be used. Calls to Configure while the plugin holds buffers will fail. Example usage from plugin code:

 int32_t attribs[] = {
     PP_MEDIASTREAMAUDIOTRACK_ATTRIB_BUFFERS, 4,
     PP_MEDIASTREAMAUDIOTRACK_ATTRIB_DURATION, 10,
     PP_MEDIASTREAMAUDIOTRACK_ATTRIB_NONE};
 track_if->Configure(track, attribs, callback);
Parameters:
[in]audio_trackA PP_Resource corresponding to an audio resource.
[in]attrib_listA list of attribute name-value pairs in which each attribute is immediately followed by the corresponding desired value. The list is terminated by PP_MEDIASTREAMAUDIOTRACK_ATTRIB_NONE.
[in]callbackA PP_CompletionCallback to be called upon completion of Configure().
Returns:
An int32_t containing a result code from pp_errors.h.
int32_t(* PPB_MediaStreamAudioTrack::GetAttrib)(PP_Resource audio_track, PP_MediaStreamAudioTrack_Attrib attrib, int32_t *value)

Gets attribute value for a given attribute name.

Parameters:
[in]audio_trackA PP_Resource corresponding to an audio resource.
[in]attribA PP_MediaStreamAudioTrack_Attrib for querying.
[out]valueA int32_t for storing the attribute value on success. Otherwise, the value will not be changed.
Returns:
An int32_t containing a result code from pp_errors.h.
int32_t(* PPB_MediaStreamAudioTrack::GetBuffer)(PP_Resource audio_track, PP_Resource *buffer, struct PP_CompletionCallback callback)

Gets the next audio buffer from the MediaStream track.

If internal processing is slower than the incoming buffer rate, new buffers will be dropped from the incoming stream. Once all buffers are full, audio samples will be dropped until RecycleBuffer() is called to free a slot for another buffer. If there are no audio data in the input buffer, PP_OK_COMPLETIONPENDING will be returned immediately and the callback will be called, when a new buffer of audio samples is received or an error happens.

Parameters:
[in]audio_trackA PP_Resource corresponding to an audio resource.
[out]bufferA PP_Resource corresponding to an AudioBuffer resource.
[in]callbackA PP_CompletionCallback to be called upon completion of GetBuffer().
Returns:
An int32_t containing a result code from pp_errors.h.
struct PP_Var(* PPB_MediaStreamAudioTrack::GetId)(PP_Resource audio_track) [read]

Returns the track ID of the underlying MediaStream audio track.

Parameters:
[in]audio_trackThe PP_Resource to check.
Returns:
A PP_Var containing the MediaStream track ID as a string.

Checks whether the underlying MediaStream track has ended.

Calls to GetBuffer while the track has ended are safe to make and will complete, but will fail.

Parameters:
[in]audio_trackThe PP_Resource to check.
Returns:
A PP_Bool with PP_TRUE if the given MediaStream track has ended or PP_FALSE otherwise.

Determines if a resource is a MediaStream audio track resource.

Parameters:
[in]resourceThe PP_Resource to test.
Returns:
A PP_Bool with PP_TRUE if the given resource is a Mediastream audio track resource or PP_FALSE otherwise.

Recycles a buffer returned by GetBuffer(), so the track can reuse the buffer.

And the buffer will become invalid. The caller should release all references it holds to buffer and not use it anymore.

Parameters:
[in]audio_trackA PP_Resource corresponding to an audio resource.
[in]bufferA PP_Resource corresponding to an AudioBuffer resource returned by GetBuffer().
Returns:
An int32_t containing a result code from pp_errors.h.

The documentation for this struct was generated from the following file: