!116 添加hitrace打点

Merge pull request !116 from chen0088/master
This commit is contained in:
openharmony_ci
2022-06-15 04:34:33 +00:00
committed by Gitee
15 changed files with 164 additions and 10 deletions
+2
View File
@@ -43,6 +43,7 @@ ohos_shared_library("distributed_camera_utils") {
"src/utils/data_buffer.cpp",
"src/utils/dcamera_buffer_handle.cpp",
"src/utils/dcamera_hisysevent_adapter.cpp",
"src/utils/dcamera_hitrace_adapter.cpp",
"src/utils/dcamera_sa_process_state.cpp",
"src/utils/dcamera_utils_tools.cpp",
]
@@ -62,6 +63,7 @@ ohos_shared_library("distributed_camera_utils") {
"dsoftbus_standard:softbus_client",
"graphic_chipsetsdk:buffer_handle",
"hisysevent_native:libhisysevent",
"hitrace_native:hitrace_meter",
"hiviewdfx_hilog_native:libhilog",
]
@@ -0,0 +1,45 @@
/*
* Copyright (c) 2022 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef OHOS_DCAMERA_HITRACE_ADAPTER_H
#define OHOS_DCAMERA_HITRACE_ADAPTER_H
#include <string>
#include "hitrace_meter.h"
#define DCAMERA_SYNC_TRACE HITRACE_METER(DCAMERA_HITRACE_LABEL)
namespace OHOS {
namespace DistributedHardware {
constexpr uint64_t DCAMERA_HITRACE_LABEL = HITRACE_TAG_DISTRIBUTED_CAMERA;
const std::string DCAMERA_OPEN_CHANNEL_CONTROL = "DCAMERA_OPEN_CHANNEL_CONTROL";
const std::string DCAMERA_OPEN_DATA_CONTINUE = "DCAMERA_OPEN_DATA_CONTINUE";
const std::string DCAMERA_OPEN_DATA_SNAPSHOT = "DCAMERA_OPEN_DATA_SNAPSHOT";
const std::string DCAMERA_CONTINUE_FIRST_FRAME = "DCAMERA_CONTINUE_FIRST_FRAME";
const std::string DCAMERA_SNAPSHOT_FIRST_FRAME = "DCAMERA_SNAPSHOT_FIRST_FRAME";
enum DcameraTaskId {
DCAMERA_OPEN_CHANNEL_TASKID = 0,
DCAMERA_OPEN_DATA_CONTINUE_TASKID = 1,
DCAMERA_OPEN_DATA_SNAPSHOT_TASKID = 2,
DCAMERA_CONTINUE_FIRST_FRAME_TASKID = 3,
DCAMERA_SNAPSHOT_FIRST_FRAME_TASKID = 4,
};
void DcameraStartAsyncTrace(const std::string& str, int32_t taskId);
void DcameraFinishAsyncTrace(const std::string& str, int32_t taskId);
} // namespace DistributedHardware
} // namespace OHOS
#endif // OHOS_DCAMERA_HITRACE_ADAPTER_H
@@ -0,0 +1,31 @@
/*
* Copyright (c) 2022 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include "dcamera_hitrace_adapter.h"
#include "distributed_hardware_log.h"
namespace OHOS {
namespace DistributedHardware {
void DcameraStartAsyncTrace(const std::string& str, int32_t taskId)
{
StartAsyncTrace(DCAMERA_HITRACE_LABEL, str, taskId, -1);
}
void DcameraFinishAsyncTrace(const std::string& str, int32_t taskId)
{
FinishAsyncTrace(DCAMERA_HITRACE_LABEL, str, taskId);
}
} // namespace DistributedHardware
} // namespace OHOS
@@ -105,6 +105,7 @@ ohos_shared_library("distributed_camera_source") {
"device_driver_framework:libhdi",
"distributed_camera_device_driver_interface:libdistributed_camera_provider_proxy_1.0",
"eventhandler:libeventhandler",
"hitrace_native:hitrace_meter",
"hiviewdfx_hilog_native:libhilog",
"ipc:ipc_core",
"safwk:system_ability_fwk",
@@ -75,6 +75,7 @@ private:
void NotifyRegisterResult(DCAMERA_EVENT eventType, DCameraSourceEvent& event, int32_t result);
void NotifyUnregisterResult(DCAMERA_EVENT eventType, DCameraSourceEvent& event, int32_t result);
void NotifyHalResult(DCAMERA_EVENT eventType, DCameraSourceEvent& event, int32_t result);
void HitraceAndHisyseventImpl(std::vector<std::shared_ptr<DCCaptureInfo>>& captureInfos);
private:
std::string devId_;
@@ -48,6 +48,7 @@ private:
std::string devId_;
std::string dhId_;
DCStreamType streamType_;
bool isFirstContStream_;
};
} // namespace DistributedHardware
} // namespace OHOS
@@ -48,6 +48,9 @@ public:
void OnSessionError(DCStreamType streamType, int32_t eventType, int32_t eventReason, std::string detail);
void OnDataReceived(DCStreamType streamType, std::vector<std::shared_ptr<DataBuffer>>& buffers);
private:
void FinshFrameAsyncTrace(DCStreamType streamType);
private:
std::map<DCStreamType, std::shared_ptr<ICameraChannel>> channels_;
std::map<DCStreamType, std::shared_ptr<ICameraChannelListener>> listeners_;
@@ -25,6 +25,7 @@
#include "anonymous_string.h"
#include "dcamera_hdf_operate.h"
#include "dcamera_hisysevent_adapter.h"
#include "dcamera_hitrace_adapter.h"
#include "dcamera_service_state_listener.h"
#include "dcamera_source_service_ipc.h"
#include "distributed_camera_errno.h"
@@ -194,6 +195,7 @@ int32_t DistributedCameraSourceService::DCameraNotify(const std::string& devId,
int32_t DistributedCameraSourceService::LoadDCameraHDF()
{
DCAMERA_SYNC_TRACE;
DHLOGI("load hdf driver start");
int32_t ret = DCameraHdfOperate::GetInstance().LoadDcameraHDFImpl();
if (ret != DCAMERA_OK) {
@@ -17,6 +17,7 @@
#include "anonymous_string.h"
#include "dcamera_hisysevent_adapter.h"
#include "dcamera_hitrace_adapter.h"
#include "distributed_camera_constants.h"
#include "distributed_camera_errno.h"
#include "distributed_hardware_log.h"
@@ -214,6 +215,7 @@ void DCameraSourceDev::OnEvent(DCameraSourceEvent& event)
int32_t DCameraSourceDev::ExecuteRegister(std::shared_ptr<DCameraRegistParam>& param)
{
DCAMERA_SYNC_TRACE;
DHLOGI("DCameraSourceDev Execute Register devId: %s dhId: %s",
GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str());
ReportRegisterCameraEvent(REGIST_CAMERA_EVENT, GetAnonyString(devId_), dhId_,
@@ -259,6 +261,7 @@ int32_t DCameraSourceDev::ExecuteRegister(std::shared_ptr<DCameraRegistParam>& p
int32_t DCameraSourceDev::ExecuteUnRegister(std::shared_ptr<DCameraRegistParam>& param)
{
DCAMERA_SYNC_TRACE;
DHLOGI("DCameraSourceDev Execute UnRegister devId: %s dhId: %s", GetAnonyString(devId_).c_str(),
GetAnonyString(dhId_).c_str());
ReportRegisterCameraEvent(UNREGIST_CAMERA_EVENT, GetAnonyString(devId_), dhId_,
@@ -307,10 +310,12 @@ int32_t DCameraSourceDev::ExecuteOpenCamera()
return ret;
}
DcameraStartAsyncTrace(DCAMERA_OPEN_CHANNEL_CONTROL, DCAMERA_OPEN_CHANNEL_TASKID);
ret = controller_->OpenChannel(openInfo);
if (ret != DCAMERA_OK) {
DHLOGE("DCameraSourceDev Execute OpenCamera OpenChannel failed, ret: %d, devId: %s dhId: %s", ret,
GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str());
DcameraFinishAsyncTrace(DCAMERA_OPEN_CHANNEL_CONTROL, DCAMERA_OPEN_CHANNEL_TASKID);
return DCAMERA_OPEN_CONFLICT;
}
return DCAMERA_OK;
@@ -403,12 +408,15 @@ int32_t DCameraSourceDev::ExecuteReleaseAllStreams()
int32_t DCameraSourceDev::ExecuteStartCapture(std::vector<std::shared_ptr<DCCaptureInfo>>& captureInfos)
{
HitraceAndHisyseventImpl(captureInfos);
DHLOGI("DCameraSourceDev Execute StartCapture devId %s dhId %s", GetAnonyString(devId_).c_str(),
GetAnonyString(dhId_).c_str());
int32_t ret = input_->StartCapture(captureInfos);
if (ret != DCAMERA_OK) {
DHLOGE("DCameraSourceDev input StartCapture failed ret: %d, devId: %s, dhId: %s", ret,
GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str());
DcameraFinishAsyncTrace(DCAMERA_CONTINUE_FIRST_FRAME, DCAMERA_CONTINUE_FIRST_FRAME_TASKID);
DcameraFinishAsyncTrace(DCAMERA_SNAPSHOT_FIRST_FRAME, DCAMERA_SNAPSHOT_FIRST_FRAME_TASKID);
return ret;
}
std::vector<std::shared_ptr<DCameraCaptureInfo>> captures;
@@ -425,15 +433,6 @@ int32_t DCameraSourceDev::ExecuteStartCapture(std::vector<std::shared_ptr<DCCapt
GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str(), (*iter)->captureSettings_.size(),
capture->width_, capture->height_, capture->format_, capture->isCapture_ ? 1 : 0, capture->encodeType_,
capture->streamType_);
EventCaptureInfo eventCaptureInfo = {
.width_ = capture->width_,
.height_ = capture->height_,
.format_ = capture->format_,
.isCapture_ = capture->isCapture_,
.encodeType_ = capture->encodeType_,
.type_ = capture->streamType_,
};
ReportStartCaptureEvent(START_CAPTURE_EVENT, eventCaptureInfo, "execute start capture event.");
for (auto settingIter = (*iter)->captureSettings_.begin(); settingIter != (*iter)->captureSettings_.end();
settingIter++) {
std::shared_ptr<DCameraSettings> setting = std::make_shared<DCameraSettings>();
@@ -448,10 +447,33 @@ int32_t DCameraSourceDev::ExecuteStartCapture(std::vector<std::shared_ptr<DCCapt
if (ret != DCAMERA_OK) {
DHLOGE("DCameraSourceDev Execute StartCapture StartCapture failed, ret: %d, devId: %s dhId: %s", ret,
GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str());
DcameraFinishAsyncTrace(DCAMERA_CONTINUE_FIRST_FRAME, DCAMERA_CONTINUE_FIRST_FRAME_TASKID);
DcameraFinishAsyncTrace(DCAMERA_SNAPSHOT_FIRST_FRAME, DCAMERA_SNAPSHOT_FIRST_FRAME_TASKID);
}
return ret;
}
void DCameraSourceDev::HitraceAndHisyseventImpl(std::vector<std::shared_ptr<DCCaptureInfo>>& captureInfos)
{
for (auto iter = captureInfos.begin(); iter != captureInfos.end(); iter++) {
std::shared_ptr<DCCaptureInfo> capture = *iter;
EventCaptureInfo eventCaptureInfo = {
.width_ = capture->width_,
.height_ = capture->height_,
.format_ = capture->format_,
.isCapture_ = capture->isCapture_,
.encodeType_ = capture->encodeType_,
.type_ = capture->type_,
};
ReportStartCaptureEvent(START_CAPTURE_EVENT, eventCaptureInfo, "execute start capture event.");
if (capture->type_ == CONTINUOUS_FRAME && capture->isCapture_ == true) {
DcameraStartAsyncTrace(DCAMERA_CONTINUE_FIRST_FRAME, DCAMERA_CONTINUE_FIRST_FRAME_TASKID);
} else if (capture->type_ == SNAPSHOT_FRAME && capture->isCapture_ == true) {
DcameraStartAsyncTrace(DCAMERA_SNAPSHOT_FIRST_FRAME, DCAMERA_SNAPSHOT_FIRST_FRAME_TASKID);
}
}
}
int32_t DCameraSourceDev::ExecuteStopCapture(std::vector<int>& streamIds, bool& isAllStop)
{
DHLOGI("DCameraSourceDev Execute StopCapture devId %s dhId %s", GetAnonyString(devId_).c_str(),
@@ -20,6 +20,7 @@
#include "dcamera_capture_info_cmd.h"
#include "dcamera_channel_source_impl.h"
#include "dcamera_hitrace_adapter.h"
#include "dcamera_metadata_setting_cmd.h"
#include "dcamera_protocol.h"
#include "dcamera_source_controller_channel_listener.h"
@@ -165,6 +166,10 @@ int32_t DCameraSourceController::ChannelNeg(std::shared_ptr<DCameraChannelInfo>&
int32_t DCameraSourceController::DCameraNotify(std::shared_ptr<DCameraEvent>& events)
{
if (events->eventResult_ == DCAMERA_EVENT_CAMERA_ERROR) {
DcameraFinishAsyncTrace(DCAMERA_CONTINUE_FIRST_FRAME, DCAMERA_CONTINUE_FIRST_FRAME_TASKID);
DcameraFinishAsyncTrace(DCAMERA_SNAPSHOT_FIRST_FRAME, DCAMERA_SNAPSHOT_FIRST_FRAME_TASKID);
}
sptr<IDCameraProvider> camHdiProvider = IDCameraProvider::Get(HDF_DCAMERA_EXT_SERVICE);
if (camHdiProvider == nullptr) {
DHLOGI("DCameraNotify camHdiProvider is nullptr devId: %s dhId: %s", GetAnonyString(devId_).c_str(),
@@ -381,6 +386,7 @@ void DCameraSourceController::OnSessionState(int32_t state)
channelState_ = state;
switch (state) {
case DCAMERA_CHANNEL_STATE_CONNECTED: {
DcameraFinishAsyncTrace(DCAMERA_OPEN_CHANNEL_CONTROL, DCAMERA_OPEN_CHANNEL_TASKID);
stateMachine_->UpdateState(DCAMERA_STATE_OPENED);
std::shared_ptr<DCameraEvent> camEvent = std::make_shared<DCameraEvent>();
camEvent->eventType_ = DCAMERA_MESSAGE;
@@ -390,6 +396,7 @@ void DCameraSourceController::OnSessionState(int32_t state)
break;
}
case DCAMERA_CHANNEL_STATE_DISCONNECTED: {
DcameraFinishAsyncTrace(DCAMERA_OPEN_CHANNEL_CONTROL, DCAMERA_OPEN_CHANNEL_TASKID);
DHLOGI("DCameraSourceDev PostTask Controller CloseSession OnClose devId %s dhId %s",
GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str());
DCameraIndex camIndex(devId_, dhId_);
@@ -16,6 +16,7 @@
#include "dcamera_source_data_process.h"
#include "anonymous_string.h"
#include "dcamera_hitrace_adapter.h"
#include "distributed_camera_constants.h"
#include "distributed_camera_errno.h"
#include "distributed_hardware_log.h"
@@ -23,7 +24,7 @@
namespace OHOS {
namespace DistributedHardware {
DCameraSourceDataProcess::DCameraSourceDataProcess(std::string devId, std::string dhId, DCStreamType streamType)
: devId_(devId), dhId_(dhId), streamType_(streamType)
: devId_(devId), dhId_(dhId), streamType_(streamType), isFirstContStream_(true)
{
DHLOGI("DCameraSourceDataProcess Constructor devId %s dhId %s streamType %d", GetAnonyString(devId_).c_str(),
GetAnonyString(dhId_).c_str(), streamType_);
@@ -39,6 +40,12 @@ DCameraSourceDataProcess::~DCameraSourceDataProcess()
int32_t DCameraSourceDataProcess::FeedStream(std::vector<std::shared_ptr<DataBuffer>>& buffers)
{
if (isFirstContStream_ && streamType_ == CONTINUOUS_FRAME) {
DcameraFinishAsyncTrace(DCAMERA_CONTINUE_FIRST_FRAME, DCAMERA_CONTINUE_FIRST_FRAME_TASKID);
isFirstContStream_ = false;
} else if (streamType_ == SNAPSHOT_FRAME) {
DcameraFinishAsyncTrace(DCAMERA_SNAPSHOT_FIRST_FRAME, DCAMERA_SNAPSHOT_FIRST_FRAME_TASKID);
}
if (buffers.size() > DCAMERA_MAX_NUM) {
DHLOGI("DCameraSourceDataProcess FeedStream devId %s dhId %s size: %d over flow",
GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str(), buffers.size());
@@ -134,6 +141,9 @@ int32_t DCameraSourceDataProcess::StartCapture(std::shared_ptr<DCCaptureInfo>& c
"dataspace: %d, encodeType: %d, streamType: %d", GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str(),
captureInfo->width_, captureInfo->height_, captureInfo->format_, captureInfo->isCapture_,
captureInfo->dataspace_, captureInfo->encodeType_, captureInfo->type_);
if (streamType_ == CONTINUOUS_FRAME && captureInfo->isCapture_ == true) {
isFirstContStream_ = true;
}
std::shared_ptr<DCameraStreamConfig> streamConfig =
std::make_shared<DCameraStreamConfig>(captureInfo->width_, captureInfo->height_, captureInfo->format_,
@@ -16,6 +16,7 @@
#include "dcamera_source_input.h"
#include "anonymous_string.h"
#include "dcamera_hitrace_adapter.h"
#include "distributed_camera_constants.h"
#include "distributed_camera_errno.h"
#include "distributed_hardware_log.h"
@@ -184,11 +185,13 @@ int32_t DCameraSourceInput::OpenChannel(std::vector<DCameraIndex>& indexs)
channelState_[SNAPSHOT_FRAME]);
int32_t ret = DCAMERA_OK;
if (channelState_[CONTINUOUS_FRAME] == DCAMERA_CHANNEL_STATE_DISCONNECTED) {
DcameraStartAsyncTrace(DCAMERA_OPEN_DATA_CONTINUE, DCAMERA_OPEN_DATA_CONTINUE_TASKID);
ret = channels_[CONTINUOUS_FRAME]->CreateSession(indexs, CONTINUE_SESSION_FLAG, DCAMERA_SESSION_MODE_VIDEO,
listeners_[CONTINUOUS_FRAME]);
if (ret != DCAMERA_OK) {
DHLOGE("DCameraSourceInput CreateSession continue failed ret: %d, devId: %s, dhId: %s", ret,
GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str());
DcameraFinishAsyncTrace(DCAMERA_OPEN_DATA_CONTINUE, DCAMERA_OPEN_DATA_CONTINUE_TASKID);
return ret;
}
@@ -196,16 +199,19 @@ int32_t DCameraSourceInput::OpenChannel(std::vector<DCameraIndex>& indexs)
if (ret != DCAMERA_OK) {
DHLOGE("DCameraSourceInput OpenChannel continue stream failed ret: %d, devId: %s, dhId: %s", ret,
GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str());
DcameraFinishAsyncTrace(DCAMERA_OPEN_DATA_CONTINUE, DCAMERA_OPEN_DATA_CONTINUE_TASKID);
return ret;
}
}
if (channelState_[SNAPSHOT_FRAME] == DCAMERA_CHANNEL_STATE_DISCONNECTED) {
DcameraStartAsyncTrace(DCAMERA_OPEN_DATA_SNAPSHOT, DCAMERA_OPEN_DATA_SNAPSHOT_TASKID);
ret = channels_[SNAPSHOT_FRAME]->CreateSession(indexs, SNAP_SHOT_SESSION_FLAG, DCAMERA_SESSION_MODE_JPEG,
listeners_[SNAPSHOT_FRAME]);
if (ret != DCAMERA_OK) {
DHLOGE("DCameraSourceInput Init CreateSession snapshot failed ret: %d, devId: %s, dhId: %s", ret,
GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str());
DcameraFinishAsyncTrace(DCAMERA_OPEN_DATA_SNAPSHOT, DCAMERA_OPEN_DATA_SNAPSHOT_TASKID);
return ret;
}
@@ -213,6 +219,7 @@ int32_t DCameraSourceInput::OpenChannel(std::vector<DCameraIndex>& indexs)
if (ret != DCAMERA_OK) {
DHLOGE("DCameraSourceInput OpenChannel snapshot stream failed ret: %d, devId: %s, dhId: %s", ret,
GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str());
DcameraFinishAsyncTrace(DCAMERA_OPEN_DATA_SNAPSHOT, DCAMERA_OPEN_DATA_SNAPSHOT_TASKID);
return ret;
}
}
@@ -311,6 +318,7 @@ void DCameraSourceInput::OnSessionState(DCStreamType streamType, int32_t state)
channelState_[streamType] = (DCameraChannelState)state;
switch (state) {
case DCAMERA_CHANNEL_STATE_DISCONNECTED: {
FinshFrameAsyncTrace(streamType);
DHLOGI("DCameraSourceDev PostTask CloseSession Input OnClose devId %s dhId %s",
GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str());
DCameraIndex camIndex(devId_, dhId_);
@@ -323,6 +331,11 @@ void DCameraSourceInput::OnSessionState(DCStreamType streamType, int32_t state)
eventBus_->PostEvent<DCameraSourceEvent>(srcEvent);
break;
}
case DCAMERA_CHANNEL_STATE_CONNECTED: {
FinshFrameAsyncTrace(streamType);
DHLOGI("DCameraSourceInput OnSessionState state %d", state);
break;
}
default: {
DHLOGI("DCameraSourceInput OnSessionState state %d", state);
break;
@@ -330,6 +343,15 @@ void DCameraSourceInput::OnSessionState(DCStreamType streamType, int32_t state)
}
}
void DCameraSourceInput::FinshFrameAsyncTrace(DCStreamType streamType)
{
if (streamType == CONTINUOUS_FRAME) {
DcameraFinishAsyncTrace(DCAMERA_OPEN_DATA_CONTINUE, DCAMERA_OPEN_DATA_CONTINUE_TASKID);
} else if (streamType == SNAPSHOT_FRAME) {
DcameraFinishAsyncTrace(DCAMERA_OPEN_DATA_SNAPSHOT, DCAMERA_OPEN_DATA_SNAPSHOT_TASKID);
}
}
void DCameraSourceInput::OnSessionError(DCStreamType streamType, int32_t eventType, int32_t eventReason,
std::string detail)
{
+1
View File
@@ -84,6 +84,7 @@ ohos_shared_library("distributed_camera_data_process") {
external_deps = [
"eventhandler:libeventhandler",
"hitrace_native:hitrace_meter",
"hiviewdfx_hilog_native:libhilog",
"multimedia_media_standard:media_client",
]
@@ -15,6 +15,7 @@
#include "dcamera_pipeline_sink.h"
#include "dcamera_hitrace_adapter.h"
#include "distributed_hardware_log.h"
#include "encode_data_process.h"
@@ -35,6 +36,7 @@ int32_t DCameraPipelineSink::CreateDataProcessPipeline(PipelineType piplineType,
const VideoConfigParams& sourceConfig, const VideoConfigParams& targetConfig,
const std::shared_ptr<DataProcessListener>& listener)
{
DCAMERA_SYNC_TRACE;
DHLOGD("Create sink data process pipeline.");
switch (piplineType) {
case PipelineType::VIDEO:
@@ -146,6 +148,7 @@ int32_t DCameraPipelineSink::ProcessData(std::vector<std::shared_ptr<DataBuffer>
void DCameraPipelineSink::DestroyDataProcessPipeline()
{
DCAMERA_SYNC_TRACE;
DHLOGD("Destroy sink data process pipeline start.");
isProcess_ = false;
if (pipelineHead_ != nullptr) {
@@ -15,6 +15,7 @@
#include "dcamera_pipeline_source.h"
#include "dcamera_hitrace_adapter.h"
#include "distributed_hardware_log.h"
#include "color_format_process.h"
@@ -37,6 +38,7 @@ int32_t DCameraPipelineSource::CreateDataProcessPipeline(PipelineType piplineTyp
const VideoConfigParams& sourceConfig, const VideoConfigParams& targetConfig,
const std::shared_ptr<DataProcessListener>& listener)
{
DCAMERA_SYNC_TRACE;
DHLOGD("Create source data process pipeline.");
switch (piplineType) {
case PipelineType::VIDEO:
@@ -168,6 +170,7 @@ int32_t DCameraPipelineSource::ProcessData(std::vector<std::shared_ptr<DataBuffe
void DCameraPipelineSource::DestroyDataProcessPipeline()
{
DCAMERA_SYNC_TRACE;
DHLOGD("Destroy source data process pipeline start.");
isProcess_ = false;
if (pipelineHead_ != nullptr) {