diff --git a/proprietary/vendor/etc/media_codecs_diwali_v0.xml b/proprietary/vendor/etc/media_codecs_diwali_v0.xml
new file mode 100644
index 0000000..bc22ff0
--- /dev/null
+++ b/proprietary/vendor/etc/media_codecs_diwali_v0.xml
@@ -0,0 +1,318 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/proprietary/vendor/etc/media_codecs_diwali_v1.xml b/proprietary/vendor/etc/media_codecs_diwali_v1.xml
new file mode 100644
index 0000000..97f0198
--- /dev/null
+++ b/proprietary/vendor/etc/media_codecs_diwali_v1.xml
@@ -0,0 +1,303 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/proprietary/vendor/etc/media_codecs_diwali_v2.xml b/proprietary/vendor/etc/media_codecs_diwali_v2.xml
new file mode 100644
index 0000000..2d6c393
--- /dev/null
+++ b/proprietary/vendor/etc/media_codecs_diwali_v2.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
diff --git a/proprietary/vendor/etc/media_codecs_performance_diwali_v0.xml b/proprietary/vendor/etc/media_codecs_performance_diwali_v0.xml
new file mode 100644
index 0000000..b67d116
--- /dev/null
+++ b/proprietary/vendor/etc/media_codecs_performance_diwali_v0.xml
@@ -0,0 +1,186 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/proprietary/vendor/etc/media_codecs_performance_diwali_v1.xml b/proprietary/vendor/etc/media_codecs_performance_diwali_v1.xml
new file mode 100644
index 0000000..b67d116
--- /dev/null
+++ b/proprietary/vendor/etc/media_codecs_performance_diwali_v1.xml
@@ -0,0 +1,186 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/proprietary/vendor/etc/media_codecs_performance_diwali_v2.xml b/proprietary/vendor/etc/media_codecs_performance_diwali_v2.xml
new file mode 100644
index 0000000..f4a7348
--- /dev/null
+++ b/proprietary/vendor/etc/media_codecs_performance_diwali_v2.xml
@@ -0,0 +1,186 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/proprietary/vendor/etc/media_diwali_v0/video_system_specs.json b/proprietary/vendor/etc/media_diwali_v0/video_system_specs.json
new file mode 100644
index 0000000..12d00c0
--- /dev/null
+++ b/proprietary/vendor/etc/media_diwali_v0/video_system_specs.json
@@ -0,0 +1,230 @@
+// If you modify this file,
+// 1. Push it to /vendor/etc/video_system_specs.json on the device
+// 2. Kill media.hwcodec to get the new changed values.
+// Note: Please do not use hexadecimal values 0x in this file.
+{
+ "Video": {
+ // feature list used for enable/disable
+ "Features": {
+ // This enables single buffer multi-offset feature for decoder input buffer
+ "api_same_input_buffer_support": true,
+ // This is used for encoder color space conversion with custom matrix.
+ // custom matrix is defined in kernel driver
+ // this triggers to enable CSC to 709LR with custom matrix
+ "enc_csc_custom_matrix": false,
+ // this enables adaptive blur if possible by encoder.
+ // this is preprocessing of encoder input YUV buffers
+ "enc_auto_blur": true,
+ // this enables encoding rotate by C2D. it is used for some low tier end chipsets which
+ // don't support rotate feature in video core. TODO - Rename as enc_vpss_rotation
+ "enc_c2d_rotation": false,
+ // target supports cvp for all encode usecases.
+ "enc_cvp_enable": true,
+ // encoder csc enable
+ "enc_csc_enable": false,
+ // perf hints support for decoder
+ "perf_control_enable": true,
+ // this enables pipeline code for querying capabilities and creating codecs
+ "pipelining": true,
+ // this enables pre-processing pipeline
+ "pre_processing_pipelining": false,
+ // It is used to enable fastCV engine for flip support in the absence of VPSS hardware
+ // support.
+ "enc_vpss_flip": true,
+ // this enables RGB conversion with image convertor
+ "rgb_image_converter": true,
+ // perf controller support for decoder and encoder
+ "perf_control_enable": true,
+ // this will enable the graphics pipeline for
+ // CSC and converting images to other format and
+ // Rotating the frame etc
+ "vtxr_enable": true,
+ // this will enable software I/O chache coherency
+ "sw_cache_coherency": false
+ },
+ "Presets": {
+ // this is used for secure decoding performance boost handling
+ // prefech sizes of internal & output buffers
+ // internal : 200 MB (200 X 1)
+ // output : 200 MB (12.5 X 16)
+ "dec_sec_prefetch_size_internal": 209715200,
+ "dec_sec_prefetch_size_output": 13434880,
+ // control to force enable linear color format for decoder
+ // if this is enable, then decoder will produce linear color format output.
+ // it is bitmask:
+ // 0x0: no override,
+ // 0x1: enable 8 bit: linear format. 10 bit: compressed format
+ // 0x2: 8 bit: compressed format. 10 bit: linear format
+ // 0x3: 8 bit: linear format. 10 bit: linear format
+ "dec_linear_color_format": 0,
+ // maximum MB/sec for default single non-ref b-frame enablement case
+ // 3840x2160@30fps
+ "enc_single_nonref_b_max_mbs_per_sec": 972000,
+ // maximum MB/frame for default adaptive b-frame enablement case
+ // 3840x2160/256
+ "enc_single_nonref_b_max_mbs_per_frame": 32400,
+ // maximum width for default adaptive b-frame enablement case
+ // Max Width=3840, Max Height=3840
+ "enc_single_nonref_b_max_width": 3840,
+ // maximum MB/sec for default Hier-B enablement case
+ // 1920x1088@60fps
+ "enc_hier_b_max_mbs_per_sec": 489600,
+ // maximum MB/frame for default Hier-B enablement case
+ // 1920x1088/256
+ "enc_hier_b_max_mbs_per_frame": 8160,
+ // maximum width for default Hier-B enablement case
+ // Max Width=1920, Max Height=1920
+ "enc_hier_b_max_width": 1920,
+ // maximum decoder output rate if it is Nuplayer path and
+ // player sets max refresh rate
+ "max_supported_render_rate": 120,
+ // control to force enable linear color format for encoder
+ // if this is enable, then encoder will ask camera via
+ // consumer flag to inform usage of linear color format.
+ // it is used only for camera path. can't be used for non-camera producer case
+ // it is bitmask:
+ // 0x0: no override,
+ // 0x1: enable 8 bit: linear format. 10 bit: compressed format
+ // 0x2: 8 bit: compressed format. 10 bit: linear format
+ // 0x3: 8 bit: linear format. 10 bit: linear format
+ "enc_linear_color_format": 0,
+ // override chroma qp offset value for 8 and 10 bits:
+ // default: 0
+ // allowed override value: -12
+ "enc_chroma_qp_offset_10_bit": 0,
+ "enc_chroma_qp_offset_8_bit": 0,
+ //encoder bitrate savings control (CAC) - content adaptive coding feature
+ // it is bitmask.
+ // 0x0: disable CAC
+ // 0x1: 8 bit: enable. 10 bit: disable
+ // 0x2: 8 bit: disable. 10 bit: enable
+ // 0x3: 8 bit: enable. 10 bit: enable
+ "enc_bitrate_savings": 3,
+ // minimum encoder bitrate boost
+ "enc_bitrate_boost": 25,
+ // maximum and minimum QPs for Encoders
+ // default: 10 - 40
+ // allowed override value: 0 - 51
+ "enc_qp_min": 10,
+ "enc_qp_max": 40,
+ // additional buffers to be added while computing pipeline delays
+ "pipeline_extra_output_buffers": 2,
+ // time threshold of output buffer allocation loop since last input buffer queued(ms)
+ // 0 --> no such limitation (loop until allocation done)
+ "max_retry_alloc_output_timeout": 10000,
+ // Frameworks adds 4 buffers to achive smoothness for all resolutions. To reduce memory usage
+ // for higher resolutions(> 4k) reduce the output delay by smoothnessFactor.
+ "smoothnessFactor": 4,
+ // override default primaries to BT709 for >=UHD decode
+ "default_primaries_override" : 0,
+
+ // WARNING:
+ // Please DON'T change these values, if you don't know what you are doing.
+ // These are the Video HAL capabilities. Video HAL may not function properly with wrong values.
+ // below are various capability used
+ "num_vpp_pipes": 2,
+ // video driver version capability used for skype MediaCodec
+ // Hex Value : 0xPPPPYYMM
+ // PPPP [2 Bytes] - Product ID
+ // YY [1 Byte ] - Year (last two digits of year {00..99})
+ // MM [1 Byte ] - Month (01..12)
+ "vt_driver_version": 553784585,
+ // maximum LTR cont for encoder
+ "ltr_max_count": 2,
+ // Encoder preprocessing: maximum encoder downscalar factor possible in width or height or both direction
+ "preprocess_max_downscale_factor": 8,
+ // encoder support rotation as preprocessing
+ "preprocess_rotation": 1,
+ // Allowed encoder Hier-P maximum layer count: [0 - 6]
+ "enc_hier_p_max_temporal_layer_count": 6,
+ // Allowed encoder Hier-B maximum layer count: [0 - 4]
+ "enc_hier_b_max_temporal_layer_count": 4
+ },
+ // list of codec plugin libraries to be loaded into codec registry
+ "QC2CodecPlugins": [
+ "libqc2vppfilter.so"
+ ],
+
+ // list of filters used in pre processing
+ // each filter shall have properties codec_name/lib_name/input_streams/output_streams
+ // input_streams lists the id of input streams those are consumed by the filter
+ // output streams lists the is of output streams those are generated by the filter
+ // main stream id must be 0
+ // An example multiple-stream topology:
+ // "QC2PreProcessingFilters": [
+ // {
+ // // do not include .secure filter
+ // // both non-secure and secure filters are covered by non-secure filter name
+ // "codec_name": "mock.c2.qti.filter.colorconverter",
+ // "lib_name": "libqcodec2_mock_color_converter.so",
+ // // the initial input stream must be main stream (id 0)
+ // "input_streams": [0],
+ // "output_streams": [0, 1]
+ // },
+ // {
+ // "codec_name": "mock.c2.qti.filter.vpp",
+ // "lib_name": "libqcodec2_mock_vpp.so",
+ // "input_streams": [0],
+ // "output_streams": [0]
+ // },
+ // {
+ // "codec_name": "mock.c2.qti.filter.saliency",
+ // "lib_name": "libqcodec2_mock_saliency.so",
+ // "input_streams": [1],
+ // "output_streams": [1]
+ // },
+ // {
+ // "codec_name": "mock.c2.qti.filter.streamintegrator",
+ // "lib_name": "libqcodec2_mock_stream_integrator.so",
+ // "input_streams": [0, 1],
+ // "output_streams": [0]
+ // }
+ // ],
+ //
+ "QC2PreProcessingFilters": [
+ {
+ // do not include .secure filter
+ // both non-secure and secure filters are covered by non-secure filter name
+ "codec_name": "c2.qti.colorconvert.filter",
+ "lib_name": "libqc2colorconvertfilter.so",
+ "input_streams": [0],
+ "output_streams": [0]
+ },
+ {
+ "codec_name": "mock.c2.qti.filter",
+ "lib_name": "libqcodec2_mockfilter.so",
+ "input_streams": [0],
+ "output_streams": [0]
+ }
+ ],
+
+ // List of HW codecs enabled for this target
+ "codecs-available": {
+ "decoders": [
+ "c2.qti.avc.decoder",
+ "c2.qti.avc.decoder.low_latency",
+ "c2.qti.hevc.decoder",
+ "c2.qti.hevc.decoder.low_latency",
+ "c2.qti.vp9.decoder",
+ "c2.qti.vp9.decoder.low_latency",
+ "c2.qti.avc.decoder.secure",
+ "c2.qti.hevc.decoder.secure",
+ "c2.qti.vp9.decoder.secure"
+ ],
+ "encoders": [
+ "c2.qti.avc.encoder",
+ "c2.qti.hevc.encoder",
+ "c2.qti.hevc.encoder.cq",
+ "c2.qti.heic.encoder",
+ "c2.qti.avc.encoder.secure",
+ "c2.qti.hevc.encoder.secure"
+ ]
+ },
+ "QC2PostProcessingFilters": {
+ "vppFilter": [
+ "c2.qti.vpp.filter",
+ "c2.qti.vpp.filter.secure"
+ ]
+ }
+ }
+}
diff --git a/proprietary/vendor/etc/media_diwali_v1/video_system_specs.json b/proprietary/vendor/etc/media_diwali_v1/video_system_specs.json
new file mode 100644
index 0000000..f4b2f30
--- /dev/null
+++ b/proprietary/vendor/etc/media_diwali_v1/video_system_specs.json
@@ -0,0 +1,230 @@
+// If you modify this file,
+// 1. Push it to /vendor/etc/video_system_specs.json on the device
+// 2. Kill media.hwcodec to get the new changed values.
+// Note: Please do not use hexadecimal values 0x in this file.
+{
+ "Video": {
+ // feature list used for enable/disable
+ "Features": {
+ // This enables single buffer multi-offset feature for decoder input buffer
+ "api_same_input_buffer_support": true,
+ // This is used for encoder color space conversion with custom matrix.
+ // custom matrix is defined in kernel driver
+ // this triggers to enable CSC to 709LR with custom matrix
+ "enc_csc_custom_matrix": false,
+ // this enables adaptive blur if possible by encoder.
+ // this is preprocessing of encoder input YUV buffers
+ "enc_auto_blur": true,
+ // this enables encoding rotate by C2D. it is used for some low tier end chipsets which
+ // don't support rotate feature in video core. TODO - Rename as enc_vpss_rotation
+ "enc_c2d_rotation": false,
+ // target supports cvp for all encode usecases.
+ "enc_cvp_enable": true,
+ // encoder csc enable
+ "enc_csc_enable": false,
+ // perf hints support for decoder
+ "perf_control_enable": true,
+ // this enables pipeline code for querying capabilities and creating codecs
+ "pipelining": true,
+ // this enables pre-processing pipeline
+ "pre_processing_pipelining": false,
+ // It is used to enable fastCV engine for flip support in the absence of VPSS hardware
+ // support.
+ "enc_vpss_flip": true,
+ // this enables RGB conversion with image convertor
+ "rgb_image_converter": true,
+ // perf controller support for decoder and encoder
+ "perf_control_enable": true,
+ // this will enable the graphics pipeline for
+ // CSC and converting images to other format and
+ // Rotating the frame etc
+ "vtxr_enable": true,
+ // this will enable software I/O chache coherency
+ "sw_cache_coherency": false
+ },
+ "Presets": {
+ // this is used for secure decoding performance boost handling
+ // prefech sizes of internal & output buffers
+ // internal : 200 MB (200 X 1)
+ // output : 200 MB (12.5 X 16)
+ "dec_sec_prefetch_size_internal": 209715200,
+ "dec_sec_prefetch_size_output": 13434880,
+ // control to force enable linear color format for decoder
+ // if this is enable, then decoder will produce linear color format output.
+ // it is bitmask:
+ // 0x0: no override,
+ // 0x1: enable 8 bit: linear format. 10 bit: compressed format
+ // 0x2: 8 bit: compressed format. 10 bit: linear format
+ // 0x3: 8 bit: linear format. 10 bit: linear format
+ "dec_linear_color_format": 0,
+ // maximum MB/sec for default single non-ref b-frame enablement case
+ // 3840x2160@30fps
+ "enc_single_nonref_b_max_mbs_per_sec": 972000,
+ // maximum MB/frame for default adaptive b-frame enablement case
+ // 3840x2160/256
+ "enc_single_nonref_b_max_mbs_per_frame": 32400,
+ // maximum width for default adaptive b-frame enablement case
+ // Max Width=3840, Max Height=3840
+ "enc_single_nonref_b_max_width": 3840,
+ // maximum MB/sec for default Hier-B enablement case
+ // 1920x1088@60fps
+ "enc_hier_b_max_mbs_per_sec": 489600,
+ // maximum MB/frame for default Hier-B enablement case
+ // 1920x1088/256
+ "enc_hier_b_max_mbs_per_frame": 8160,
+ // maximum width for default Hier-B enablement case
+ // Max Width=1920, Max Height=1920
+ "enc_hier_b_max_width": 1920,
+ // maximum decoder output rate if it is Nuplayer path and
+ // player sets max refresh rate
+ "max_supported_render_rate": 120,
+ // control to force enable linear color format for encoder
+ // if this is enable, then encoder will ask camera via
+ // consumer flag to inform usage of linear color format.
+ // it is used only for camera path. can't be used for non-camera producer case
+ // it is bitmask:
+ // 0x0: no override,
+ // 0x1: enable 8 bit: linear format. 10 bit: compressed format
+ // 0x2: 8 bit: compressed format. 10 bit: linear format
+ // 0x3: 8 bit: linear format. 10 bit: linear format
+ "enc_linear_color_format": 0,
+ // override chroma qp offset value for 8 and 10 bits:
+ // default: 0
+ // allowed override value: -12
+ "enc_chroma_qp_offset_10_bit": 0,
+ "enc_chroma_qp_offset_8_bit": 0,
+ //encoder bitrate savings control (CAC) - content adaptive coding feature
+ // it is bitmask.
+ // 0x0: disable CAC
+ // 0x1: 8 bit: enable. 10 bit: disable
+ // 0x2: 8 bit: disable. 10 bit: enable
+ // 0x3: 8 bit: enable. 10 bit: enable
+ "enc_bitrate_savings": 3,
+ // minimum encoder bitrate boost
+ "enc_bitrate_boost": 25,
+ // maximum and minimum QPs for Encoders
+ // default: 10 - 40
+ // allowed override value: 0 - 51
+ "enc_qp_min": 10,
+ "enc_qp_max": 40,
+ // additional buffers to be added while computing pipeline delays
+ "pipeline_extra_output_buffers": 2,
+ // time threshold of output buffer allocation loop since last input buffer queued(ms)
+ // 0 --> no such limitation (loop until allocation done)
+ "max_retry_alloc_output_timeout": 10000,
+ // Frameworks adds 4 buffers to achive smoothness for all resolutions. To reduce memory usage
+ // for higher resolutions(> 4k) reduce the output delay by smoothnessFactor.
+ "smoothnessFactor": 0,
+ // override default primaries to BT709 for >=UHD decode
+ "default_primaries_override" : 0,
+
+ // WARNING:
+ // Please DON'T change these values, if you don't know what you are doing.
+ // These are the Video HAL capabilities. Video HAL may not function properly with wrong values.
+ // below are various capability used
+ "num_vpp_pipes": 2,
+ // video driver version capability used for skype MediaCodec
+ // Hex Value : 0xPPPPYYMM
+ // PPPP [2 Bytes] - Product ID
+ // YY [1 Byte ] - Year (last two digits of year {00..99})
+ // MM [1 Byte ] - Month (01..12)
+ "vt_driver_version": 553784585,
+ // maximum LTR cont for encoder
+ "ltr_max_count": 2,
+ // Encoder preprocessing: maximum encoder downscalar factor possible in width or height or both direction
+ "preprocess_max_downscale_factor": 8,
+ // encoder support rotation as preprocessing
+ "preprocess_rotation": 1,
+ // Allowed encoder Hier-P maximum layer count: [0 - 6]
+ "enc_hier_p_max_temporal_layer_count": 6,
+ // Allowed encoder Hier-B maximum layer count: [0 - 4]
+ "enc_hier_b_max_temporal_layer_count": 4
+ },
+ // list of codec plugin libraries to be loaded into codec registry
+ "QC2CodecPlugins": [
+ "libqc2vppfilter.so"
+ ],
+
+ // list of filters used in pre processing
+ // each filter shall have properties codec_name/lib_name/input_streams/output_streams
+ // input_streams lists the id of input streams those are consumed by the filter
+ // output streams lists the is of output streams those are generated by the filter
+ // main stream id must be 0
+ // An example multiple-stream topology:
+ // "QC2PreProcessingFilters": [
+ // {
+ // // do not include .secure filter
+ // // both non-secure and secure filters are covered by non-secure filter name
+ // "codec_name": "mock.c2.qti.filter.colorconverter",
+ // "lib_name": "libqcodec2_mock_color_converter.so",
+ // // the initial input stream must be main stream (id 0)
+ // "input_streams": [0],
+ // "output_streams": [0, 1]
+ // },
+ // {
+ // "codec_name": "mock.c2.qti.filter.vpp",
+ // "lib_name": "libqcodec2_mock_vpp.so",
+ // "input_streams": [0],
+ // "output_streams": [0]
+ // },
+ // {
+ // "codec_name": "mock.c2.qti.filter.saliency",
+ // "lib_name": "libqcodec2_mock_saliency.so",
+ // "input_streams": [1],
+ // "output_streams": [1]
+ // },
+ // {
+ // "codec_name": "mock.c2.qti.filter.streamintegrator",
+ // "lib_name": "libqcodec2_mock_stream_integrator.so",
+ // "input_streams": [0, 1],
+ // "output_streams": [0]
+ // }
+ // ],
+ //
+ "QC2PreProcessingFilters": [
+ {
+ // do not include .secure filter
+ // both non-secure and secure filters are covered by non-secure filter name
+ "codec_name": "c2.qti.colorconvert.filter",
+ "lib_name": "libqc2colorconvertfilter.so",
+ "input_streams": [0],
+ "output_streams": [0]
+ },
+ {
+ "codec_name": "mock.c2.qti.filter",
+ "lib_name": "libqcodec2_mockfilter.so",
+ "input_streams": [0],
+ "output_streams": [0]
+ }
+ ],
+
+ // List of HW codecs enabled for this target
+ "codecs-available": {
+ "decoders": [
+ "c2.qti.avc.decoder",
+ "c2.qti.avc.decoder.low_latency",
+ "c2.qti.hevc.decoder",
+ "c2.qti.hevc.decoder.low_latency",
+ "c2.qti.vp9.decoder",
+ "c2.qti.vp9.decoder.low_latency",
+ "c2.qti.avc.decoder.secure",
+ "c2.qti.hevc.decoder.secure",
+ "c2.qti.vp9.decoder.secure"
+ ],
+ "encoders": [
+ "c2.qti.avc.encoder",
+ "c2.qti.hevc.encoder",
+ "c2.qti.hevc.encoder.cq",
+ "c2.qti.heic.encoder",
+ "c2.qti.avc.encoder.secure",
+ "c2.qti.hevc.encoder.secure"
+ ]
+ },
+ "QC2PostProcessingFilters": {
+ "vppFilter": [
+ "c2.qti.vpp.filter",
+ "c2.qti.vpp.filter.secure"
+ ]
+ }
+ }
+}
diff --git a/proprietary/vendor/etc/media_diwali_v2/video_system_specs.json b/proprietary/vendor/etc/media_diwali_v2/video_system_specs.json
new file mode 100644
index 0000000..f4b2f30
--- /dev/null
+++ b/proprietary/vendor/etc/media_diwali_v2/video_system_specs.json
@@ -0,0 +1,230 @@
+// If you modify this file,
+// 1. Push it to /vendor/etc/video_system_specs.json on the device
+// 2. Kill media.hwcodec to get the new changed values.
+// Note: Please do not use hexadecimal values 0x in this file.
+{
+ "Video": {
+ // feature list used for enable/disable
+ "Features": {
+ // This enables single buffer multi-offset feature for decoder input buffer
+ "api_same_input_buffer_support": true,
+ // This is used for encoder color space conversion with custom matrix.
+ // custom matrix is defined in kernel driver
+ // this triggers to enable CSC to 709LR with custom matrix
+ "enc_csc_custom_matrix": false,
+ // this enables adaptive blur if possible by encoder.
+ // this is preprocessing of encoder input YUV buffers
+ "enc_auto_blur": true,
+ // this enables encoding rotate by C2D. it is used for some low tier end chipsets which
+ // don't support rotate feature in video core. TODO - Rename as enc_vpss_rotation
+ "enc_c2d_rotation": false,
+ // target supports cvp for all encode usecases.
+ "enc_cvp_enable": true,
+ // encoder csc enable
+ "enc_csc_enable": false,
+ // perf hints support for decoder
+ "perf_control_enable": true,
+ // this enables pipeline code for querying capabilities and creating codecs
+ "pipelining": true,
+ // this enables pre-processing pipeline
+ "pre_processing_pipelining": false,
+ // It is used to enable fastCV engine for flip support in the absence of VPSS hardware
+ // support.
+ "enc_vpss_flip": true,
+ // this enables RGB conversion with image convertor
+ "rgb_image_converter": true,
+ // perf controller support for decoder and encoder
+ "perf_control_enable": true,
+ // this will enable the graphics pipeline for
+ // CSC and converting images to other format and
+ // Rotating the frame etc
+ "vtxr_enable": true,
+ // this will enable software I/O chache coherency
+ "sw_cache_coherency": false
+ },
+ "Presets": {
+ // this is used for secure decoding performance boost handling
+ // prefech sizes of internal & output buffers
+ // internal : 200 MB (200 X 1)
+ // output : 200 MB (12.5 X 16)
+ "dec_sec_prefetch_size_internal": 209715200,
+ "dec_sec_prefetch_size_output": 13434880,
+ // control to force enable linear color format for decoder
+ // if this is enable, then decoder will produce linear color format output.
+ // it is bitmask:
+ // 0x0: no override,
+ // 0x1: enable 8 bit: linear format. 10 bit: compressed format
+ // 0x2: 8 bit: compressed format. 10 bit: linear format
+ // 0x3: 8 bit: linear format. 10 bit: linear format
+ "dec_linear_color_format": 0,
+ // maximum MB/sec for default single non-ref b-frame enablement case
+ // 3840x2160@30fps
+ "enc_single_nonref_b_max_mbs_per_sec": 972000,
+ // maximum MB/frame for default adaptive b-frame enablement case
+ // 3840x2160/256
+ "enc_single_nonref_b_max_mbs_per_frame": 32400,
+ // maximum width for default adaptive b-frame enablement case
+ // Max Width=3840, Max Height=3840
+ "enc_single_nonref_b_max_width": 3840,
+ // maximum MB/sec for default Hier-B enablement case
+ // 1920x1088@60fps
+ "enc_hier_b_max_mbs_per_sec": 489600,
+ // maximum MB/frame for default Hier-B enablement case
+ // 1920x1088/256
+ "enc_hier_b_max_mbs_per_frame": 8160,
+ // maximum width for default Hier-B enablement case
+ // Max Width=1920, Max Height=1920
+ "enc_hier_b_max_width": 1920,
+ // maximum decoder output rate if it is Nuplayer path and
+ // player sets max refresh rate
+ "max_supported_render_rate": 120,
+ // control to force enable linear color format for encoder
+ // if this is enable, then encoder will ask camera via
+ // consumer flag to inform usage of linear color format.
+ // it is used only for camera path. can't be used for non-camera producer case
+ // it is bitmask:
+ // 0x0: no override,
+ // 0x1: enable 8 bit: linear format. 10 bit: compressed format
+ // 0x2: 8 bit: compressed format. 10 bit: linear format
+ // 0x3: 8 bit: linear format. 10 bit: linear format
+ "enc_linear_color_format": 0,
+ // override chroma qp offset value for 8 and 10 bits:
+ // default: 0
+ // allowed override value: -12
+ "enc_chroma_qp_offset_10_bit": 0,
+ "enc_chroma_qp_offset_8_bit": 0,
+ //encoder bitrate savings control (CAC) - content adaptive coding feature
+ // it is bitmask.
+ // 0x0: disable CAC
+ // 0x1: 8 bit: enable. 10 bit: disable
+ // 0x2: 8 bit: disable. 10 bit: enable
+ // 0x3: 8 bit: enable. 10 bit: enable
+ "enc_bitrate_savings": 3,
+ // minimum encoder bitrate boost
+ "enc_bitrate_boost": 25,
+ // maximum and minimum QPs for Encoders
+ // default: 10 - 40
+ // allowed override value: 0 - 51
+ "enc_qp_min": 10,
+ "enc_qp_max": 40,
+ // additional buffers to be added while computing pipeline delays
+ "pipeline_extra_output_buffers": 2,
+ // time threshold of output buffer allocation loop since last input buffer queued(ms)
+ // 0 --> no such limitation (loop until allocation done)
+ "max_retry_alloc_output_timeout": 10000,
+ // Frameworks adds 4 buffers to achive smoothness for all resolutions. To reduce memory usage
+ // for higher resolutions(> 4k) reduce the output delay by smoothnessFactor.
+ "smoothnessFactor": 0,
+ // override default primaries to BT709 for >=UHD decode
+ "default_primaries_override" : 0,
+
+ // WARNING:
+ // Please DON'T change these values, if you don't know what you are doing.
+ // These are the Video HAL capabilities. Video HAL may not function properly with wrong values.
+ // below are various capability used
+ "num_vpp_pipes": 2,
+ // video driver version capability used for skype MediaCodec
+ // Hex Value : 0xPPPPYYMM
+ // PPPP [2 Bytes] - Product ID
+ // YY [1 Byte ] - Year (last two digits of year {00..99})
+ // MM [1 Byte ] - Month (01..12)
+ "vt_driver_version": 553784585,
+ // maximum LTR cont for encoder
+ "ltr_max_count": 2,
+ // Encoder preprocessing: maximum encoder downscalar factor possible in width or height or both direction
+ "preprocess_max_downscale_factor": 8,
+ // encoder support rotation as preprocessing
+ "preprocess_rotation": 1,
+ // Allowed encoder Hier-P maximum layer count: [0 - 6]
+ "enc_hier_p_max_temporal_layer_count": 6,
+ // Allowed encoder Hier-B maximum layer count: [0 - 4]
+ "enc_hier_b_max_temporal_layer_count": 4
+ },
+ // list of codec plugin libraries to be loaded into codec registry
+ "QC2CodecPlugins": [
+ "libqc2vppfilter.so"
+ ],
+
+ // list of filters used in pre processing
+ // each filter shall have properties codec_name/lib_name/input_streams/output_streams
+ // input_streams lists the id of input streams those are consumed by the filter
+ // output streams lists the is of output streams those are generated by the filter
+ // main stream id must be 0
+ // An example multiple-stream topology:
+ // "QC2PreProcessingFilters": [
+ // {
+ // // do not include .secure filter
+ // // both non-secure and secure filters are covered by non-secure filter name
+ // "codec_name": "mock.c2.qti.filter.colorconverter",
+ // "lib_name": "libqcodec2_mock_color_converter.so",
+ // // the initial input stream must be main stream (id 0)
+ // "input_streams": [0],
+ // "output_streams": [0, 1]
+ // },
+ // {
+ // "codec_name": "mock.c2.qti.filter.vpp",
+ // "lib_name": "libqcodec2_mock_vpp.so",
+ // "input_streams": [0],
+ // "output_streams": [0]
+ // },
+ // {
+ // "codec_name": "mock.c2.qti.filter.saliency",
+ // "lib_name": "libqcodec2_mock_saliency.so",
+ // "input_streams": [1],
+ // "output_streams": [1]
+ // },
+ // {
+ // "codec_name": "mock.c2.qti.filter.streamintegrator",
+ // "lib_name": "libqcodec2_mock_stream_integrator.so",
+ // "input_streams": [0, 1],
+ // "output_streams": [0]
+ // }
+ // ],
+ //
+ "QC2PreProcessingFilters": [
+ {
+ // do not include .secure filter
+ // both non-secure and secure filters are covered by non-secure filter name
+ "codec_name": "c2.qti.colorconvert.filter",
+ "lib_name": "libqc2colorconvertfilter.so",
+ "input_streams": [0],
+ "output_streams": [0]
+ },
+ {
+ "codec_name": "mock.c2.qti.filter",
+ "lib_name": "libqcodec2_mockfilter.so",
+ "input_streams": [0],
+ "output_streams": [0]
+ }
+ ],
+
+ // List of HW codecs enabled for this target
+ "codecs-available": {
+ "decoders": [
+ "c2.qti.avc.decoder",
+ "c2.qti.avc.decoder.low_latency",
+ "c2.qti.hevc.decoder",
+ "c2.qti.hevc.decoder.low_latency",
+ "c2.qti.vp9.decoder",
+ "c2.qti.vp9.decoder.low_latency",
+ "c2.qti.avc.decoder.secure",
+ "c2.qti.hevc.decoder.secure",
+ "c2.qti.vp9.decoder.secure"
+ ],
+ "encoders": [
+ "c2.qti.avc.encoder",
+ "c2.qti.hevc.encoder",
+ "c2.qti.hevc.encoder.cq",
+ "c2.qti.heic.encoder",
+ "c2.qti.avc.encoder.secure",
+ "c2.qti.hevc.encoder.secure"
+ ]
+ },
+ "QC2PostProcessingFilters": {
+ "vppFilter": [
+ "c2.qti.vpp.filter",
+ "c2.qti.vpp.filter.secure"
+ ]
+ }
+ }
+}
diff --git a/proprietary/vendor/etc/media_profiles_diwali_v0.xml b/proprietary/vendor/etc/media_profiles_diwali_v0.xml
new file mode 100644
index 0000000..cb84d3d
--- /dev/null
+++ b/proprietary/vendor/etc/media_profiles_diwali_v0.xml
@@ -0,0 +1,1801 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/proprietary/vendor/etc/media_profiles_diwali_v1.xml b/proprietary/vendor/etc/media_profiles_diwali_v1.xml
new file mode 100644
index 0000000..cb84d3d
--- /dev/null
+++ b/proprietary/vendor/etc/media_profiles_diwali_v1.xml
@@ -0,0 +1,1801 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/proprietary/vendor/etc/media_profiles_diwali_v2.xml b/proprietary/vendor/etc/media_profiles_diwali_v2.xml
new file mode 100644
index 0000000..f02f501
--- /dev/null
+++ b/proprietary/vendor/etc/media_profiles_diwali_v2.xml
@@ -0,0 +1,1762 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/sm8450-common-vendor.mk b/sm8450-common-vendor.mk
index dbb1ed6..7bfef38 100644
--- a/sm8450-common-vendor.mk
+++ b/sm8450-common-vendor.mk
@@ -380,12 +380,24 @@ PRODUCT_COPY_FILES += \
vendor/xiaomi/sm8450-common/proprietary/vendor/etc/lm/sPLHFeature.xml:$(TARGET_COPY_OUT_VENDOR)/etc/lm/sPLHFeature.xml \
vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_cape/video_system_specs.json:$(TARGET_COPY_OUT_VENDOR)/etc/media_cape/video_system_specs.json \
vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_codecs_cape.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_cape.xml \
+ vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_codecs_diwali_v0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_diwali_v0.xml \
+ vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_codecs_diwali_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_diwali_v1.xml \
+ vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_codecs_diwali_v2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_diwali_v2.xml \
vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_codecs_performance_cape.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_cape.xml \
+ vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_codecs_performance_diwali_v0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_diwali_v0.xml \
+ vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_codecs_performance_diwali_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_diwali_v1.xml \
+ vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_codecs_performance_diwali_v2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_diwali_v2.xml \
vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_codecs_performance_taro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_taro.xml \
vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_codecs_performance_ukee.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_ukee.xml \
vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_codecs_taro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_taro.xml \
vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_codecs_ukee.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_ukee.xml \
+ vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_diwali_v0/video_system_specs.json:$(TARGET_COPY_OUT_VENDOR)/etc/media_diwali_v0/video_system_specs.json \
+ vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_diwali_v1/video_system_specs.json:$(TARGET_COPY_OUT_VENDOR)/etc/media_diwali_v1/video_system_specs.json \
+ vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_diwali_v2/video_system_specs.json:$(TARGET_COPY_OUT_VENDOR)/etc/media_diwali_v2/video_system_specs.json \
vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_profiles_cape.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_cape.xml \
+ vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_profiles_diwali_v0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_diwali_v0.xml \
+ vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_profiles_diwali_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_diwali_v1.xml \
+ vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_profiles_diwali_v2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_diwali_v2.xml \
vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_profiles_taro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_taro.xml \
vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_profiles_ukee.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_ukee.xml \
vendor/xiaomi/sm8450-common/proprietary/vendor/etc/media_taro/video_system_specs.json:$(TARGET_COPY_OUT_VENDOR)/etc/media_taro/video_system_specs.json \