Loading camera/ProCamera.cpp +6 −3 Original line number Diff line number Diff line Loading @@ -249,11 +249,14 @@ status_t ProCamera::createStreamCpu(int width, int height, int format, sp <IProCameraUser> c = mCamera; if (c == 0) return NO_INIT; sp<BufferQueue> bq = new BufferQueue(); sp<CpuConsumer> cc = new CpuConsumer(bq, heapCount/*, synchronousMode*/); sp<IGraphicBufferProducer> producer; sp<IGraphicBufferConsumer> consumer; BufferQueue::createBufferQueue(&producer, &consumer); sp<CpuConsumer> cc = new CpuConsumer(consumer, heapCount /*, synchronousMode*/); cc->setName(String8("ProCamera::mCpuConsumer")); sp<Surface> stc = new Surface(bq); sp<Surface> stc = new Surface(producer); status_t s = createStream(width, height, format, stc->getIGraphicBufferProducer(), Loading services/camera/libcameraservice/api1/client2/CallbackProcessor.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -110,11 +110,13 @@ status_t CallbackProcessor::updateStream(const Parameters ¶ms) { if (!mCallbackToApp && mCallbackConsumer == 0) { // Create CPU buffer queue endpoint, since app hasn't given us one // Make it async to avoid disconnect deadlocks sp<BufferQueue> bq = new BufferQueue(); mCallbackConsumer = new CpuConsumer(bq, kCallbackHeapCount); sp<IGraphicBufferProducer> producer; sp<IGraphicBufferConsumer> consumer; BufferQueue::createBufferQueue(&producer, &consumer); mCallbackConsumer = new CpuConsumer(consumer, kCallbackHeapCount); mCallbackConsumer->setFrameAvailableListener(this); mCallbackConsumer->setName(String8("Camera2Client::CallbackConsumer")); mCallbackWindow = new Surface(bq); mCallbackWindow = new Surface(producer); } if (mCallbackStreamId != NO_STREAM) { Loading services/camera/libcameraservice/api1/client2/JpegProcessor.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -83,11 +83,13 @@ status_t JpegProcessor::updateStream(const Parameters ¶ms) { if (mCaptureConsumer == 0) { // Create CPU buffer queue endpoint sp<BufferQueue> bq = new BufferQueue(); mCaptureConsumer = new CpuConsumer(bq, 1); sp<IGraphicBufferProducer> producer; sp<IGraphicBufferConsumer> consumer; BufferQueue::createBufferQueue(&producer, &consumer); mCaptureConsumer = new CpuConsumer(consumer, 1); mCaptureConsumer->setFrameAvailableListener(this); mCaptureConsumer->setName(String8("Camera2Client::CaptureConsumer")); mCaptureWindow = new Surface(bq); mCaptureWindow = new Surface(producer); // Create memory for API consumption mCaptureHeap = new MemoryHeapBase(maxJpegSize.data.i32[0], 0, "Camera2Client::CaptureHeap"); Loading services/camera/libcameraservice/api1/client2/StreamingProcessor.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -319,13 +319,15 @@ status_t StreamingProcessor::updateRecordingStream(const Parameters ¶ms) { // Create CPU buffer queue endpoint. We need one more buffer here so that we can // always acquire and free a buffer when the heap is full; otherwise the consumer // will have buffers in flight we'll never clear out. sp<BufferQueue> bq = new BufferQueue(); mRecordingConsumer = new BufferItemConsumer(bq, sp<IGraphicBufferProducer> producer; sp<IGraphicBufferConsumer> consumer; BufferQueue::createBufferQueue(&producer, &consumer); mRecordingConsumer = new BufferItemConsumer(consumer, GRALLOC_USAGE_HW_VIDEO_ENCODER, mRecordingHeapCount + 1); mRecordingConsumer->setFrameAvailableListener(this); mRecordingConsumer->setName(String8("Camera2-RecordingConsumer")); mRecordingWindow = new Surface(bq); mRecordingWindow = new Surface(producer); newConsumer = true; // Allocate memory later, since we don't know buffer size until receipt } Loading services/camera/libcameraservice/api1/client2/ZslProcessor.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -128,13 +128,15 @@ status_t ZslProcessor::updateStream(const Parameters ¶ms) { if (mZslConsumer == 0) { // Create CPU buffer queue endpoint sp<BufferQueue> bq = new BufferQueue(); mZslConsumer = new BufferItemConsumer(bq, sp<IGraphicBufferProducer> producer; sp<IGraphicBufferConsumer> consumer; BufferQueue::createBufferQueue(&producer, &consumer); mZslConsumer = new BufferItemConsumer(consumer, GRALLOC_USAGE_HW_CAMERA_ZSL, kZslBufferDepth); mZslConsumer->setFrameAvailableListener(this); mZslConsumer->setName(String8("Camera2Client::ZslConsumer")); mZslWindow = new Surface(bq); mZslWindow = new Surface(producer); } if (mZslStreamId != NO_STREAM) { Loading Loading
camera/ProCamera.cpp +6 −3 Original line number Diff line number Diff line Loading @@ -249,11 +249,14 @@ status_t ProCamera::createStreamCpu(int width, int height, int format, sp <IProCameraUser> c = mCamera; if (c == 0) return NO_INIT; sp<BufferQueue> bq = new BufferQueue(); sp<CpuConsumer> cc = new CpuConsumer(bq, heapCount/*, synchronousMode*/); sp<IGraphicBufferProducer> producer; sp<IGraphicBufferConsumer> consumer; BufferQueue::createBufferQueue(&producer, &consumer); sp<CpuConsumer> cc = new CpuConsumer(consumer, heapCount /*, synchronousMode*/); cc->setName(String8("ProCamera::mCpuConsumer")); sp<Surface> stc = new Surface(bq); sp<Surface> stc = new Surface(producer); status_t s = createStream(width, height, format, stc->getIGraphicBufferProducer(), Loading
services/camera/libcameraservice/api1/client2/CallbackProcessor.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -110,11 +110,13 @@ status_t CallbackProcessor::updateStream(const Parameters ¶ms) { if (!mCallbackToApp && mCallbackConsumer == 0) { // Create CPU buffer queue endpoint, since app hasn't given us one // Make it async to avoid disconnect deadlocks sp<BufferQueue> bq = new BufferQueue(); mCallbackConsumer = new CpuConsumer(bq, kCallbackHeapCount); sp<IGraphicBufferProducer> producer; sp<IGraphicBufferConsumer> consumer; BufferQueue::createBufferQueue(&producer, &consumer); mCallbackConsumer = new CpuConsumer(consumer, kCallbackHeapCount); mCallbackConsumer->setFrameAvailableListener(this); mCallbackConsumer->setName(String8("Camera2Client::CallbackConsumer")); mCallbackWindow = new Surface(bq); mCallbackWindow = new Surface(producer); } if (mCallbackStreamId != NO_STREAM) { Loading
services/camera/libcameraservice/api1/client2/JpegProcessor.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -83,11 +83,13 @@ status_t JpegProcessor::updateStream(const Parameters ¶ms) { if (mCaptureConsumer == 0) { // Create CPU buffer queue endpoint sp<BufferQueue> bq = new BufferQueue(); mCaptureConsumer = new CpuConsumer(bq, 1); sp<IGraphicBufferProducer> producer; sp<IGraphicBufferConsumer> consumer; BufferQueue::createBufferQueue(&producer, &consumer); mCaptureConsumer = new CpuConsumer(consumer, 1); mCaptureConsumer->setFrameAvailableListener(this); mCaptureConsumer->setName(String8("Camera2Client::CaptureConsumer")); mCaptureWindow = new Surface(bq); mCaptureWindow = new Surface(producer); // Create memory for API consumption mCaptureHeap = new MemoryHeapBase(maxJpegSize.data.i32[0], 0, "Camera2Client::CaptureHeap"); Loading
services/camera/libcameraservice/api1/client2/StreamingProcessor.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -319,13 +319,15 @@ status_t StreamingProcessor::updateRecordingStream(const Parameters ¶ms) { // Create CPU buffer queue endpoint. We need one more buffer here so that we can // always acquire and free a buffer when the heap is full; otherwise the consumer // will have buffers in flight we'll never clear out. sp<BufferQueue> bq = new BufferQueue(); mRecordingConsumer = new BufferItemConsumer(bq, sp<IGraphicBufferProducer> producer; sp<IGraphicBufferConsumer> consumer; BufferQueue::createBufferQueue(&producer, &consumer); mRecordingConsumer = new BufferItemConsumer(consumer, GRALLOC_USAGE_HW_VIDEO_ENCODER, mRecordingHeapCount + 1); mRecordingConsumer->setFrameAvailableListener(this); mRecordingConsumer->setName(String8("Camera2-RecordingConsumer")); mRecordingWindow = new Surface(bq); mRecordingWindow = new Surface(producer); newConsumer = true; // Allocate memory later, since we don't know buffer size until receipt } Loading
services/camera/libcameraservice/api1/client2/ZslProcessor.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -128,13 +128,15 @@ status_t ZslProcessor::updateStream(const Parameters ¶ms) { if (mZslConsumer == 0) { // Create CPU buffer queue endpoint sp<BufferQueue> bq = new BufferQueue(); mZslConsumer = new BufferItemConsumer(bq, sp<IGraphicBufferProducer> producer; sp<IGraphicBufferConsumer> consumer; BufferQueue::createBufferQueue(&producer, &consumer); mZslConsumer = new BufferItemConsumer(consumer, GRALLOC_USAGE_HW_CAMERA_ZSL, kZslBufferDepth); mZslConsumer->setFrameAvailableListener(this); mZslConsumer->setName(String8("Camera2Client::ZslConsumer")); mZslWindow = new Surface(bq); mZslWindow = new Surface(producer); } if (mZslStreamId != NO_STREAM) { Loading