diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml
index e0904bb5162998..1b96b6ce4a8dcf 100644
--- a/.github/workflows/tests.yaml
+++ b/.github/workflows/tests.yaml
@@ -110,6 +110,7 @@ jobs:
src/app/zap-templates/zcl/data-model/chip/boolean-state-cluster.xml \
src/app/zap-templates/zcl/data-model/chip/actions-cluster.xml \
src/app/zap-templates/zcl/data-model/chip/bridged-device-basic-information.xml \
+ src/app/zap-templates/zcl/data-model/chip/camera-av-stream-management-cluster.xml \
src/app/zap-templates/zcl/data-model/chip/chip-ota.xml \
src/app/zap-templates/zcl/data-model/chip/chip-types.xml \
src/app/zap-templates/zcl/data-model/chip/channel-cluster.xml \
diff --git a/scripts/rules.matterlint b/scripts/rules.matterlint
index 1573cc7065764e..4192479bdca0c1 100644
--- a/scripts/rules.matterlint
+++ b/scripts/rules.matterlint
@@ -14,6 +14,7 @@ load "../src/app/zap-templates/zcl/data-model/chip/binding-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/boolean-state-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/actions-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/bridged-device-basic-information.xml";
+load "../src/app/zap-templates/zcl/data-model/chip/camera-av-stream-management-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/channel-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/chime-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/chip-ota.xml";
diff --git a/src/app/zap-templates/zcl/data-model/chip/camera-av-stream-management-cluster.xml b/src/app/zap-templates/zcl/data-model/chip/camera-av-stream-management-cluster.xml
new file mode 100644
index 00000000000000..9ceba5187a53e5
--- /dev/null
+++ b/src/app/zap-templates/zcl/data-model/chip/camera-av-stream-management-cluster.xml
@@ -0,0 +1,576 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Camera AV Stream Management
+ 0x0551
+ CAMERA_AV_STREAM_MANAGEMENT_CLUSTER
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+
+
+ MaxConcurrentVideoEncoders
+
+
+
+ MaxEncodedPixelRate
+
+
+
+ VideoSensorParams
+
+
+
+ NightVisionCapable
+
+
+
+ MinViewPortWidth
+
+
+
+ MinViewPortHeight
+
+
+
+ RateDistortionTradeOffPoints
+
+
+
+ MaxPreRollBufferSize
+
+
+
+ MicrophoneCapabilities
+
+
+
+ SpeakerCapabilities
+
+
+
+ TwoWayTalkSupport
+
+
+
+ SupportedSnapshotParams
+
+
+
+ HDRCapable
+
+
+
+ MaxNetworkBandwidth
+
+
+
+ CurrentFrameRate
+
+
+
+ HDRMode
+
+
+
+
+ CurrentVideoCodecs
+
+
+
+ CurrentSnapshotConfig
+
+
+
+ FabricsUsingCamera
+
+
+
+ AllocatedVideoStreams
+
+
+
+ AllocatedAudioStreams
+
+
+
+ AllocatedSnapshotStreams
+
+
+
+ RankedVideoStreamPrioritiesList
+
+
+
+
+ SoftRecordingPrivacyModeSetting
+
+
+
+
+ SoftLivestreamPrivacyModeSetting
+
+
+
+
+ HardPrivacyMode
+
+
+
+ NightVision
+
+
+
+
+ NightVisionIllum
+
+
+
+
+ AWB
+
+
+
+
+ ShutterSpeed
+
+
+
+
+ ISO
+
+
+
+
+ Viewport
+
+
+
+ SpeakerEnabled
+
+
+
+
+ SpeakerVolumeLevel
+
+
+
+
+ SpeakerMaxLevel
+
+
+
+
+ SpeakerMinLevel
+
+
+
+
+ MicStatus
+
+
+
+
+ MicVolumeLevel
+
+
+
+
+ MicMaxLevel
+
+
+
+
+ MicMinLevel
+
+
+
+
+ MicAGCEnabled
+
+
+
+
+ ImageRotation
+
+
+
+ ImageFlipHorizontal
+
+
+
+ ImageFlipVertical
+
+
+
+ LocalVideoRecordingEnabled
+
+
+
+
+ LocalSnapshotRecordingEnabled
+
+
+
+
+ StatusLight
+
+
+
+
+ StatusLightBrightness
+
+
+
+
+ DepthSensorStatus
+
+
+
+
+ WatermarkEnabled
+
+
+
+ OSDEnabled
+
+
+
+ This command SHALL allocate an audio stream on the camera and return an allocated audio stream identifier.
+
+
+
+
+
+
+
+
+
+
+ This command SHALL be sent by the camera in response to the AudioStreamAllocate command, carrying the newly allocated audio stream identifier.
+
+
+
+
+ This command SHALL deallocate an audio stream on the camera, corresponding to the given audio stream identifier.
+
+
+
+
+
+ This command SHALL allocate a video stream on the camera and return an allocated video stream identifier.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This command SHALL be sent by the camera in response to the VideoStreamAllocate command, carrying the newly allocated video stream identifier.
+
+
+
+
+ This command SHALL be used to modify the resolution of a stream specified by the VideoStreamID.
+
+
+
+
+
+
+ This command SHALL deallocate a video stream on the camera, corresponding to the given video stream identifier.
+
+
+
+
+
+ This command SHALL allocate a snapshot stream on the device and return an allocated snapshot stream identifier.
+
+
+
+
+
+
+
+
+
+
+ This command SHALL be sent by the device in response to the SnapshotStreamAllocate command, carrying the newly allocated snapshot stream identifier.
+
+
+
+
+ This command SHALL deallocate an snapshot stream on the camera, corresponding to the given snapshot stream identifier.
+
+
+
+
+
+
+
+
+
+
+ This command SHALL return a Snapshot from the camera.
+
+
+
+
+
+
+ This command SHALL be sent by the device in response to the CaptureSnapshot command, carrying the requested snapshot.
+
+
+
+
+
+
+ This command SHALL set the viewport in all video streams.
+
+
+
+
+ The data fields for this command SHALL be as follows:
+
+
+
+
+ The data fields for this command SHALL be as follows:
+
+
+
+
+ The data fields for this command SHALL be as follows:
+
+
+
+
+ This command controls if the manufacturer watermark logo is enabled for a given video stream.
+
+
+
+
+
+ This command controls if the On Screen Display (OSD) of text such as date, time, timezone, and/or device name, is enabled for a given video stream.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This event SHALL be generated when there is a modification in the corresponding video stream.
+
+
+
+
+
+
+
+
+
+
+ This event SHALL be generated when there is a modification in the corresponding audio stream.
+
+
+
+
+
+
+
+
+
+
+ This event SHALL be generated when there is a modification in the corresponding snapshot stream.
+
+
+
+
diff --git a/src/app/zap-templates/zcl/data-model/chip/global-enums.xml b/src/app/zap-templates/zcl/data-model/chip/global-enums.xml
index 81ebd8506ad721..277ceb01aa22f4 100644
--- a/src/app/zap-templates/zcl/data-model/chip/global-enums.xml
+++ b/src/app/zap-templates/zcl/data-model/chip/global-enums.xml
@@ -34,6 +34,18 @@ TODO: Make these structures global rather than defining them for each cluster.
+
+
+
+
+
+
+
+
+
+
+
+