96 lines
2.8 KiB
C
96 lines
2.8 KiB
C
/*
|
|
term: terminal control
|
|
|
|
copyright ?-2006 by the mpg123 project - free software under the terms of the LGPL 2.1
|
|
see COPYING and AUTHORS files in distribution or http://mpg123.org
|
|
initially written by Michael Hipp
|
|
*/
|
|
|
|
#ifndef _MPG123_TERM_H_
|
|
#define _MPG123_TERM_H_
|
|
|
|
#include "mpg123app.h"
|
|
#include "audio.h"
|
|
|
|
/*
|
|
* Defines the keybindings in term.c - change to your
|
|
* own preferences.
|
|
*/
|
|
|
|
#define MPG123_HELP_KEY 'h'
|
|
#define MPG123_BACK_KEY 'b'
|
|
#define MPG123_NEXT_KEY 'f'
|
|
#define MPG123_PAUSE_KEY 'p'
|
|
#define MPG123_LOOP_KEY 'o'
|
|
#define MPG123_QUIT_KEY 'q'
|
|
/* space bar is alias for that */
|
|
#define MPG123_STOP_KEY 's'
|
|
#define MPG123_REWIND_KEY ','
|
|
#define MPG123_FORWARD_KEY '.'
|
|
/* This is convenient on QWERTZ-keyboards. */
|
|
#define MPG123_FAST_REWIND_KEY ';'
|
|
#define MPG123_FAST_FORWARD_KEY ':'
|
|
#define MPG123_FINE_REWIND_KEY '<'
|
|
#define MPG123_FINE_FORWARD_KEY '>'
|
|
/* You probably want to use the following bindings instead
|
|
* on a standard QWERTY-keyboard:
|
|
*/
|
|
|
|
/* #define MPG123_FAST_REWIND_KEY '<' */
|
|
/* #define MPG123_FAST_FORWARD_KEY '>' */
|
|
/* #define MPG123_FINE_REWIND_KEY ';' */
|
|
/* #define MPG123_FINE_FORWARD_KEY ':' */
|
|
|
|
#define MPG123_VOL_UP_KEY '+'
|
|
#define MPG123_VOL_DOWN_KEY '-'
|
|
#define MPG123_VOL_MUTE_KEY 'u'
|
|
#define MPG123_VERBOSE_KEY 'v'
|
|
#define MPG123_RVA_KEY 'r'
|
|
#define MPG123_PLAYLIST_KEY 'l'
|
|
#define MPG123_PREV_KEY 'd'
|
|
#define MPG123_MPEG_KEY 'm'
|
|
#define MPG123_TAG_KEY 't'
|
|
#define MPG123_PITCH_UP_KEY 'c'
|
|
#define MPG123_PITCH_BUP_KEY 'C'
|
|
#define MPG123_PITCH_DOWN_KEY 'x'
|
|
#define MPG123_PITCH_BDOWN_KEY 'X'
|
|
#define MPG123_PITCH_ZERO_KEY 'w'
|
|
|
|
#define MPG123_EQ_RESET_KEY 'e'
|
|
#define MPG123_EQ_SHOW_KEY 'E'
|
|
#define MPG123_BASS_UP_KEY 'A'
|
|
#define MPG123_BASS_DOWN_KEY 'a'
|
|
#define MPG123_MID_UP_KEY 'J'
|
|
#define MPG123_MID_DOWN_KEY 'j'
|
|
#define MPG123_TREBLE_UP_KEY 'N'
|
|
#define MPG123_TREBLE_DOWN_KEY 'n'
|
|
|
|
#define MPG123_BOOKMARK_KEY 'k'
|
|
/* This counts as "undocumented" and can disappear */
|
|
#define MPG123_FRAME_INDEX_KEY 'i'
|
|
#define MPG123_VARIOUS_INFO_KEY 'I'
|
|
|
|
#define MPG123_PREV_DIR_KEY '['
|
|
#define MPG123_NEXT_DIR_KEY ']'
|
|
|
|
/* The normal and big pitch adjustment done on key presses. */
|
|
#define MPG123_PITCH_VAL 0.001
|
|
#define MPG123_PITCH_BVAL 0.01
|
|
|
|
#define MPG123_PAUSED_STRING "Looping.\b\b\b\b\b\b\b\b"
|
|
#define MPG123_STOPPED_STRING "Stopped.\b\b\b\b\b\b\b\b"
|
|
#define MPG123_AB_STRING "Loop A-?\b\b\b\b\b\b\b\b"
|
|
#define MPG123_EMPTY_STRING " \b\b\b\b\b\b\b\b"
|
|
|
|
/* Need it as string for the param struct, change according to the above. */
|
|
#define MPG123_TERM_USR1 "s"
|
|
#define MPG123_TERM_USR2 "f"
|
|
|
|
|
|
int term_init(void); // -1 on error, 0 success or no terminal desired
|
|
void term_exit(void);
|
|
void term_new_track(void); // prepare for a new track being played
|
|
off_t term_control(mpg123_handle *mh, out123_handle *ao);
|
|
void term_hint(void); /* Print a message hinting at terminal usage. */
|
|
|
|
#endif
|