[mythtv-users] New release of scte65scan (mainly for Comcast users)
RAM
ram at bca.com
Tue Jun 9 02:40:08 UTC 2009
Found Dennis' program over the weekend and bit the bullet and switched
from using an analog port to one of my hdhomerun ports.
I did run into one problem which I worked around, and then tonight I
made a hack to scte65scan.c which provides one workaround, but Dennis
can probably come up with a better one.
Problem --> Existing system had 1 analog and 3 digital tuners
(WinTV-HVR 1600 & HDhomerun) and the SQL script generated started with
mplexid = 1. This resulted in an error for a duplicate value when it
hit an existing database entry.
My workaround which was gleaned from previous messages was to
1) Delete all Video Sources and Input Connections and create a new
one for the hdhomerun port I was using (2nd port FYI)
2) Go through and run the scte65scan generated scripts,
mythfilldatabase, go back in and set starting channel.
3) Re-add the other Video Sources and Input Connections.
My hack allows a fixed offset to be added to all the generated SQL
commands, which should allow you to specify a starting point above the
last existing entry, and if you want to have a second CC digital input
you could use it to move the start of the generated "mplexid".
To find what value to use
mysql -u username -ppassword mythconverg
then
select * from dtv_multiplex;
and to exit mysql
quit;
FYI the info for 95132 is California/San Jose/95132/3065/0x0bf9/
Roy
The Hack ****************************************************
37a38
> int mplexid_offset=0;
511c512
< printf("INSERT INTO dtv_multiplex SET
sistandard='atsc',mplexid=%d,frequency=%d,modulation='qam_256',sourceid=%d;\n",
i, cds->cd[i], outfmt->myth_srcid);
---
> printf("INSERT INTO dtv_multiplex SET
sistandard='atsc',mplexid=%d,frequency=%d,modulation='qam_256',sourceid=%d;\n",
(i+mplexid_offset), cds->cd[i], outfmt->myth_srcid);
532c533
< printf(" SET mplexid=%d", vc_rec->cds_ref);
---
> printf(" SET mplexid=%d", (mplexid_offset + vc_rec->cds_ref));
560c561
< printf("UPDATE dtv_multiplex SET modulation='qam_64' WHERE
mplexid=%d;\n",vc_rec->cds_ref);
---
> printf("UPDATE dtv_multiplex SET modulation='qam_64' WHERE
mplexid=%d;\n",(mplexid_offset + vc_rec->cds_ref));
562c563
< printf("UPDATE dtv_multiplex SET modulation='16vsb' WHERE
mplexid=%d;\n",vc_rec->cds_ref);
---
> printf("UPDATE dtv_multiplex SET modulation='16vsb' WHERE
mplexid=%d;\n",(mplexid_offset + vc_rec->cds_ref));
564c565
< printf("UPDATE dtv_multiplex SET modulation='8vsb' WHERE
mplexid=%d;\n",vc_rec->cds_ref);
---
> printf("UPDATE dtv_multiplex SET modulation='8vsb' WHERE
mplexid=%d;\n",(mplexid_offset + vc_rec->cds_ref));
592c593
< printf(" SET mplexid=%d", vc_rec->cds_ref);
---
> printf(" SET mplexid=%d", (mplexid_offset + vc_rec->cds_ref));
617c618
< printf("UPDATE dtv_multiplex SET modulation='qam_64' where
mplexid=%d;\n",vc_rec->cds_ref);
---
> printf("UPDATE dtv_multiplex SET modulation='qam_64' where
mplexid=%d;\n",(mplexid_offset + vc_rec->cds_ref));
619c620
< printf("UPDATE dtv_multiplex SET modulation='16vsb' where
mplexid=%d;\n",vc_rec->cds_ref);
---
> printf("UPDATE dtv_multiplex SET modulation='16vsb' where
mplexid=%d;\n",(mplexid_offset + vc_rec->cds_ref));
621c622
< printf("UPDATE dtv_multiplex SET modulation='8vsb' where
mplexid=%d;\n",vc_rec->cds_ref);
---
> printf("UPDATE dtv_multiplex SET modulation='8vsb' where
mplexid=%d;\n",(mplexid_offset + vc_rec->cds_ref));
1180a1182
> " -M N mplexid start offset (used if multiple cards)
(default N=0)\n"
1217c1219
< while ((opt = getopt (argc, argv, "A:D:F:H:i:t:s:V:n:f:qpkvh")) != -1)
---
> while ((opt = getopt (argc, argv, "A:D:F:H:i:M:t:s:V:n:f:qpkvh"))
!= -1)
1244a1247,1251
>
> case 'M':
> mplexid_offset = atoi (optarg);
> break;
>
More information about the mythtv-users
mailing list