Adding test for "Digital" devices to use in filter AudioDeviceInfo attributes.

Bug: 21903975
Change-Id: I767629f8a061815379352a077c5197b1dfece647
diff --git a/audio/include/system/audio.h b/audio/include/system/audio.h
index 5cf8bdb..0998ea2 100644
--- a/audio/include/system/audio.h
+++ b/audio/include/system/audio.h
@@ -648,7 +648,6 @@
                                  AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT),
     AUDIO_DEVICE_OUT_ALL_USB  = (AUDIO_DEVICE_OUT_USB_ACCESSORY |
                                  AUDIO_DEVICE_OUT_USB_DEVICE),
-
     /* input devices */
     AUDIO_DEVICE_IN_COMMUNICATION         = AUDIO_DEVICE_BIT_IN | 0x1,
     AUDIO_DEVICE_IN_AMBIENT               = AUDIO_DEVICE_BIT_IN | 0x2,
@@ -1409,6 +1408,20 @@
     return strdup(param);
 }
 
+static inline bool audio_device_is_digital(audio_devices_t device) {
+    if ((device & AUDIO_DEVICE_BIT_IN) != 0) {
+        // input
+        return (device & (AUDIO_DEVICE_IN_ALL_USB |
+                          AUDIO_DEVICE_IN_HDMI |
+                          AUDIO_DEVICE_IN_SPDIF)) != 0;
+    } else {
+        // output
+        return (device & (AUDIO_DEVICE_OUT_ALL_USB |
+                          AUDIO_DEVICE_OUT_HDMI |
+                          AUDIO_DEVICE_OUT_HDMI_ARC |
+                          AUDIO_DEVICE_OUT_SPDIF)) != 0;
+    }
+}
 
 __END_DECLS