Agora C++ API Reference for All Platforms
Loading...
Searching...
No Matches
agora_video_frame_i.h
1//
2// Agora SDK
3//
4// Copyright (c) 2021 Agora.io. All rights reserved.
5//
6
7#pragma once
8
9#include "NGIAgoraVideoFrame.h"
10#include "main/core/video/base/video_frame/video_frame_buffer.h"
11#include "main/core/video/base/video_frame/video_rotation.h"
12
13namespace agora {
14namespace rtc {
15
16class IVideoFrameEx : public IVideoFrame {
17 public:
18 virtual ::rtc::scoped_refptr<webrtc::VideoFrameBuffer> video_frame_buffer() = 0;
19 virtual uint32_t timestamp() const = 0;
20 virtual int64_t render_time_ms() const = 0;
21 virtual webrtc::VideoRotation rotation() const = 0;
22};
23
25 public:
28 const ::rtc::scoped_refptr<webrtc::VideoFrameBuffer>& internal_buffer,
29 int64_t timestamp,
30 int64_t ntp_timestamp,
31 webrtc::VideoRotation rotation) = 0;
32};
33
34} // namespace rtc
35} // namespace agora
Definition AgoraRefPtr.h:44
Definition agora_video_frame_i.h:16
virtual int64_t render_time_ms() const =0
virtual webrtc::VideoRotation rotation() const =0
virtual uint32_t timestamp() const =0
virtual ::rtc::scoped_refptr< webrtc::VideoFrameBuffer > video_frame_buffer()=0
Definition NGIAgoraVideoFrame.h:148
Definition agora_video_frame_i.h:24
virtual agora::agora_refptr< IVideoFrame > createVideoFrame(const ::rtc::scoped_refptr< webrtc::VideoFrameBuffer > &internal_buffer, int64_t timestamp, int64_t ntp_timestamp, webrtc::VideoRotation rotation)=0
Definition NGIAgoraVideoFrame.h:195
virtual agora::agora_refptr< IVideoFrame > createVideoFrame(const VideoFrameData &data, const VideoFrameMetaDataType *metatypes=NULL, int count=0)=0
Definition AgoraExtensions.h:5
Definition AgoraAtomicOps.h:21