From 111558fdfe9e191166d88a42c9a268517a7742d8 Mon Sep 17 00:00:00 2001
From: Arun Kumar Dasari <Arun@codeaurora.org>
Date: Mon, 6 Jun 2016 16:34:19 +0530
Subject: [PATCH] Tinycompress : Add compress_set_next_track_param function

Added compress_set_next_track_param function in compress.c
---
 include/tinycompress/tinycompress.h | 12 ++++++++++++
 src/lib/compress.c                  | 11 +++++++++++
 2 files changed, 23 insertions(+)

diff --git a/include/tinycompress/tinycompress.h b/include/tinycompress/tinycompress.h
index 68626a4..58bf7f6 100644
--- a/include/tinycompress/tinycompress.h
+++ b/include/tinycompress/tinycompress.h
@@ -239,6 +239,18 @@ int compress_set_gapless_metadata(struct compress *compress,
 			struct compr_gapless_mdata *mdata);
 
 /*
+ * compress_set_next_track_param: set params of next compress stream in gapless
+ *
+ * return 0 on success, negative on error
+ *
+ * @compress: compress stream for which codec options has to be set
+ * @codec_options: codec options of compress stream based on codec type
+ */
+
+int compress_set_next_track_param(struct compress *compress,
+			union snd_codec_options *codec_options);
+
+/*
  * is_codec_supported:check if the given codec is supported
  * returns true when supported, false if not
  *
diff --git a/src/lib/compress.c b/src/lib/compress.c
index b6df7a3..6a0c72f 100644
--- a/src/lib/compress.c
+++ b/src/lib/compress.c
@@ -575,6 +575,17 @@ int compress_set_gapless_metadata(struct compress *compress,
 	return 0;
 }
 
+int compress_set_next_track_param(struct compress *compress,
+	union snd_codec_options *codec_options)
+{
+	if (!is_compress_running(compress))
+		return oops(compress, ENODEV, "device not ready");
+
+	if (ioctl(compress->fd, SNDRV_COMPRESS_SET_NEXT_TRACK_PARAM, codec_options))
+		return oops(compress, errno, "cannot set next track params\n");
+	return 0;
+}
+
 bool is_codec_supported(unsigned int card, unsigned int device,
 		unsigned int flags, struct snd_codec *codec)
 {
-- 
1.9.1

