SkyWay Linux SDK
読み取り中…
検索中…
一致する文字列を見つけられません
remote_audio_stream.hpp
1#ifndef SKYWAY_MEDIA_STREAM_INTERFACE_REMOTE_REMOTE_AUDIO_STREAM_HPP_
2#define SKYWAY_MEDIA_STREAM_INTERFACE_REMOTE_REMOTE_AUDIO_STREAM_HPP_
3
4#include <mutex>
5#include <unordered_set>
6
7#include <api/media_stream_interface.h>
8#include <skyway/core/stream/remote/audio_stream.hpp>
9
10#include "skyway/media/audio/interface/audio_frame.hpp"
11#include "skyway/media/stream/interface/remote/remote_stream.hpp"
12
13namespace skyway {
14namespace media {
15namespace stream {
16namespace interface {
17namespace remote {
18
20public:
21 class Listener {
22 public:
23 virtual ~Listener() = default;
24
29 virtual void OnTrackData(const audio::interface::AudioFrame& frame) = 0;
30 };
31
32 virtual ~RemoteAudioStream() = default;
33
36 virtual void RegisterListener(std::shared_ptr<Listener> listener) = 0;
37
40 virtual void UnregisterListener(std::shared_ptr<Listener> listener) = 0;
41
42 virtual rtc::scoped_refptr<webrtc::MediaStreamTrackInterface> Track() const = 0;
43};
44
45} // namespace remote
46} // namespace interface
47} // namespace stream
48} // namespace media
49} // namespace skyway
50
51#endif // SKYWAY_MEDIA_STREAM_INTERFACE_REMOTE_REMOTE_AUDIO_STREAM_HPP_
virtual void OnTrackData(const audio::interface::AudioFrame &frame)=0
PCM音声データを受け取ります。
virtual void UnregisterListener(std::shared_ptr< Listener > listener)=0
イベントリスナーの登録を解除します。
virtual void RegisterListener(std::shared_ptr< Listener > listener)=0
RemoteAudioStream::Listenerを登録します。
オーディオフレーム
Definition audio_frame.hpp:17