components/esp-matter: Data model changes to add mandatory camera clusters

This commit is contained in:
Sayon Deep
2025-11-27 11:40:27 +05:30
parent e322e230df
commit 891ee157c5
11 changed files with 1057 additions and 4 deletions
@@ -1221,5 +1221,66 @@ attribute_t *create_supports_dns_resolve(cluster_t *cluster, bool value);
} /* attribute */
} /* time_synchronization */
namespace camera_av_stream_management {
namespace attribute {
attribute_t *create_max_concurrent_encoders(cluster_t *cluster, uint8_t value);
attribute_t *create_max_encoded_pixel_rate(cluster_t *cluster, uint32_t value);
attribute_t *create_video_sensor_params(cluster_t *cluster, uint8_t * value, uint16_t length, uint16_t count);
attribute_t *create_night_vision_uses_infrared(cluster_t *cluster, bool value);
attribute_t *create_min_viewport_resolution(cluster_t *cluster, uint8_t * value, uint16_t length, uint16_t count);
attribute_t *create_rate_distortion_trade_off_points(cluster_t *cluster, uint8_t * value, uint16_t length, uint16_t count);
attribute_t *create_max_content_buffer_size(cluster_t *cluster, uint32_t value);
attribute_t *create_microphone_capabilities(cluster_t *cluster, uint8_t * value, uint16_t length, uint16_t count);
attribute_t *create_speaker_capabilities(cluster_t *cluster, uint8_t * value, uint16_t length, uint16_t count);
attribute_t *create_two_way_talk_support(cluster_t *cluster, uint8_t value);
attribute_t *create_snapshot_capabilities(cluster_t *cluster, uint8_t * value, uint16_t length, uint16_t count);
attribute_t *create_max_network_bandwidth(cluster_t *cluster, uint32_t value);
attribute_t *create_current_frame_rate(cluster_t *cluster, uint16_t value);
attribute_t *create_hdr_mode_enabled(cluster_t *cluster, bool value);
attribute_t *create_supported_stream_usages(cluster_t *cluster, uint8_t * value, uint16_t length, uint16_t count);
attribute_t *create_allocated_video_streams(cluster_t *cluster, uint8_t * value, uint16_t length, uint16_t count);
attribute_t *create_allocated_audio_streams(cluster_t *cluster, uint8_t * value, uint16_t length, uint16_t count);
attribute_t *create_allocated_snapshot_streams(cluster_t *cluster, uint8_t * value, uint16_t length, uint16_t count);
attribute_t *create_stream_usage_priorities(cluster_t *cluster, uint8_t * value, uint16_t length, uint16_t count);
attribute_t *create_soft_recording_privacy_mode_enabled(cluster_t *cluster, bool value);
attribute_t *create_soft_livestream_privacy_mode_enabled(cluster_t *cluster, bool value);
attribute_t *create_hard_privacy_mode_on(cluster_t *cluster, bool value);
attribute_t *create_night_vision(cluster_t *cluster, uint8_t value);
attribute_t *create_night_vision_illum(cluster_t *cluster, uint8_t value);
attribute_t *create_viewport(cluster_t *cluster, uint8_t * value, uint16_t length, uint16_t count);
attribute_t *create_speaker_muted(cluster_t *cluster, bool value);
attribute_t *create_speaker_volume_level(cluster_t *cluster, uint8_t value);
attribute_t *create_speaker_max_level(cluster_t *cluster, uint8_t value);
attribute_t *create_speaker_min_level(cluster_t *cluster, uint8_t value);
attribute_t *create_microphone_muted(cluster_t *cluster, bool value);
attribute_t *create_microphone_volume_level(cluster_t *cluster, uint8_t value);
attribute_t *create_microphone_max_level(cluster_t *cluster, uint8_t value);
attribute_t *create_microphone_min_level(cluster_t *cluster, uint8_t value);
attribute_t *create_microphone_agc_enabled(cluster_t *cluster, bool value);
attribute_t *create_image_rotation(cluster_t *cluster, uint16_t value);
attribute_t *create_image_flip_horizontal(cluster_t *cluster, bool value);
attribute_t *create_image_flip_vertical(cluster_t *cluster, bool value);
attribute_t *create_local_video_recording_enabled(cluster_t *cluster, bool value);
attribute_t *create_local_snapshot_recording_enabled(cluster_t *cluster, bool value);
attribute_t *create_status_light_enabled(cluster_t *cluster, bool value);
attribute_t *create_status_light_brightness(cluster_t *cluster, uint8_t value);
} /* attribute */
} /*camera av stream management*/
namespace webrtc_transport_provider {
namespace attribute {
attribute_t *create_current_sessions(cluster_t *cluster, uint8_t * value, uint16_t length, uint16_t count);
} /* attribute */
}/*webrtc transport provider*/
namespace webrtc_transport_requestor {
namespace attribute {
attribute_t *create_current_sessions(cluster_t *cluster, uint8_t * value, uint16_t length, uint16_t count);
} /* attribute */
}/*webrtc transport requestor*/
} /* cluster */
} /* esp_matter */