rockbox/firmware/export/pcm_record.h
Daniel Stenberg 2acc0ac542 Updated our source code header to explicitly mention that we are GPL v2 or
later. We still need to hunt down snippets used that are not. 1324 modified
files...
http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 18:10:04 +00:00

66 lines
2.5 KiB
C

/***************************************************************************
* __________ __ ___.
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
* \/ \/ \/ \/ \/
* $Id$
*
* Copyright (C) 2005 by Linus Nielsen Feltzing
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
* KIND, either express or implied.
*
****************************************************************************/
#ifndef PCM_RECORD_H
#define PCM_RECORD_H
#define DMA_REC_ERROR_DMA (-1)
#ifdef HAVE_SPDIF_REC
#define DMA_REC_ERROR_SPDIF (-2)
#endif
/** Warnings **/
/* pcm (dma) buffer has overflowed */
#define PCMREC_W_PCM_BUFFER_OVF 0x00000001
/* encoder output buffer has overflowed */
#define PCMREC_W_ENC_BUFFER_OVF 0x00000002
/** Errors **/
/* failed to load encoder */
#define PCMREC_E_LOAD_ENCODER 0x80001000
/* error originating in encoder */
#define PCMREC_E_ENCODER 0x80002000
/* filename queue has desynced from stream markers */
#define PCMREC_E_FNQ_DESYNC 0x80004000
/* I/O error has occurred */
#define PCMREC_E_IO 0x80008000
#ifdef DEBUG
/* encoder has written past end of allotted space */
#define PCMREC_E_CHUNK_OVF 0x80010000
#endif /* DEBUG */
/** General functions for high level codec recording **/
/* pcm_rec_error_clear is deprecated for general use. audio_error_clear
should be used */
void pcm_rec_error_clear(void);
/* pcm_rec_status is deprecated for general use. audio_status merges the
results for consistency with the hardware codec version */
unsigned long pcm_rec_status(void);
unsigned long pcm_rec_get_warnings(void);
void pcm_rec_init(void);
int pcm_rec_current_bitrate(void);
int pcm_rec_encoder_afmt(void); /* AFMT_* value, AFMT_UNKNOWN if none */
int pcm_rec_rec_format(void); /* Format index or -1 otherwise */
unsigned long pcm_rec_sample_rate(void);
int pcm_get_num_unprocessed(void);
/* audio.h contains audio_* recording functions */
#endif /* PCM_RECORD_H */