aboutsummaryrefslogtreecommitdiff
path: root/src/pcm_export.h
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2012-03-21 20:43:33 +0100
committerMax Kellermann <max@duempel.org>2012-03-22 00:33:40 +0100
commit5b61e077e0e3d84f17a410d7327e2a7a73613aad (patch)
treebb079cf521666bef65c64ae0362b1e7618ee64fa /src/pcm_export.h
parent921cc3e5db7a07ba683dae7834c6cb2e03a6a8f3 (diff)
pcm_export: add option "pack"
Converts padded 24 bit samples to packed 24 bit samples. Will replace the packed S24 sample format, which is not used internally.
Diffstat (limited to 'src/pcm_export.h')
-rw-r--r--src/pcm_export.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/pcm_export.h b/src/pcm_export.h
index 570092eb..7dc9f5f0 100644
--- a/src/pcm_export.h
+++ b/src/pcm_export.h
@@ -35,6 +35,13 @@ struct audio_format;
*/
struct pcm_export_state {
/**
+ * The buffer used to pack samples, removing padding.
+ *
+ * @see #reverse_endian
+ */
+ struct pcm_buffer pack_buffer;
+
+ /**
* The buffer used to reverse the byte order.
*
* @see #reverse_endian
@@ -42,6 +49,11 @@ struct pcm_export_state {
struct pcm_buffer reverse_buffer;
/**
+ * Pack 24 bit samples?
+ */
+ bool pack24;
+
+ /**
* Export the samples in reverse byte order? A non-zero value
* means the option is enabled and represents the size of each
* sample (2 or bigger).
@@ -72,7 +84,7 @@ pcm_export_deinit(struct pcm_export_state *state);
void
pcm_export_open(struct pcm_export_state *state,
enum sample_format sample_format,
- bool reverse_endian);
+ bool pack, bool reverse_endian);
/**
* Export a PCM buffer.