audio: Factor out offload code

Change-Id: I94a592262016d954318dab3d1339504e54f83681
diff --git a/audio/compress_offload.h b/audio/compress_offload.h
new file mode 100644
index 0000000..601445f
--- /dev/null
+++ b/audio/compress_offload.h
@@ -0,0 +1,52 @@
+/*
+ * Copyright (C) 2013 The Android Open Source Project
+ * Copyright (C) 2017 Christopher N. Hesse <raymanfx@gmail.com>
+ *
+ * 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.
+ */
+
+#ifndef COMPRESS_OFFLOAD_H
+#define COMPRESS_OFFLOAD_H
+
+void stop_compressed_output_l(struct stream_out *out);
+
+int create_offload_callback_thread(struct stream_out *out);
+
+int destroy_offload_callback_thread(struct stream_out *out);
+
+int parse_compress_metadata(struct stream_out *out, struct str_parms *parms);
+
+int stop_output_offload_stream(struct stream_out *out, bool *disable);
+
+int out_set_offload_parameters(struct audio_device *adev, struct audio_usecase *uc_info);
+
+ssize_t out_write_offload(struct audio_stream_out *stream, const void *buffer,
+                         size_t bytes);
+
+int out_get_render_offload_position(struct stream_out *out,
+                                   uint32_t *dsp_frames);
+
+int out_get_presentation_offload_position(struct stream_out *out, uint64_t *frames,
+                                   struct timespec *timestamp);
+
+int out_pause_offload(struct stream_out *out);
+
+int out_resume_offload(struct stream_out *out);
+
+int out_drain_offload(struct stream_out *out, audio_drain_type_t type);
+
+int out_flush_offload(struct stream_out *out);
+
+int out_set_offload_volume(float left, float right);
+
+#endif // COMPRESS_OFFLOAD_H