2002-11-10 16:42:31 +00:00
|
|
|
/***************************************************************************
|
|
|
|
* __________ __ ___.
|
|
|
|
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
|
|
|
|
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
|
|
|
|
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
|
|
|
|
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
|
|
|
|
* \/ \/ \/ \/ \/
|
|
|
|
* $Id$
|
|
|
|
*
|
|
|
|
* Copyright (C) 2002 Linus Nielsen Feltzing
|
|
|
|
*
|
2008-06-28 18:10:04 +00:00
|
|
|
* 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.
|
2002-11-10 16:42:31 +00:00
|
|
|
*
|
|
|
|
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
|
|
* KIND, either express or implied.
|
|
|
|
*
|
|
|
|
****************************************************************************/
|
|
|
|
#ifndef RECORDING_H
|
|
|
|
#define RECORDING_H
|
2007-02-08 04:33:41 +00:00
|
|
|
#include "audio.h"
|
2002-11-10 16:42:31 +00:00
|
|
|
|
2007-02-08 10:36:49 +00:00
|
|
|
bool in_recording_screen(void);
|
2006-08-28 22:38:41 +00:00
|
|
|
bool recording_screen(bool no_source);
|
2004-01-21 14:58:40 +00:00
|
|
|
char *rec_create_filename(char *buf);
|
2004-06-04 12:34:29 +00:00
|
|
|
int rec_create_directory(void);
|
2007-07-11 05:41:23 +00:00
|
|
|
void settings_apply_trigger(void);
|
2002-11-10 16:42:31 +00:00
|
|
|
|
2007-03-07 01:59:29 +00:00
|
|
|
/* If true, start recording automatically when recording_sreen() is entered */
|
|
|
|
extern bool recording_start_automatic;
|
|
|
|
|
2006-08-28 22:38:41 +00:00
|
|
|
#if CONFIG_CODEC == SWCODEC
|
2007-06-08 23:42:04 +00:00
|
|
|
/* handles device powerup, sets audio source and peakmeter mode */
|
2006-11-06 18:07:30 +00:00
|
|
|
void rec_set_source(int source, unsigned flags);
|
2006-08-28 22:38:41 +00:00
|
|
|
#endif /* CONFIG_CODEC == SW_CODEC */
|
|
|
|
|
2006-11-06 18:07:30 +00:00
|
|
|
/* Initializes a recording_options structure with global settings.
|
|
|
|
pass returned data to audio_set_recording_options or
|
|
|
|
rec_set_recording_options */
|
|
|
|
void rec_init_recording_options(struct audio_recording_options *options);
|
2006-08-28 22:38:41 +00:00
|
|
|
/* steals mp3 buffer, sets source and then options */
|
2006-11-06 18:07:30 +00:00
|
|
|
/* SRCF_RECORDING is implied for SWCODEC */
|
|
|
|
void rec_set_recording_options(struct audio_recording_options *options);
|
2006-08-28 22:38:41 +00:00
|
|
|
|
2007-08-25 15:53:54 +00:00
|
|
|
enum recording_command
|
|
|
|
{
|
|
|
|
RECORDING_CMD_STOP,
|
|
|
|
RECORDING_CMD_START, /* steal mp3 buffer, create unique filename and
|
|
|
|
start recording */
|
|
|
|
RECORDING_CMD_START_NEWFILE, /* create unique filename and start recording*/
|
|
|
|
RECORDING_CMD_PAUSE,
|
2008-05-15 22:47:07 +00:00
|
|
|
RECORDING_CMD_RESUME,
|
|
|
|
RECORDING_CMD_STOP_SHUTDOWN /* stop recording and shutdown */
|
2007-08-25 15:53:54 +00:00
|
|
|
};
|
2006-08-28 22:38:41 +00:00
|
|
|
|
2007-08-25 15:53:54 +00:00
|
|
|
/* centralized way to start/stop/... recording */
|
|
|
|
void rec_command(enum recording_command rec_cmd);
|
2006-08-28 22:38:41 +00:00
|
|
|
|
2007-06-08 23:42:04 +00:00
|
|
|
#endif /* RECORDING_H */
|