summaryrefslogtreecommitdiffstats
path: root/maemo/constants.h
diff options
context:
space:
mode:
Diffstat (limited to 'maemo/constants.h')
-rw-r--r--maemo/constants.h199
1 files changed, 199 insertions, 0 deletions
diff --git a/maemo/constants.h b/maemo/constants.h
new file mode 100644
index 0000000..d0ad27c
--- /dev/null
+++ b/maemo/constants.h
@@ -0,0 +1,199 @@
+/**
+ * @file constants.h
+ * @brief PCM Task node protocol constants definition
+ * <p>
+ * Copyright (C) 2006 Nokia Corporation
+ * <p>
+ * Contact: Eduardo Bezerra Valentin <eduardo.valentin@indt.org.br>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ * */
+#ifndef _CONSTANTS_H
+#define _CONSTANTS_H
+/**
+ * Commands
+ * */
+/** No command */
+#define DSP_CMD_NONE 0x00
+/** Informs the DSP that the following data is about initialisation. */
+#define DSP_CMD_INIT 0x01
+/** Informs the DSP that the following data is parameters */
+#define DSP_CMD_SET_PARAMS 0x02
+/** Informs the DSP that the following data is general data (compressed
+ * or raw audio or video)
+ * */
+#define DSP_CMD_DATA_WRITE 0x03
+/** Starts audio or video playback or recording */
+#define DSP_CMD_PLAY 0x04
+/** Pauses playback */
+#define DSP_CMD_PAUSE 0x05
+/** Stops playback */
+#define DSP_CMD_STOP 0x06
+/** Informs the DSP that the following data is volume */
+#define DSP_CMD_SET_VOLUME 0x07
+/** Requests from the DSP to send information about current task node
+ * state
+ * */
+#define DSP_CMD_STATE 0x08
+/** Informs the DSP that the following data is about setting the current
+ * presentation time
+ * */
+#define DSP_CMD_SET_TIME 0x09
+/** Informs the DSP that the ARM queries the current presentation time */
+#define DSP_CMD_GET_TIME 0x0A
+/** Informs the DSP that the following data is about setting video
+ * post-processing parameters
+ * */
+#define DSP_CMD_SET_POSTPROC 0x0B
+/** Informs the DSP that the following data is about setting the panning
+ * */
+#define DSP_CMD_SET_PANNING 0x0D
+/** Informs the DSP about discontinuity in the audio stream */
+#define DSP_CMD_DISCONT 0x0E
+/** Mutes the audio playback */
+#define DSP_CMD_MUTE 0x0F
+/** Unmutes the audio playback */
+#define DSP_CMD_UNMUTE 0x10
+/**Closes the task node*/
+#define DSP_CMD_CLOSE 0x14
+/** Command from DSP to start to read data*/
+#define DSP_CMD_DATA_READ 0x25
+/**Sets speech parameters*/
+#define DSP_CMD_SET_SPEECH_PARAMS 0x26
+
+/**
+ * Audio formats
+ * */
+/** Unsigned 8 bits per sample PCM */
+#define DSP_AFMT_U8 0x01
+/** Signed 16 bits per sample PCM, little endian */
+#define DSP_AFMT_S16_LE 0x02
+/** Signed 16 bits per sample PCM, big endian */
+#define DSP_AFMT_S16_BE 0x03
+/** Signed 8 bits per sample PCM */
+#define DSP_AFMT_S8 0x04
+/** Unsigned 16 bits per sample PCM, little endian */
+#define DSP_AFMT_U16_LE 0x05
+/** Unsigned 16 bits per sample PCM, big endian */
+#define DSP_AFMT_U16_BE 0x06
+/** A-law encoded PCM */
+#define DSP_AFMT_ALAW 0x07
+/** μ-Law encoded PCM */
+#define DSP_AFMT_ULAW 0x08
+/** MP3 stream */
+#define DSP_AFMT_MP3 0x09
+/** AAC stream */
+#define DSP_AFMT_AAC 0x0A
+/** AMR stream */
+#define DSP_AFMT_AMR 0x0B
+/** MP2 stream */
+#define DSP_AFMT_MP2 0x0C
+/** iLBC stream */
+#define DSP_AFMT_ILBC 0x0D
+/** G.729 stream */
+#define DSP_AFMT_G729 0x0E
+/**
+ * Supported Sample rates
+ * */
+/** 96KHz sampling rate */
+#define SAMPLE_RATE_96KHZ 0x00
+/** 88.2KHz sampling rate */
+#define SAMPLE_RATE_88_2KHZ 0x01
+/** 64KHz sampling rate */
+#define SAMPLE_RATE_64KHZ 0x02
+/** 48KHz sampling rate */
+#define SAMPLE_RATE_48KHZ 0x03
+/** 44.1KHz sampling rate */
+#define SAMPLE_RATE_44_1KHZ 0x04
+/** 32KHz sampling rate */
+#define SAMPLE_RATE_32KHZ 0x05
+/** 24KHz sampling rate */
+#define SAMPLE_RATE_24KHZ 0x06
+/** 22.05KHz sampling rate */
+#define SAMPLE_RATE_22_05KHZ 0x07
+/** 16KHz sampling rate */
+#define SAMPLE_RATE_16KHZ 0x08
+/** 12KHz sampling rate */
+#define SAMPLE_RATE_12KHZ 0x09
+/** 11.025KHz sampling rate */
+#define SAMPLE_RATE_11_025KHZ 0x0A
+/** 8KHz sampling rate */
+#define SAMPLE_RATE_8KHZ 0x0B
+/** 5.5125Khz sampling rate */
+#define SAMPLE_RATE_5_5125KHZ 0X0C
+/**
+ * DSP Return values
+ * */
+/** Operation successful */
+#define DSP_OK 0x01
+/** Unrecognised or unsupported command value */
+#define DSP_ERROR_CMD 0x02
+/** Unrecognised or unsupported audio format value */
+#define DSP_ERROR_FMT 0x03
+/** Unrecognised or unsupported sampling rate value */
+#define DSP_ERROR_RATE 0x04
+/** Unrecognised or unsupported number of channels */
+#define DSP_ERROR_CHANNELS 0x05
+/** Destination/source stream ID out of range */
+#define DSP_ERROR_DS_ID 0x06
+/** Insufficient memory to perform requested action */
+#define DSP_ERROR_MEMORY 0x07
+/** Unspecified error */
+#define DSP_ERROR_GENERAL 0x08
+/** Error in stream (audio or video) */
+#define DSP_ERROR_STREAM 0x09
+/** Unexpected task node state */
+#define DSP_ERROR_STATE 0x0A
+/** Error in synchronisation:
+ For MP3 – synchronisation marker not found */
+#define DSP_ERROR_SYNC 0x0B
+/** For MPEG4: non-compliant video stream */
+#define DSP_ERROR_VIDEO_NON_COMPLIANT 0x100
+/** For MPEG4: Error in VOS */
+#define DSP_ERROR_VIDEO_FAULT_IN_VOS 0x101
+/** For MPEG4: Image size not supported */
+#define DSP_ERROR_VIDEO_SIZE_NOT_SUPPORTED 0x102
+/** End of VOS code reached */
+#define DSP_ERROR_VIDEO_VOS_END_CODE 0x103
+/**
+ * Channels
+ * */
+/** One channel (mono) */
+#define CHANNELS_1 0x01
+/** Two channels (stereo) */
+#define CHANNELS_2 0x02
+/**
+ * Audio Task node states
+ * */
+/** Initialised */
+#define STATE_INITIALISED 0x00
+/** Playing/recording */
+#define STATE_PLAYING 0x01
+/** Stopped */
+#define STATE_STOPPED 0x02
+/** Paused */
+#define STATE_PAUSED 0x03
+/** Not initialised */
+#define STATE_UNINITIALISED 0x04
+/** Reseted */
+#define STATE_RESET 0x05
+/** Muted */
+#define STATE_MUTED 0x06
+
+/** Sending commands */
+#define REQUEST_CONFIRMATION 0x01
+#define WITHOU_CONFIRMATION 0x00
+#endif /* _CONSTANTS_H */