Skip to content

Commit

Permalink
Merge tag 'android-14.0.0_r50' of https://android.googlesource.com/pl…
Browse files Browse the repository at this point in the history
…atform/frameworks/av into 14

Android 14.0.0 Release 50 (AP2A.240605.024)

Signed-off-by: NurKeinNeid <[email protected]>
  • Loading branch information
NurKeinNeid committed Jun 13, 2024
2 parents c2d51ae + 3ac36cb commit 783525c
Show file tree
Hide file tree
Showing 584 changed files with 20,988 additions and 6,696 deletions.
9 changes: 8 additions & 1 deletion Android.bp
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,6 @@ cc_library_headers {

aidl_interface {
name: "av-audio-types-aidl",
unstable: true,
host_supported: true,
vendor_available: true,
double_loadable: true,
Expand All @@ -126,4 +125,12 @@ aidl_interface {
sdk_version: "module_current",
},
},
versions_with_info: [
{
version: "1",
imports: ["android.hardware.audio.core-V2"],
},
],
frozen: true,

}
2 changes: 2 additions & 0 deletions aidl/android/media/audio/IHalAdapterVendorExtension.aidl
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ import android.hardware.audio.core.VendorParameter;
* is optional. Vendors may provide an implementation on the system_ext
* partition. The default instance of this interface, if provided, must be
* registered prior to the moment when the audio server connects to HAL modules.
* Vendors need to set the system property `ro.audio.ihaladaptervendorextension_enabled`
* to `true` for the framework to bind to this service.
*
* {@hide}
*/
Expand Down
1 change: 1 addition & 0 deletions aidl_api/av-audio-types-aidl/1/.hash
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ef1bc5ed9db445fbfc116cdec6e6ad081458ee40
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
/*
* Copyright (C) 2023 The Android Open Source Project
*
* 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.
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////

// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.

package android.media.audio;
/* @hide */
interface IHalAdapterVendorExtension {
@utf8InCpp String[] parseVendorParameterIds(android.media.audio.IHalAdapterVendorExtension.ParameterScope scope, in @utf8InCpp String rawKeys);
void parseVendorParameters(android.media.audio.IHalAdapterVendorExtension.ParameterScope scope, in @utf8InCpp String rawKeysAndValues, out android.hardware.audio.core.VendorParameter[] syncParameters, out android.hardware.audio.core.VendorParameter[] asyncParameters);
android.hardware.audio.core.VendorParameter[] parseBluetoothA2dpReconfigureOffload(in @utf8InCpp String rawValue);
android.hardware.audio.core.VendorParameter[] parseBluetoothLeReconfigureOffload(in @utf8InCpp String rawValue);
@utf8InCpp String processVendorParameters(android.media.audio.IHalAdapterVendorExtension.ParameterScope scope, in android.hardware.audio.core.VendorParameter[] parameters);
enum ParameterScope {
MODULE = 0,
STREAM = 1,
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
/*
* Copyright (C) 2023 The Android Open Source Project
*
* 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.
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////

// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.

package android.media.audio;
/* @hide */
interface IHalAdapterVendorExtension {
@utf8InCpp String[] parseVendorParameterIds(android.media.audio.IHalAdapterVendorExtension.ParameterScope scope, in @utf8InCpp String rawKeys);
void parseVendorParameters(android.media.audio.IHalAdapterVendorExtension.ParameterScope scope, in @utf8InCpp String rawKeysAndValues, out android.hardware.audio.core.VendorParameter[] syncParameters, out android.hardware.audio.core.VendorParameter[] asyncParameters);
android.hardware.audio.core.VendorParameter[] parseBluetoothA2dpReconfigureOffload(in @utf8InCpp String rawValue);
android.hardware.audio.core.VendorParameter[] parseBluetoothLeReconfigureOffload(in @utf8InCpp String rawValue);
@utf8InCpp String processVendorParameters(android.media.audio.IHalAdapterVendorExtension.ParameterScope scope, in android.hardware.audio.core.VendorParameter[] parameters);
enum ParameterScope {
MODULE = 0,
STREAM = 1,
}
}
15 changes: 11 additions & 4 deletions camera/Android.bp
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
// limitations under the License.

package {
default_team: "trendy_team_camera_framework",
default_applicable_licenses: ["frameworks_av_camera_license"],
}

Expand Down Expand Up @@ -46,6 +47,7 @@ license {
aconfig_declarations {
name: "camera_platform_flags",
package: "com.android.internal.camera.flags",
container: "system",
srcs: ["camera_platform.aconfig"],
}

Expand All @@ -64,6 +66,7 @@ cc_library_headers {
name: "camera_headers",
export_include_dirs: ["include"],
}

cc_library {
name: "libcamera_client",

Expand Down Expand Up @@ -119,10 +122,14 @@ cc_library {
"frameworks/native/include/media/openmax",
],
export_include_dirs: [
"include",
"include/camera"
"include",
"include/camera",
],
export_shared_lib_headers: [
"libcamera_metadata",
"libnativewindow",
"libgui",
],
export_shared_lib_headers: ["libcamera_metadata", "libnativewindow", "libgui"],

cflags: [
"-Werror",
Expand Down Expand Up @@ -152,7 +159,7 @@ cc_library_host_static {

export_include_dirs: [
"include",
"include/camera"
"include/camera",
],
}

Expand Down
15 changes: 0 additions & 15 deletions camera/Android.mk

This file was deleted.

30 changes: 22 additions & 8 deletions camera/aidl/android/hardware/ICameraService.aidl
Original file line number Diff line number Diff line change
Expand Up @@ -278,14 +278,28 @@ interface ICameraService
CameraMetadataNative createDefaultRequest(@utf8InCpp String cameraId, int templateId);

/**
* Check whether a particular session configuration with optional session parameters
* has camera device support.
*
* @param cameraId The camera id to query session configuration on
* @param sessionConfiguration Specific session configuration to be verified.
* @return true - in case the stream combination is supported.
* false - in case there is no device support.
*/
* Check whether a particular session configuration with optional session parameters
* has camera device support.
*
* @param cameraId The camera id to query session configuration for
* @param sessionConfiguration Specific session configuration to be verified.
* @return true - in case the stream combination is supported.
* false - in case there is no device support.
*/
boolean isSessionConfigurationWithParametersSupported(@utf8InCpp String cameraId,
in SessionConfiguration sessionConfiguration);

/**
* Get the camera characteristics for a particular session configuration for
* the given camera device.
*
* @param cameraId ID of the device for which the session characteristics must be fetched.
* @param sessionConfiguration session configuration for which the characteristics
* must be fetched.
* @return - characteristics associated with the given session.
*/
CameraMetadataNative getSessionCharacteristics(@utf8InCpp String cameraId,
int targetSdkVersion,
boolean overrideToPortrait,
in SessionConfiguration sessionConfiguration);
}
9 changes: 0 additions & 9 deletions camera/aidl/android/hardware/camera2/ICameraDeviceUser.aidl
Original file line number Diff line number Diff line change
Expand Up @@ -99,15 +99,6 @@ interface ICameraDeviceUser
*/
boolean isSessionConfigurationSupported(in SessionConfiguration sessionConfiguration);

/**
* Get the camera characteristics for a particular session configuration
*
* @param sessionConfiguration Specific session configuration for which the characteristics
* are fetched.
* @return - characteristics associated with the given session.
*/
CameraMetadataNative getSessionCharacteristics(in SessionConfiguration sessionConfiguration);

void deleteStream(int streamId);

/**
Expand Down
57 changes: 57 additions & 0 deletions camera/camera_platform.aconfig
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
package: "com.android.internal.camera.flags"
container: "system"

flag {
namespace: "camera_platform"
Expand All @@ -21,6 +22,13 @@ flag {
bug: "309627704"
}

flag {
namespace: "camera_platform"
name: "watch_foreground_changes"
description: "Request AppOps to notify changes in the foreground status of the client"
bug: "290086710"
}

flag {
namespace: "camera_platform"
name: "log_ultrawide_usage"
Expand Down Expand Up @@ -76,3 +84,52 @@ flag {
description: "Enable creating MultiResolutionImageReader with usage flag configuration"
bug: "301588215"
}

flag {
namespace: "camera_platform"
name: "use_ro_board_api_level_for_vndk_version"
description: "Enable using ro.board.api_level instead of ro.vndk.version to get VNDK version"
bug: "312315580"
}

flag {
namespace: "camera_platform"
name: "camera_extensions_characteristics_get"
description: "Enable get extension specific camera characteristics API"
bug: "280649914"
}

flag {
namespace: "camera_platform"
name: "delay_lazy_hal_instantiation"
description: "Only trigger lazy HAL instantiation when the HAL is needed for an operation."
bug: "319735068"
}

flag {
namespace: "camera_platform"
name: "return_buffers_outside_locks"
description: "Enable returning graphics buffers to buffer queues without holding the in-flight mutex"
bug: "315526878"
}

flag {
namespace: "camera_platform"
name: "camera_device_setup"
description: "Create an intermediate Camera Device class for limited CameraDevice access."
bug: "320741775"
}

flag {
namespace: "camera_platform"
name: "camera_privacy_allowlist"
description: "Allowlisting to exempt safety-relevant cameras from privacy control for automotive devices"
bug: "282814430"
}

flag {
namespace: "camera_platform"
name: "extension_10_bit"
description: "Enables 10-bit support in the camera extensions."
bug: "316375635"
}
1 change: 1 addition & 0 deletions camera/cameraserver/Android.bp
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
// limitations under the License.

package {
default_team: "trendy_team_camera_framework",
// See: http://go/android-license-faq
// A large-scale-change added 'default_applicable_licenses' to import
// all of the 'license_kinds' from "frameworks_av_camera_license"
Expand Down
4 changes: 2 additions & 2 deletions camera/include/camera/camera2/SessionConfiguration.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@
#ifndef ANDROID_HARDWARE_CAMERA2_SESSIONCONFIGURATION_H
#define ANDROID_HARDWARE_CAMERA2_SESSIONCONFIGURATION_H

#include "OutputConfiguration.h"

#include <binder/Parcelable.h>
#include <camera/CameraMetadata.h>

Expand All @@ -26,8 +28,6 @@ namespace hardware {
namespace camera2 {
namespace params {

class OutputConfiguration;

class SessionConfiguration : public android::Parcelable {
public:

Expand Down
6 changes: 3 additions & 3 deletions camera/ndk/Android.bp
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
// frameworks/av/include.

package {
default_team: "trendy_team_camera_framework",
default_applicable_licenses: ["frameworks_av_camera_ndk_license"],
}

Expand Down Expand Up @@ -154,8 +155,8 @@ cc_library_shared {
"libcamera_metadata",
"libmediandk",
"android.frameworks.cameraservice.common-V1-ndk",
"android.frameworks.cameraservice.device-V1-ndk",
"android.frameworks.cameraservice.service-V1-ndk",
"android.frameworks.cameraservice.device-V2-ndk",
"android.frameworks.cameraservice.service-V2-ndk",
],
static_libs: [
"[email protected]",
Expand Down Expand Up @@ -188,7 +189,6 @@ cc_test {
],
static_libs: [
"[email protected]",
"[email protected]",
],
cflags: [
"-D__ANDROID_VNDK__",
Expand Down
2 changes: 1 addition & 1 deletion camera/ndk/NdkCameraCaptureSession.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,7 @@ camera_status_t ACameraCaptureSession_setWindowPreparedCallback(
EXPORT
camera_status_t ACameraCaptureSession_prepareWindow(
ACameraCaptureSession* session,
ACameraWindowType *window) {
ANativeWindow *window) {
ATRACE_CALL();
if (session == nullptr || window == nullptr) {
ALOGE("%s: Error: session %p / window %p is null", __FUNCTION__, session, window);
Expand Down
Loading

0 comments on commit 783525c

Please sign in to comment.