1 /*
2 * Copyright (C) 2024 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16 #include "media_sync_center_mock.h"
17
18 namespace OHOS {
19 namespace Media {
20 namespace Test {
Reset()21 Status MockMediaSyncCenter::Reset()
22 {
23 auto result = returnStatusQueue_.front();
24 returnInt64Queue_.pop();
25 return result;
26 }
27
AddSynchronizer(Pipeline::IMediaSynchronizer * syncer)28 void MockMediaSyncCenter::AddSynchronizer(Pipeline::IMediaSynchronizer* syncer)
29 {
30 (void)syncer;
31 synchronizerAdded_ = true;
32 }
33
RemoveSynchronizer(Pipeline::IMediaSynchronizer * syncer)34 void MockMediaSyncCenter::RemoveSynchronizer(Pipeline::IMediaSynchronizer* syncer)
35 {
36 (void)syncer;
37 }
38
UpdateTimeAnchor(int64_t clockTime,int64_t delayTime,IMediaTime iMediaTime,Pipeline::IMediaSynchronizer * supplier)39 bool MockMediaSyncCenter::UpdateTimeAnchor(int64_t clockTime, int64_t delayTime, IMediaTime iMediaTime,
40 Pipeline::IMediaSynchronizer* supplier)
41 {
42 lastTimeAnchorClock_ = clockTime;
43 (void)delayTime;
44 (void)iMediaTime;
45 (void)supplier;
46 updateTimeAnchorTimes_++;
47 return returnBool_;
48 }
49
GetMediaTimeNow()50 int64_t MockMediaSyncCenter::GetMediaTimeNow()
51 {
52 auto result = returnInt64Queue_.front();
53 returnInt64Queue_.pop();
54 return result;
55 }
56
GetClockTimeNow()57 int64_t MockMediaSyncCenter::GetClockTimeNow()
58 {
59 auto result = returnInt64Queue_.front();
60 returnInt64Queue_.pop();
61 return result;
62 }
63
GetAnchoredClockTime(int64_t mediaTime)64 int64_t MockMediaSyncCenter::GetAnchoredClockTime(int64_t mediaTime)
65 {
66 (void)mediaTime;
67 auto result = returnInt64Queue_.front();
68 returnInt64Queue_.pop();
69 return result;
70 }
71
ReportPrerolled(Pipeline::IMediaSynchronizer * supplier)72 void MockMediaSyncCenter::ReportPrerolled(Pipeline::IMediaSynchronizer* supplier)
73 {
74 (void)supplier;
75 }
76
ReportEos(Pipeline::IMediaSynchronizer * supplier)77 void MockMediaSyncCenter::ReportEos(Pipeline::IMediaSynchronizer* supplier)
78 {
79 (void)supplier;
80 }
81
SetMediaTimeRangeStart(int64_t startMediaTime,int32_t trackId,Pipeline::IMediaSynchronizer * supplier)82 void MockMediaSyncCenter::SetMediaTimeRangeStart(int64_t startMediaTime, int32_t trackId,
83 Pipeline::IMediaSynchronizer* supplier)
84 {
85 (void)startMediaTime;
86 (void)trackId;
87 (void)supplier;
88 setMediaRangeStartTime_++;
89 }
90
SetMediaTimeRangeEnd(int64_t endMediaTime,int32_t trackId,Pipeline::IMediaSynchronizer * supplier)91 void MockMediaSyncCenter::SetMediaTimeRangeEnd(int64_t endMediaTime, int32_t trackId,
92 Pipeline::IMediaSynchronizer* supplier)
93 {
94 mediaRangeEndValue_ = endMediaTime;
95 (void)trackId;
96 (void)supplier;
97 setMediaRangeEndTime_++;
98 }
99
GetSeekTime()100 int64_t MockMediaSyncCenter::GetSeekTime()
101 {
102 auto result = returnInt64Queue_.front();
103 returnInt64Queue_.pop();
104 return result;
105 }
106
SetPlaybackRate(float rate)107 Status MockMediaSyncCenter::SetPlaybackRate(float rate)
108 {
109 (void)rate;
110 auto result = returnStatusQueue_.front();
111 returnStatusQueue_.pop();
112 return result;
113 }
114
GetPlaybackRate()115 float MockMediaSyncCenter::GetPlaybackRate()
116 {
117 return returnFloat_;
118 }
119
SetMediaStartPts(int64_t startPts)120 void MockMediaSyncCenter::SetMediaStartPts(int64_t startPts)
121 {
122 (void)startPts;
123 }
124
GetMediaStartPts()125 int64_t MockMediaSyncCenter::GetMediaStartPts()
126 {
127 startPtsGetTime_++;
128 return GetRetInt64Value();
129 }
130
GetRetInt64Value()131 int64_t MockMediaSyncCenter::GetRetInt64Value()
132 {
133 if (returnInt64Queue_.empty()) {
134 return 0;
135 }
136 auto result = returnInt64Queue_.front();
137 returnInt64Queue_.pop();
138 return result;
139 }
140
SetLastVideoBufferPts(int64_t bufferPts)141 void MockMediaSyncCenter::SetLastVideoBufferPts(int64_t bufferPts)
142 {
143 (void)bufferPts;
144 setLastVideoBufferPtsTimes_++;
145 }
146 } // namespace Test
147 } // namespace Media
148 } // namespace OHOS