1/* 2 * Copyright (c) 2025 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 16package OHOS.CameraStandard; 17import CameraTypes; 18import ICameraDeviceService; 19import ICaptureSessionCallback; 20import IStreamCommon; 21import IPressureStatusCallback; 22import IControlCenterEffectStatusCallback; 23sequenceable OHOS.IRemoteObject; 24option_stub_hooks on; 25 26interface ICaptureSession{ 27 [ipccode 0] void BeginConfig(); 28 [ipccode 1] void AddInput([in] ICameraDeviceService cameraDevice); 29 [ipccode 2] void CanAddInput([in] ICameraDeviceService cameraDevice, [inout] boolean results); 30 [ipccode 3] void AddOutput([in] StreamType streamType, [in] IRemoteObject stream); 31 [ipccode 4] void RemoveInput([in] ICameraDeviceService cameraDevice); 32 [ipccode 5] void RemoveOutput([in] StreamType streamType, [in] IRemoteObject stream); 33 [ipccode 6] void CommitConfig(); 34 [ipccode 7] void Start(); 35 [ipccode 8] void Stop(); 36 [ipccode 9] void Release(); 37 [ipccode 10] void SetCallback([in] ICaptureSessionCallback callbackFunc); 38 [ipccode 11] void SetPressureCallback([in] IPressureStatusCallback callbackFunc); 39 [ipccode 12] void GetSessionState([out] CaptureSessionState sessionState); 40 [ipccode 13] void GetActiveColorSpace([out] int colorSpace); 41 [ipccode 14] void SetColorSpace([in] int colorSpace, [in] boolean isNeedUpdate); 42 [ipccode 15] void SetSmoothZoom([in] int smoothZoomType, [in] int operationMode, [in] float targetZoomRatio, [out] float duration); 43 [ipccode 16] void SetFeatureMode([in] int featureMode); 44 [ipccode 17] void EnableMovingPhoto([in] boolean isEnable); 45 [ipccode 18] void EnableMovingPhotoMirror([in] boolean isMirror, [in] boolean isConfig); 46 [ipccode 19] void SetPreviewRotation([in] String deviceClass); 47 [ipccode 20] void UnSetCallback(); 48 [ipccode 21] void UnSetPressureCallback(); 49 [ipccode 22] void SetCommitConfigFlag([in] boolean isNeedCommitting); 50 [ipccode 23] void SetHasFitedRotation([in] boolean isHasFitedRotation); 51 [ipccode 25] void GetVirtualApertureMetadate([out] List<float> virtualApertureMetadata); 52 [ipccode 26] void GetVirtualApertureValue([out] float value); 53 [ipccode 27] void SetVirtualApertureValue([in] float value, [in] boolean needPersist); 54 [ipccode 28] void GetBeautyMetadata([out] List<int> beautyApertureMetadata); 55 [ipccode 29] void GetBeautyRange([out] List<int> range, [in] int type); 56 [ipccode 30] void GetBeautyValue([in] int type, [out] int value); 57 [ipccode 31] void SetBeautyValue([in] int type, [in] int value, [in] boolean needPersist); 58 [ipccode 32] void SetControlCenterEffectStatusCallback([in] IControlCenterEffectStatusCallback callbackFunc); 59 [ipccode 33] void UnSetControlCenterEffectStatusCallback(); 60}