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

Side by Side Diff: talk/media/devices/yuvframescapturer.cc

Issue 1362503003: Use suffixed {uint,int}{8,16,32,64}_t types. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: rebase + revert basictypes.h (to be landed separately just in case of a revert due to unexpected us… Created 5 years, 2 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 | « talk/media/devices/yuvframescapturer.h ('k') | talk/media/sctp/sctpdataengine.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * libjingle 2 * libjingle
3 * Copyright 2004--2014 Google Inc. 3 * Copyright 2004--2014 Google Inc.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met: 6 * modification, are permitted provided that the following conditions are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright notice, 8 * 1. Redistributions of source code must retain the above copyright notice,
9 * this list of conditions and the following disclaimer. 9 * this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright notice, 10 * 2. Redistributions in binary form must reproduce the above copyright notice,
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
133 } 133 }
134 134
135 CaptureState YuvFramesCapturer::Start(const VideoFormat& capture_format) { 135 CaptureState YuvFramesCapturer::Start(const VideoFormat& capture_format) {
136 if (IsRunning()) { 136 if (IsRunning()) {
137 LOG(LS_ERROR) << "Yuv Frame Generator is already running"; 137 LOG(LS_ERROR) << "Yuv Frame Generator is already running";
138 return CS_FAILED; 138 return CS_FAILED;
139 } 139 }
140 SetCaptureFormat(&capture_format); 140 SetCaptureFormat(&capture_format);
141 141
142 barcode_reference_timestamp_millis_ = 142 barcode_reference_timestamp_millis_ =
143 static_cast<int64>(rtc::Time()) * 1000; 143 static_cast<int64_t>(rtc::Time()) * 1000;
144 // Create a thread to generate frames. 144 // Create a thread to generate frames.
145 frames_generator_thread = new YuvFramesThread(this); 145 frames_generator_thread = new YuvFramesThread(this);
146 bool ret = frames_generator_thread->Start(); 146 bool ret = frames_generator_thread->Start();
147 if (ret) { 147 if (ret) {
148 LOG(LS_INFO) << "Yuv Frame Generator started"; 148 LOG(LS_INFO) << "Yuv Frame Generator started";
149 return CS_RUNNING; 149 return CS_RUNNING;
150 } else { 150 } else {
151 LOG(LS_ERROR) << "Yuv Frame Generator failed to start"; 151 LOG(LS_ERROR) << "Yuv Frame Generator failed to start";
152 return CS_FAILED; 152 return CS_FAILED;
153 } 153 }
154 } 154 }
155 155
156 bool YuvFramesCapturer::IsRunning() { 156 bool YuvFramesCapturer::IsRunning() {
157 return frames_generator_thread && !frames_generator_thread->Finished(); 157 return frames_generator_thread && !frames_generator_thread->Finished();
158 } 158 }
159 159
160 void YuvFramesCapturer::Stop() { 160 void YuvFramesCapturer::Stop() {
161 if (frames_generator_thread) { 161 if (frames_generator_thread) {
162 frames_generator_thread->Stop(); 162 frames_generator_thread->Stop();
163 frames_generator_thread = NULL; 163 frames_generator_thread = NULL;
164 LOG(LS_INFO) << "Yuv Frame Generator stopped"; 164 LOG(LS_INFO) << "Yuv Frame Generator stopped";
165 } 165 }
166 SetCaptureFormat(NULL); 166 SetCaptureFormat(NULL);
167 } 167 }
168 168
169 bool YuvFramesCapturer::GetPreferredFourccs(std::vector<uint32>* fourccs) { 169 bool YuvFramesCapturer::GetPreferredFourccs(std::vector<uint32_t>* fourccs) {
170 if (!fourccs) { 170 if (!fourccs) {
171 return false; 171 return false;
172 } 172 }
173 fourccs->push_back(GetSupportedFormats()->at(0).fourcc); 173 fourccs->push_back(GetSupportedFormats()->at(0).fourcc);
174 return true; 174 return true;
175 } 175 }
176 176
177 // Executed in the context of YuvFramesThread. 177 // Executed in the context of YuvFramesThread.
178 void YuvFramesCapturer::ReadFrame(bool first_frame) { 178 void YuvFramesCapturer::ReadFrame(bool first_frame) {
179 // 1. Signal the previously read frame to downstream. 179 // 1. Signal the previously read frame to downstream.
180 if (!first_frame) { 180 if (!first_frame) {
181 SignalFrameCaptured(this, &captured_frame_); 181 SignalFrameCaptured(this, &captured_frame_);
182 } 182 }
183 uint8* buffer = new uint8[frame_data_size_]; 183 uint8_t* buffer = new uint8_t[frame_data_size_];
184 frame_generator_->GenerateNextFrame(buffer, GetBarcodeValue()); 184 frame_generator_->GenerateNextFrame(buffer, GetBarcodeValue());
185 frame_index_++; 185 frame_index_++;
186 memmove(captured_frame_.data, buffer, frame_data_size_); 186 memmove(captured_frame_.data, buffer, frame_data_size_);
187 delete[] buffer; 187 delete[] buffer;
188 } 188 }
189 189
190 190 int32_t YuvFramesCapturer::GetBarcodeValue() {
191 int32 YuvFramesCapturer::GetBarcodeValue() {
192 if (barcode_reference_timestamp_millis_ == -1 || 191 if (barcode_reference_timestamp_millis_ == -1 ||
193 frame_index_ % barcode_interval_ != 0) { 192 frame_index_ % barcode_interval_ != 0) {
194 return -1; 193 return -1;
195 } 194 }
196 int64 now_millis = static_cast<int64>(rtc::Time()) * 1000; 195 int64_t now_millis = static_cast<int64_t>(rtc::Time()) * 1000;
197 return static_cast<int32>(now_millis - barcode_reference_timestamp_millis_); 196 return static_cast<int32_t>(now_millis - barcode_reference_timestamp_millis_);
198 } 197 }
199 198
200 } // namespace cricket 199 } // namespace cricket
OLDNEW
« no previous file with comments | « talk/media/devices/yuvframescapturer.h ('k') | talk/media/sctp/sctpdataengine.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698