[MPlayer-dev-eng] [PATCH] selecting tv channel by name (tv://)
Ivan Szanto
szivan at duticai.TWI.TUDelft.NL
Sat Apr 12 01:23:59 CEST 2003
Hi
100l to me, the small patch I sent had a bug.
Hope noone was bugged by it ;-)
Please disregard the previous version and
take this one into consideration.
Ivan
-------------- next part --------------
--- main/libmpdemux/tv.c Wed Apr 9 16:07:45 2003
+++ main-smb-channels/libmpdemux/tv.c Sat Apr 12 01:15:22 2003
@@ -328,16 +328,36 @@
if (tv_channel_list) {
int i;
- int channel;
+ int channel = 0;
if (tv_param_channel)
+ {
+ if (isdigit(*tv_param_channel))
+ /* if tv_param_channel begins with a digit interpret it as a number */
channel = atoi(tv_param_channel);
+ else
+ {
+ /* if tv_param_channel does not begin with a digit
+ set the first channel that contains tv_param_channel in its name */
+
+ tv_channel_current = tv_channel_list;
+ while ( tv_channel_current ) {
+ if ( strstr(tv_channel_current->name, tv_param_channel) )
+ break;
+ tv_channel_current = tv_channel_current->next;
+ }
+ if ( !tv_channel_current ) tv_channel_current = tv_channel_list;
+ }
+ }
else
channel = 1;
+ if ( channel ) {
tv_channel_current = tv_channel_list;
for (i = 1; i < channel; i++)
if (tv_channel_current->next)
tv_channel_current = tv_channel_current->next;
+ }
+
mp_msg(MSGT_TV, MSGL_INFO, "Selected channel: %s - %s (freq: %.3f)\n", tv_channel_current->number,
tv_channel_current->name, (float)tv_channel_current->freq/1000);
tv_set_freq(tvh, (unsigned long)(((float)tv_channel_current->freq/1000)*16));
More information about the MPlayer-dev-eng
mailing list