X-Git-Url: http://git.osdn.net/view?p=rec10%2Frec10-git.git;a=blobdiff_plain;f=tunerec%2Ftunerec.c;h=1416de9babc26706125864a039212bcc7365ed02;hp=822200afdb5b1b1df4eba0035688c00f884c198f;hb=8df6d33319e095e41c426fb18223532acb814bdb;hpb=a9612f286df7d9a29ad101d3e59a89908a360008 diff --git a/tunerec/tunerec.c b/tunerec/tunerec.c index 822200a..1416de9 100755 --- a/tunerec/tunerec.c +++ b/tunerec/tunerec.c @@ -314,20 +314,37 @@ void * record_write(void * priv) { int main(int argc, char *argv[]) { int adapter_nr; int channel_freq; + int channel_phys; int channel_id; int fd; int ret; int rectime; if (argc != 6) { - fprintf(stderr, "Usage : %s adapter_nr freq tsid rectime output\n", argv[0]); - fprintf(stderr, "Version: 0.0.1\n"); + fprintf(stderr, "Usage : %s adapter_nr channel tsid rectime output\n", argv[0]); + fprintf(stderr, " channel can be freqency or channel(TE1/BS1/CS1)\n"); + fprintf(stderr, "Version: 0.0.2\n"); return 1; } adapter_nr = strtol(argv[1], NULL, 0); channel_freq = strtol(argv[2], NULL, 10); channel_id = strtol(argv[3], NULL, 10); rectime = atoi(argv[4]); + + if ( channel_freq == 0 ) { + channel_phys = atoi(argv[2] + 2); + if ( toupper(argv[2]) == 'T' && toupper(argv[2] + 1) == 'E' && channel_phys != 0 ) { + channel_freq = ( 473 + (channel_phys - 13) * 6 ) * 1000000 + 142857; + } + else if ( toupper(argv[2]) == 'B' && toupper(argv[2] + 1) == 'S' && channel_phys != 0 ) { + channel_freq = (channel_phys - 1) * 38360 / 2 + 1049480; + } + else if ( toupper(argv[2]) == 'C' && toupper(argv[2] + 1) == 'S' && channel_phys != 0 ) { + channel_freq = (channel_phys - 2) * 40000 / 2 + 1613000; + } + fprintf(stderr, "channel_freq = %d\n", channel_freq); + } + fd = search(adapter_nr, channel_freq, channel_id); if (fd < 0) return 1;