+/*
+ * Copyright (C) 2013-2014 Andre Noll <maan@systemlinux.org>
+ *
+ * Licensed under the GPL v2. For licencing details see COPYING.
+ */
+
+/**
+ * \file opus_common.h
+ * Common declarations for the opus decoder and audio format handler.
+ */
+
+/** Various bits stored in the header of an opus stream. */
+struct opus_header {
+ /** lower 4 bits of the version byte, must be 0. */
+ int version;
+ /** 1..255 */
+ int channels;
+ /** Number of bytes to skip from the beginning. */
+ int preskip;
+ /** Sample rate of the input stream, used by the audio format handler. */
+ ogg_uint32_t input_sample_rate;
+ /** In dB, should be zero whenever possible. */
+ int gain;
+ /** Number of logical streams (usually 1). */
+ int nb_streams;
+ /** Number of streams to decode as 2 channel streams. */
+ int nb_coupled;
+ /** Mapping from coded channels to output channels. */
+ unsigned char stream_map[255];
+};
+
+int opus_parse_header(const char *packet, int len, struct opus_header *h);