Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(303)

Side by Side Diff: webrtc/voice_engine/voe_video_sync_impl.cc

Issue 2672583002: Remove VoEVideoSync interface. (Closed)
Patch Set: rebase Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « webrtc/voice_engine/voe_video_sync_impl.h ('k') | webrtc/voice_engine/voice_engine_impl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3 *
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
11 #include "webrtc/voice_engine/voe_video_sync_impl.h"
12
13 #include "webrtc/system_wrappers/include/trace.h"
14 #include "webrtc/voice_engine/channel.h"
15 #include "webrtc/voice_engine/include/voe_errors.h"
16 #include "webrtc/voice_engine/voice_engine_impl.h"
17
18 namespace webrtc {
19
20 VoEVideoSync* VoEVideoSync::GetInterface(VoiceEngine* voiceEngine) {
21 if (NULL == voiceEngine) {
22 return NULL;
23 }
24 VoiceEngineImpl* s = static_cast<VoiceEngineImpl*>(voiceEngine);
25 s->AddRef();
26 return s;
27 }
28
29 VoEVideoSyncImpl::VoEVideoSyncImpl(voe::SharedData* shared) : _shared(shared) {
30 WEBRTC_TRACE(kTraceMemory, kTraceVoice, VoEId(_shared->instance_id(), -1),
31 "VoEVideoSyncImpl::VoEVideoSyncImpl() - ctor");
32 }
33
34 VoEVideoSyncImpl::~VoEVideoSyncImpl() {
35 WEBRTC_TRACE(kTraceMemory, kTraceVoice, VoEId(_shared->instance_id(), -1),
36 "VoEVideoSyncImpl::~VoEVideoSyncImpl() - dtor");
37 }
38
39 int VoEVideoSyncImpl::GetPlayoutTimestamp(int channel,
40 unsigned int& timestamp) {
41 if (!_shared->statistics().Initialized()) {
42 _shared->SetLastError(VE_NOT_INITED, kTraceError);
43 return -1;
44 }
45 voe::ChannelOwner ch = _shared->channel_manager().GetChannel(channel);
46 voe::Channel* channel_ptr = ch.channel();
47 if (channel_ptr == NULL) {
48 _shared->SetLastError(VE_CHANNEL_NOT_VALID, kTraceError,
49 "GetPlayoutTimestamp() failed to locate channel");
50 return -1;
51 }
52 return channel_ptr->GetPlayoutTimestamp(timestamp);
53 }
54
55 int VoEVideoSyncImpl::SetInitTimestamp(int channel, unsigned int timestamp) {
56 WEBRTC_TRACE(kTraceApiCall, kTraceVoice, VoEId(_shared->instance_id(), -1),
57 "SetInitTimestamp(channel=%d, timestamp=%lu)", channel,
58 timestamp);
59
60 if (!_shared->statistics().Initialized()) {
61 _shared->SetLastError(VE_NOT_INITED, kTraceError);
62 return -1;
63 }
64 voe::ChannelOwner ch = _shared->channel_manager().GetChannel(channel);
65 voe::Channel* channelPtr = ch.channel();
66 if (channelPtr == NULL) {
67 _shared->SetLastError(VE_CHANNEL_NOT_VALID, kTraceError,
68 "SetInitTimestamp() failed to locate channel");
69 return -1;
70 }
71 return channelPtr->SetInitTimestamp(timestamp);
72 }
73
74 int VoEVideoSyncImpl::SetInitSequenceNumber(int channel, short sequenceNumber) {
75 WEBRTC_TRACE(kTraceApiCall, kTraceVoice, VoEId(_shared->instance_id(), -1),
76 "SetInitSequenceNumber(channel=%d, sequenceNumber=%hd)", channel,
77 sequenceNumber);
78
79 if (!_shared->statistics().Initialized()) {
80 _shared->SetLastError(VE_NOT_INITED, kTraceError);
81 return -1;
82 }
83 voe::ChannelOwner ch = _shared->channel_manager().GetChannel(channel);
84 voe::Channel* channelPtr = ch.channel();
85 if (channelPtr == NULL) {
86 _shared->SetLastError(VE_CHANNEL_NOT_VALID, kTraceError,
87 "SetInitSequenceNumber() failed to locate channel");
88 return -1;
89 }
90 return channelPtr->SetInitSequenceNumber(sequenceNumber);
91 }
92
93 int VoEVideoSyncImpl::SetMinimumPlayoutDelay(int channel, int delayMs) {
94 WEBRTC_TRACE(kTraceApiCall, kTraceVoice, VoEId(_shared->instance_id(), -1),
95 "SetMinimumPlayoutDelay(channel=%d, delayMs=%d)", channel,
96 delayMs);
97
98 if (!_shared->statistics().Initialized()) {
99 _shared->SetLastError(VE_NOT_INITED, kTraceError);
100 return -1;
101 }
102 voe::ChannelOwner ch = _shared->channel_manager().GetChannel(channel);
103 voe::Channel* channelPtr = ch.channel();
104 if (channelPtr == NULL) {
105 _shared->SetLastError(VE_CHANNEL_NOT_VALID, kTraceError,
106 "SetMinimumPlayoutDelay() failed to locate channel");
107 return -1;
108 }
109 return channelPtr->SetMinimumPlayoutDelay(delayMs);
110 }
111
112 int VoEVideoSyncImpl::GetDelayEstimate(int channel,
113 int* jitter_buffer_delay_ms,
114 int* playout_buffer_delay_ms) {
115 if (!_shared->statistics().Initialized()) {
116 _shared->SetLastError(VE_NOT_INITED, kTraceError);
117 return -1;
118 }
119 voe::ChannelOwner ch = _shared->channel_manager().GetChannel(channel);
120 voe::Channel* channelPtr = ch.channel();
121 if (channelPtr == NULL) {
122 _shared->SetLastError(VE_CHANNEL_NOT_VALID, kTraceError,
123 "GetDelayEstimate() failed to locate channel");
124 return -1;
125 }
126 if (!channelPtr->GetDelayEstimate(jitter_buffer_delay_ms,
127 playout_buffer_delay_ms)) {
128 return -1;
129 }
130 return 0;
131 }
132
133 int VoEVideoSyncImpl::GetPlayoutBufferSize(int& bufferMs) {
134 if (!_shared->statistics().Initialized()) {
135 _shared->SetLastError(VE_NOT_INITED, kTraceError);
136 return -1;
137 }
138 AudioDeviceModule::BufferType type(AudioDeviceModule::kFixedBufferSize);
139 uint16_t sizeMS(0);
140 if (_shared->audio_device()->PlayoutBuffer(&type, &sizeMS) != 0) {
141 _shared->SetLastError(VE_AUDIO_DEVICE_MODULE_ERROR, kTraceError,
142 "GetPlayoutBufferSize() failed to read buffer size");
143 return -1;
144 }
145 bufferMs = sizeMS;
146 return 0;
147 }
148
149 int VoEVideoSyncImpl::GetRtpRtcp(int channel,
150 RtpRtcp** rtpRtcpModule,
151 RtpReceiver** rtp_receiver) {
152 if (!_shared->statistics().Initialized()) {
153 _shared->SetLastError(VE_NOT_INITED, kTraceError);
154 return -1;
155 }
156 voe::ChannelOwner ch = _shared->channel_manager().GetChannel(channel);
157 voe::Channel* channelPtr = ch.channel();
158 if (channelPtr == NULL) {
159 _shared->SetLastError(VE_CHANNEL_NOT_VALID, kTraceError,
160 "GetPlayoutTimestamp() failed to locate channel");
161 return -1;
162 }
163 return channelPtr->GetRtpRtcp(rtpRtcpModule, rtp_receiver);
164 }
165
166 int VoEVideoSyncImpl::GetLeastRequiredDelayMs(int channel) const {
167 if (!_shared->statistics().Initialized()) {
168 _shared->SetLastError(VE_NOT_INITED, kTraceError);
169 return -1;
170 }
171 voe::ChannelOwner ch = _shared->channel_manager().GetChannel(channel);
172 voe::Channel* channel_ptr = ch.channel();
173 if (channel_ptr == NULL) {
174 _shared->SetLastError(VE_CHANNEL_NOT_VALID, kTraceError,
175 "GetLeastRequiredDelayMs() failed to locate channel");
176 return -1;
177 }
178 return channel_ptr->LeastRequiredDelayMs();
179 }
180
181 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/voice_engine/voe_video_sync_impl.h ('k') | webrtc/voice_engine/voice_engine_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698