# HG changeset patch # User voroshil # Date 1174132277 0 # Node ID e1859558b37d976618a83d97cd21d6b3e017f817 # Parent 51e2dfc6aeb609ca209323e99d4c219e5239a9d6 New slave command: tv_step_freq Command sets the TV frequency relative to current value diff -r 51e2dfc6aeb6 -r e1859558b37d DOCS/tech/slave.txt --- a/DOCS/tech/slave.txt Sat Mar 17 11:33:01 2007 +0000 +++ b/DOCS/tech/slave.txt Sat Mar 17 11:51:17 2007 +0000 @@ -330,6 +330,9 @@ tv_set_freq Set the TV tuner frequency. +tv_step_freq + Set the TV tuner frequency relative to current value. + tv_set_norm Set the TV tuner norm (PAL, SECAM, NTSC, ...). diff -r 51e2dfc6aeb6 -r e1859558b37d command.c --- a/command.c Sat Mar 17 11:33:01 2007 +0000 +++ b/command.c Sat Mar 17 11:51:17 2007 +0000 @@ -1941,6 +1941,12 @@ cmd->args[0].v.f * 16.0); break; + case MP_CMD_TV_STEP_FREQ: + if (mpctx->file_format == DEMUXER_TYPE_TV) + tv_step_freq((tvi_handle_t *) (mpctx->demuxer->priv), + cmd->args[0].v.f * 16.0); + break; + case MP_CMD_TV_SET_NORM: if (mpctx->file_format == DEMUXER_TYPE_TV) tv_set_norm((tvi_handle_t *) (mpctx->demuxer->priv), diff -r 51e2dfc6aeb6 -r e1859558b37d input/input.c --- a/input/input.c Sat Mar 17 11:33:01 2007 +0000 +++ b/input/input.c Sat Mar 17 11:51:17 2007 +0000 @@ -112,6 +112,7 @@ { MP_CMD_TV_SET_CHANNEL, "tv_set_channel", 1, { { MP_CMD_ARG_STRING, {0}}, {-1,{0}} }}, { MP_CMD_TV_LAST_CHANNEL, "tv_last_channel", 0, { {-1,{0}} } }, { MP_CMD_TV_SET_FREQ, "tv_set_freq", 1, { {MP_CMD_ARG_FLOAT,{0}}, {-1,{0}} } }, + { MP_CMD_TV_STEP_FREQ, "tv_step_freq", 1, { {MP_CMD_ARG_FLOAT,{0}}, {-1,{0}} } }, { MP_CMD_TV_SET_NORM, "tv_set_norm", 1, { {MP_CMD_ARG_STRING,{0}}, {-1,{0}} } }, { MP_CMD_TV_SET_BRIGHTNESS, "tv_set_brightness", 1, { { MP_CMD_ARG_INT ,{0}}, { MP_CMD_ARG_INT,{1} }, {-1,{0}} }}, { MP_CMD_TV_SET_CONTRAST, "tv_set_contrast", 1, { { MP_CMD_ARG_INT ,{0}}, { MP_CMD_ARG_INT,{1} }, {-1,{0}} }}, diff -r 51e2dfc6aeb6 -r e1859558b37d input/input.h --- a/input/input.h Sat Mar 17 11:33:01 2007 +0000 +++ b/input/input.h Sat Mar 17 11:51:17 2007 +0000 @@ -92,6 +92,7 @@ #define MP_CMD_SET_MOUSE_POS 90 #define MP_CMD_STEP_PROPERTY 91 #define MP_CMD_RADIO_STEP_FREQ 92 +#define MP_CMD_TV_STEP_FREQ 93 #define MP_CMD_GUI_EVENTS 5000 #define MP_CMD_GUI_LOADFILE 5001 diff -r 51e2dfc6aeb6 -r e1859558b37d stream/tv.c --- a/stream/tv.c Sat Mar 17 11:33:01 2007 +0000 +++ b/stream/tv.c Sat Mar 17 11:51:17 2007 +0000 @@ -781,6 +781,21 @@ return(1); } +/***************************************************************** + * \brief tune current frequency by step_interval value + * \parameter step_interval increment value in 1/16 MHz + * \note frequency is rounded to 1/16 MHz value + * \return 1 + * + */ +int tv_step_freq(tvi_handle_t* tvh, float step_interval){ + unsigned long frequency; + + tv_get_freq(tvh,&frequency); + frequency+=step_interval; + return tv_set_freq(tvh,frequency); +} + int tv_step_channel_real(tvi_handle_t *tvh, int direction) { struct CHANLIST cl; diff -r 51e2dfc6aeb6 -r e1859558b37d stream/tv.h --- a/stream/tv.h Sat Mar 17 11:33:01 2007 +0000 +++ b/stream/tv.h Sat Mar 17 11:51:17 2007 +0000 @@ -184,6 +184,7 @@ int tv_set_freq(tvi_handle_t *tvh, unsigned long freq); int tv_get_freq(tvi_handle_t *tvh, unsigned long *freq); +int tv_step_freq(tvi_handle_t *tvh, float step_interval); int tv_set_norm(tvi_handle_t *tvh, char* norm);