# OHOS::Media::StreamSource ## **Overview** **Related Modules:** [MultiMedia\_MediaCommon](MultiMedia_MediaCommon.md) **Description:** Provides functions related to the stream source for upper-layer applications. After the **SetSource** function is called, the player invokes [OnBufferAvailable](MultiMedia_MediaCommon.md#gaaebd4fe9df44b434f410aec32cf23467) to notify your application of the buffer memory block that can be filled with data. The player can invoke [SetStreamCallback](MultiMedia_MediaCommon.md#ga078516891396a86226c945e02c79c1f5) to register a callback for your application. For example, the **GetBuffer** callback obtains the address of the buffer block and sends the filled buffer memory block to the player. The buffer memory block is allocated and processed on the player. **[StreamSource](OHOS-Media-StreamSource.md)**is available only for the media source of the **SOURCE\_TYPE\_STREAM** type. For details, see [SourceType](Format.md#ga3ae727773c367ac1041d72ac770a0ab1). **Since:** 1.0 **Version:** 1.0 ## **Summary** ## Public Member Functions
OnBufferAvailable (size_t index, size_t offset, size_t size)=0 |
Notifies your application of the information about the buffer memory block that can be filled with data. |
SetStreamCallback (const std::shared_ptr< StreamCallback > &callback)=0 |