diff --git a/audio/5.0/types.hal b/audio/5.0/types.hal
index f58bfb0..988f584 100644
--- a/audio/5.0/types.hal
+++ b/audio/5.0/types.hal
@@ -122,39 +122,6 @@
     NOT_FULL = 1 << 1
 };
 
-/** Metadata of a playback track for a StreamOut. */
-struct PlaybackTrackMetadata {
-    AudioUsage usage;
-    AudioContentType contentType;
-    /**
-     * Positive linear gain applied to the track samples. 0 being muted and 1 is no attenuation,
-     * 2 means double amplification...
-     * Must not be negative.
-     */
-    float gain;
-};
-
-/** Metadatas of the source of a StreamOut. */
-struct SourceMetadata {
-    vec<PlaybackTrackMetadata> tracks;
-};
-
-/** Metadata of a record track for a StreamIn. */
-struct RecordTrackMetadata {
-    AudioSource source;
-    /**
-     * Positive linear gain applied to the track samples. 0 being muted and 1 is no attenuation,
-     * 2 means double amplification...
-     * Must not be negative.
-     */
-    float gain;
-};
-
-/** Metadatas of the source of a StreamIn. */
-struct SinkMetadata {
-    vec<RecordTrackMetadata> tracks;
-};
-
 /*
  * Microphone information
  *
diff --git a/audio/common/5.0/types.hal b/audio/common/5.0/types.hal
index eb09b1f..2ce2929 100644
--- a/audio/common/5.0/types.hal
+++ b/audio/common/5.0/types.hal
@@ -706,6 +706,39 @@
     uint64_t frameCount;
 };
 
+/** Metadata of a playback track for a StreamOut. */
+struct PlaybackTrackMetadata {
+    AudioUsage usage;
+    AudioContentType contentType;
+    /**
+     * Positive linear gain applied to the track samples. 0 being muted and 1 is no attenuation,
+     * 2 means double amplification...
+     * Must not be negative.
+     */
+    float gain;
+};
+
+/** Metadatas of the source of a StreamOut. */
+struct SourceMetadata {
+    vec<PlaybackTrackMetadata> tracks;
+};
+
+/** Metadata of a record track for a StreamIn. */
+struct RecordTrackMetadata {
+    AudioSource source;
+    /**
+     * Positive linear gain applied to the track samples. 0 being muted and 1 is no attenuation,
+     * 2 means double amplification...
+     * Must not be negative.
+     */
+    float gain;
+};
+
+/** Metadatas of the source of a StreamIn. */
+struct SinkMetadata {
+    vec<RecordTrackMetadata> tracks;
+};
+
 
 /*
  *
