Allow to specify frequencies in channels option.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22637 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
voroshil 2007-03-16 19:42:41 +00:00
parent d26de3f352
commit 57ed940858
2 changed files with 11 additions and 0 deletions

View File

@ -1751,6 +1751,10 @@ Set tuner to <value> channel.
available: europe-east, europe-west, us-bcast, us-cable, etc
.IPs channels=<channel>\-<name>,<channel>\-<name>,...
Set names for channels.
.I NOTE:
If <channel> is an integer greater than 1000, it will be treated as frequency (in kHz)
rather than channel name from frequency table.
.br
Use _ for spaces in names (or play with quoting ;-).
The channel names will then be written using OSD, and the slave commands
tv_step_channel, tv_set_channel and tv_last_channel will be usable for

View File

@ -361,10 +361,16 @@ static int open_tv(tvi_handle_t *tvh)
sizeof(tv_channel_current->name));
sep[0] = '\0';
strncpy(tv_channel_current->number, tmp, 5);
tv_channel_current->number[4]='\0';
while ((sep=strchr(tv_channel_current->name, '_')))
sep[0] = ' ';
// if channel number is a number and larger than 1000 threat it as frequency
// tmp still contain pointer to null-terminated string with channel number here
if (atoi(tmp)>1000){
tv_channel_current->freq=atoi(tmp);
}else{
tv_channel_current->freq = 0;
for (i = 0; i < chanlists[tvh->chanlist].count; i++) {
cl = tvh->chanlist_s[i];
@ -373,6 +379,7 @@ static int open_tv(tvi_handle_t *tvh)
break;
}
}
}
if (tv_channel_current->freq == 0)
mp_msg(MSGT_TV, MSGL_ERR, "Couldn't find frequency for channel %s (%s)\n",
tv_channel_current->number, tv_channel_current->name);