Oriole/Raven: enable Dolby DD+ decoder

Bug: 225220771
Bug: 198197610
Test: playback of EAC-3 file makes air vibrate

Change-Id: I88f2bc9fae6eb8a5e76156bc640045679d1d749a
diff --git a/device-oriole.mk b/device-oriole.mk
index 575ed1b..7bde14e 100644
--- a/device-oriole.mk
+++ b/device-oriole.mk
@@ -242,3 +242,13 @@
 # Device features
 PRODUCT_COPY_FILES += \
     frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml
+
+# Dolby integration
+-include vendor/dolby/ds/dolby-buildspec.mk
+$(call inherit-product-if-exists, vendor/dolby/ds/dolby-product.mk)
+#  overwrite file coming from device/google/gs101/media_codecs_bo_c2.xml
+PRODUCT_COPY_FILES := \
+    device/google/raviole/media_codecs_dolby_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_c2.xml \
+    $(PRODUCT_COPY_FILES)
+
+PRODUCT_RESTRICT_VENDOR_FILES := false
diff --git a/device-raven.mk b/device-raven.mk
index 9522635..91c6ea8 100644
--- a/device-raven.mk
+++ b/device-raven.mk
@@ -259,3 +259,13 @@
 # Device features
 PRODUCT_COPY_FILES += \
     frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml
+
+# Dolby integration
+-include vendor/dolby/ds/dolby-buildspec.mk
+$(call inherit-product-if-exists, vendor/dolby/ds/dolby-product.mk)
+#  overwrite file coming from device/google/gs101/media_codecs_bo_c2.xml
+PRODUCT_COPY_FILES := \
+    device/google/raviole/media_codecs_dolby_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_c2.xml \
+    $(PRODUCT_COPY_FILES)
+
+PRODUCT_RESTRICT_VENDOR_FILES := false
diff --git a/media_codecs_dolby_c2.xml b/media_codecs_dolby_c2.xml
new file mode 100644
index 0000000..e7ecfd9
--- /dev/null
+++ b/media_codecs_dolby_c2.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!-- Copyright 2022 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.
+-->
+<MediaCodecs>
+    <Include href="media_codecs_aosp_c2.xml" />
+    <Decoders>
+        <MediaCodec name="c2.google.av1.decoder" type="video/av01">
+          <Limit name="size" min="96x96" max="3840x2160" />
+          <Limit name="alignment" value="2x2" />
+          <Limit name="block-size" value="16x16" />
+          <Limit name="block-count" range="36-32400" />
+          <Limit name="blocks-per-second" min="24" max="1944000" />
+          <Limit name="bitrate" range="1-120000000" />
+          <Limit name="frame-rate" range="1-180" />
+          <Limit name="concurrent-instances" max="16" />
+          <Limit name="performance-point-1280x720" value="180" />
+          <Limit name="performance-point-1920x1080" value="120" />
+          <Limit name="performance-point-3840x2160" value="60" />
+          <Feature name="adaptive-playback" />
+          <Feature name="can-swap-width-height" value="1" />
+        </MediaCodec>
+        <MediaCodec name="c2.google.av1.decoder.secure" type="video/av01">
+          <Limit name="size" min="96x96" max="3840x2160" />
+          <Limit name="alignment" value="2x2" />
+          <Limit name="block-size" value="16x16" />
+          <Limit name="block-count" range="36-32400" />
+          <Limit name="blocks-per-second" min="24" max="1944000" />
+          <Limit name="bitrate" range="1-120000000" />
+          <Limit name="frame-rate" range="1-180" />
+          <Limit name="concurrent-instances" max="16" />
+          <Limit name="performance-point-1280x720" value="180" />
+          <Limit name="performance-point-1920x1080" value="120" />
+          <Limit name="performance-point-3840x2160" value="60" />
+          <Feature name="adaptive-playback" />
+          <Feature name="secure-playback" required="true" />
+          <Feature name="can-swap-width-height" value="1" />
+        </MediaCodec>
+        <MediaCodec name="c2.dolby.eac3.decoder">
+            <Type name="audio/ac3">
+                <Alias name="OMX.dolby.ac3.decoder"/>
+                <Limit name="channel-count" max="6"/>
+                <Limit name="sample-rate" ranges="32000,44100,48000"/>
+                <Limit name="bitrate" range="32000-640000"/>
+            </Type>
+            <Attribute name="software-codec"/>
+            <Type name="audio/eac3">
+                <Alias name="OMX.dolby.eac3.decoder"/>
+                <Limit name="channel-count" max="8"/>
+                <Limit name="sample-rate" ranges="32000,44100,48000"/>
+                <Limit name="bitrate" range="32000-6144000"/>
+            </Type>
+        </MediaCodec>
+    </Decoders>
+</MediaCodecs>