Introducing EPG123

An evolving, supported alternative to Rovi
Forum rules
★ Download the latest EPG123 here: https://garyan2.github.io/ <> Setup guide here: https://garyan2.github.io/install.html
Post Reply
choliscott

Posts: 598
Joined: Mon Dec 19, 2011 8:56 am
Location:

HTPC Specs: Show details

#81

Post by choliscott » Wed Feb 17, 2016 2:05 am

I'm using the version that is part of post #83. How exactly do you add/remove lineups from your account?

For example, when I login to SD thru EPG123, I see the one line up & the associated channels I selected thru SD's interface. I can check all or some of the channels, but I'm thinking this isn't the way to "Add/Remove channels" or is it?

garyan2 wrote:New build that includes adding/removing lineups from your account. Thank you to rkulagow from Schedules Direct in helping everyone out while I got this coded up. Be aware that you are limited in the number of adds/subtracts by Schedules Direct and my code currently does not track that.

EDIT: I guess I should point out that I currently only service USA and Canada in the lineups and once you log in, EPG123 will enable the new Lineups button.

/Mod Edit: Added to first post

User avatar
garyan2

Posts: 7438
Joined: Fri Nov 27, 2015 7:23 pm
Location:

HTPC Specs: Show details

#82

Post by garyan2 » Wed Feb 17, 2016 2:44 am

choliscott wrote:I'm using the version that is part of post #83. How exactly do you add/remove lineups from your account?

For example, when I login to SD thru EPG123, I see the one line up & the associated channels I selected thru SD's interface. I can check all or some of the channels, but I'm thinking this isn't the way to "Add/Remove channels" or is it?
For your previous post, did you modify your registry settings per Step 1 (message #3)? You have to trick Media Center into believing you actually did agree to the TOS in order for it to display the guide. I think the only settings you definitely have to modify is "fAgreeTOS" and "strAgreedTOSVersion".

To add/remove lineups click the Lineups button below the Login button which will bring up a new window ... then Add New to add a lineup, or check some checkboxes and click Remove Selected to remove a lineup.
- Gary
Keeping WMC alive beyond January 2020. https://garyan2.github.io

User avatar
garyan2

Posts: 7438
Joined: Fri Nov 27, 2015 7:23 pm
Location:

HTPC Specs: Show details

#83

Post by garyan2 » Wed Feb 17, 2016 2:50 am

rkulagow wrote:
garyan2 wrote:New build that includes adding/removing lineups from your account. Thank you to rkulagow from Schedules Direct in helping everyone out while I got this coded up. Be aware that you are limited in the number of adds/subtracts by Schedules Direct and my code currently does not track that.

EDIT: I guess I should point out that I currently only service USA and Canada in the lineups and once you log in, EPG123 will enable the new Lineups button.

/Mod Edit: Added to first post

When you do a PUT or DELETE, the status indicates how many more changes you can make in a 24 hour period.

TODO: I will add a field to the https://github.com/SchedulesDirect/JSON ... ir-account

so that a client will know before they make the attempt. If it's already at 0, then no more changes for 24 hours.
I like this idea, and I can report that information on the lineup control window ... quick question though, is limit both Add and Remove combined or just Add? I would think it would just be Add since that is the real reason a limitation exists.
- Gary
Keeping WMC alive beyond January 2020. https://garyan2.github.io

User avatar
garyan2

Posts: 7438
Joined: Fri Nov 27, 2015 7:23 pm
Location:

HTPC Specs: Show details

#84

Post by garyan2 » Wed Feb 17, 2016 3:10 am

Space wrote:
STC wrote:I think the way the original WMC holds channels in the DB for cableCARD is to store all received. I don't know if it gets the info from Zap2it via the provider ID or from the cableCARD channelmap (or both). The deselection of channels would be via WMC (or guide tool for instance) but the DB would always hold the full lineup. Adding an available channel would result in instant guide data in the guide. Perhaps this method would be more suited to Schedules Direct (?) although it increases load and throughout.
I am pretty sure it gets the list of channels from the guide information (originating from zap2it or now from Rovi). I don't think WMC ever looks at the CableCard channel map for anything. I have (unimportant) channels in the CableCard channel map that are impossible to tune within WMC because they are not in the list of channels sent from Rovi.
It seems strange that Microsoft would have a method of importing outside guide data (LoadMXF.exe) but not have a way to automatically add/delete channels as they appear/disappear from the guide data lineup.
It is a double edged sword. If you agree to the Program Guide Terms of Service, Media Center will download the Lineup information from Rovi and setup your tuner channels and channels in the guide. This would eliminate all the non-channels in your guide BUT, Rovi will now have its claws in your system so you will have channels appearing and disappearing based on Rovi's flawed expletive.

The ability to automatically match channels based on the data in the mxf file and using mxfimport.exe was advertised by Microsoft, but either that ability is disabled, doesn't work, never worked, or there is an unpublished method that they are not sharing. So we are left with the Lineup Selector tool by glugglug. Though you cannot deny the immediate results of using the tool, I'm still a little skeptical of the method. I think there is some risk down the road that may lead to problems based on changes in lineups. This is something I will look into in the future, but in order to accomplish this we must rely on Media Center dlls which I haven't found any real information on.
- Gary
Keeping WMC alive beyond January 2020. https://garyan2.github.io

webminster

Posts: 657
Joined: Tue Dec 20, 2011 11:05 pm
Location:

HTPC Specs: Show details

#85

Post by webminster » Wed Feb 17, 2016 3:23 am

Huh... did something go wrong with the SD servers? My Internet connection seems to be working, but testing epg123 has stopped timing out during the "processing 0/7000 daily stations"....
-Alan

User avatar
garyan2

Posts: 7438
Joined: Fri Nov 27, 2015 7:23 pm
Location:

HTPC Specs: Show details

#86

Post by garyan2 » Wed Feb 17, 2016 3:28 am

webminster wrote:Given it a try, looks promising. Couple things I've noticed, using this with the Lineup Selector tool:
1) Have been using MCL-XL for big channel logos, and I'm seeing the logos either disappear (in some cases), or revert to small logos. Have to rerun MCL and re-autopopulate the logos to get the (big) logos back.
2) Not sure if it's the Lineup Selector, or EPG123 (or something else), but notice now when I highlight the channel on the guide (not a program), get the callsign followed by "(EPG123)". Before it was a little friendlier, like a more descriptive name ("KUSA HDTV", or "BBC America HDTV"). Now more like "BBCAHD (EPG123)"
1) The logo images are associated to the service (station). When you transferred over to EPG123, the existing service was replaced along with its associated logo image. For those images that changed to the small logos, that is actually the logo that was linked in the downloaded data. That is why I opted to have a subdirectory .\logos to store your station logos in. Since you have MCL you can just copy the contents the C:\ProgramData\MyChannelLogos\Logos\Custom folder into the .\logos folder and you're covered.
2) Right now, I have EPG123 appending the "(EPG123)" to the station callsign. You can call in unabashed self-advertisement, but I am not opposed to change it to say something like "BBCAHD (BBC America HDTV)". I actually kinda like it. But now here is a wrinkle. If we change the name of the service, it won't matter unless you start from scratch again. Since the unique id of the service is the same, the name if fixed to its original value ... at least that is my experience so far. I can try it out and see.
- Gary
Keeping WMC alive beyond January 2020. https://garyan2.github.io

User avatar
garyan2

Posts: 7438
Joined: Fri Nov 27, 2015 7:23 pm
Location:

HTPC Specs: Show details

#87

Post by garyan2 » Wed Feb 17, 2016 3:44 am

webminster wrote:Huh... did something go wrong with the SD servers? My Internet connection seems to be working, but testing epg123 has stopped timing out during the "processing 0/7000 daily stations"....
It is responding just fine for me. It will download 5000 schedules at a time. Not a huge amount of data, but certainly not small. If it appears to be stuck, it is safe to just close the window and double-click epg123.exe. Your setting are saved so nothing in your configuration is lost.
- Gary
Keeping WMC alive beyond January 2020. https://garyan2.github.io

webminster

Posts: 657
Joined: Tue Dec 20, 2011 11:05 pm
Location:

HTPC Specs: Show details

#88

Post by webminster » Wed Feb 17, 2016 4:06 am

Odd. It's working now again, but for about 1/2 hour it was timing out, and the program crashing with a null pointer exception.
-Alan

User avatar
garyan2

Posts: 7438
Joined: Fri Nov 27, 2015 7:23 pm
Location:

HTPC Specs: Show details

#89

Post by garyan2 » Wed Feb 17, 2016 4:15 am

webminster wrote:Odd. It's working now again, but for about 1/2 hour it was timing out, and the program crashing with a null pointer exception.
Obviously I have some work to do in Error Handling. :problem:
- Gary
Keeping WMC alive beyond January 2020. https://garyan2.github.io

NoogMan

Posts: 43
Joined: Thu Feb 16, 2012 3:54 pm
Location:

HTPC Specs: Show details

#90

Post by NoogMan » Wed Feb 17, 2016 4:30 am

As luck would have it, had a major issue this morning and lost my trusty old power supply of 8 years on my HTPC. Anyway, decided to go ahead and throw a new SSD in the machine and re-install win7 64.

Anyway, I had saved my "mcepg2-0" file from after getting everything setup the way I wanted it last night. IF I go through the live tv setup process again, should I be able to just copy/paste that file back into the ehome directory and overwrite the file it created? Basically I just want my edited channel list.

User avatar
garyan2

Posts: 7438
Joined: Fri Nov 27, 2015 7:23 pm
Location:

HTPC Specs: Show details

#91

Post by garyan2 » Wed Feb 17, 2016 4:49 am

NoogMan wrote:As luck would have it, had a major issue this morning and lost my trusty old power supply of 8 years on my HTPC. Anyway, decided to go ahead and throw a new SSD in the machine and re-install win7 64.

Anyway, I had saved my "mcepg2-0" file from after getting everything setup the way I wanted it last night. IF I go through the live tv setup process again, should I be able to just copy/paste that file back into the ehome directory and overwrite the file it created? Basically I just want my edited channel list.
I honestly don't know. I have had mixed results on backing up the database but that may have more to do with my setup. I am using HDHomeRuns on my network and though it would look like I had successfully restored everything it just would not talk to the tuners properly and I would get no video. I think you best option would be to backup the entire ProgramData\Microsoft\eHome directory, uninstall Media Center, copy the backup files over, and reinstall Media Center. If you have an existing database when you install Media Center it should take without issue.

There is a MCBackup program out there, but again mixed results for me.
- Gary
Keeping WMC alive beyond January 2020. https://garyan2.github.io

choliscott

Posts: 598
Joined: Mon Dec 19, 2011 8:56 am
Location:

HTPC Specs: Show details

#92

Post by choliscott » Wed Feb 17, 2016 6:36 am

You were correct. Going back & modifying those two entries allowed me to view the channel guide as normal.

I did have another question. If I check some of the channels in EPG123, Is there a file I can move into a newer version, so I don't have to recheck them for newer versions?

One additional suggestion might be to add a button that will "import guide into WMC only". The idea for this, would be for people that have already downloaded the guide data from SD, but are playing around with WMC settings & don't want to keep downloading the data multiple times.

garyan2 wrote:
choliscott wrote:I'm using the version that is part of post #83. How exactly do you add/remove lineups from your account?

For example, when I login to SD thru EPG123, I see the one line up & the associated channels I selected thru SD's interface. I can check all or some of the channels, but I'm thinking this isn't the way to "Add/Remove channels" or is it?
For your previous post, did you modify your registry settings per Step 1 (message #3)? You have to trick Media Center into believing you actually did agree to the TOS in order for it to display the guide. I think the only settings you definitely have to modify is "fAgreeTOS" and "strAgreedTOSVersion".

To add/remove lineups click the Lineups button below the Login button which will bring up a new window ... then Add New to add a lineup, or check some checkboxes and click Remove Selected to remove a lineup.

User avatar
garyan2

Posts: 7438
Joined: Fri Nov 27, 2015 7:23 pm
Location:

HTPC Specs: Show details

#93

Post by garyan2 » Wed Feb 17, 2016 9:50 am

choliscott wrote:You were correct. Going back & modifying those two entries allowed me to view the channel guide as normal.

I did have another question. If I check some of the channels in EPG123, Is there a file I can move into a newer version, so I don't have to recheck them for newer versions?

One additional suggestion might be to add a button that will "import guide into WMC only". The idea for this, would be for people that have already downloaded the guide data from SD, but are playing around with WMC settings & don't want to keep downloading the data multiple times.
Not sure I understand the first question, but the epg123.cfg file contains your sd account info, program settings, and all the station ids (channels) that you selected ... in a nutshell, everything epg123 needs and uses. The GUI is built around populating that .cfg file.

For the second part, I think a better solution would be to have a batch file do the import for you. This way you wouldn't even have to bring up the GUI using the -config switch. You would just need to execute the batch file.

Code: Select all

@ECHO OFF
ECHO Importing guide data
START /WAIT %SYSTEMROOT%\ehome\loadmxf.exe -i epg123.mxf

ECHO Initializing the reindex task of the guide data
START /WAIT schtasks.exe /run /tn "Microsoft\Windows\Media Center\ReindexSearchRoot"

EXIT
- Gary
Keeping WMC alive beyond January 2020. https://garyan2.github.io

bob_p

Posts: 268
Joined: Fri Jul 08, 2011 4:47 pm
Location:

HTPC Specs: Show details

#94

Post by bob_p » Wed Feb 17, 2016 1:35 pm

I haven't looked at the details on how WMC is "phoning home" to Microsoft to get the program guide service, so I'm not sure if this can be done...

Is it possible to override Microsoft's connection to their program guide service - and have that instead go to a server providing something like EPG123?

When WMC goes through tuner setup - it's connecting to Microsoft's server to get information used to set up the program guide. If we could override that to use EPG123 instead, then there wouldn't be a need to uninstall WMC and reinstall - instead WMC could be modified to point to the EPG123 server - and then go through tuner setup again.

WMC must be getting the IP address or server name from the registry, a configuration file or from embedded code - and if that was replaced with a pointer to a different server, then that could be updated to point to EPG123.

Then, when Microsoft decides to pull the plug on their WMC server (and we really have no idea when that will happen), all ties to Microsoft will already be cut - and it wouldn't impact WMC users.

Just an idea...

webminster

Posts: 657
Joined: Tue Dec 20, 2011 11:05 pm
Location:

HTPC Specs: Show details

#95

Post by webminster » Thu Feb 18, 2016 1:33 am

garyan2 wrote: 1) The logo images are associated to the service (station). When you transferred over to EPG123, the existing service was replaced along with its associated logo image. For those images that changed to the small logos, that is actually the logo that was linked in the downloaded data. That is why I opted to have a subdirectory .\logos to store your station logos in. Since you have MCL you can just copy the contents the C:\ProgramData\MyChannelLogos\Logos\Custom folder into the .\logos folder and you're covered.
So I've had mixed results with this. Copied the logos from the Custom and the Big folders in a "logos" folder beside the epg123.exe file. Most of the logos reverted to small, however I note that the logos with the same uppercase and callsign do stay big. So I guess the logo matching is exactly against the callsign (MCL has a mappings file). To get this to stay stable, it appears I'd need to make a custom assignment for each channel, instead of using autopopulate. Most of the logos are pretty small, and a lot look like black-on-blue (or maybe transparent alpha channel), so they show badly.

Is it possible to /not/ assign the channel logo in the program, or make it optional? Wondering if that would allow autopopulate from MCL to survive updates like it does in conventional mcupdate processes,,,
Last edited by webminster on Thu Feb 18, 2016 1:35 am, edited 1 time in total.
-Alan

nelinory

Posts: 49
Joined: Mon Jan 18, 2016 4:18 am
Location:

HTPC Specs: Show details

#96

Post by nelinory » Thu Feb 18, 2016 1:35 am

bob_p wrote:I haven't looked at the details on how WMC is "phoning home" to Microsoft to get the program guide service, so I'm not sure if this can be done...

Is it possible to override Microsoft's connection to their program guide service - and have that instead go to a server providing something like EPG123?

When WMC goes through tuner setup - it's connecting to Microsoft's server to get information used to set up the program guide. If we could override that to use EPG123 instead, then there wouldn't be a need to uninstall WMC and reinstall - instead WMC could be modified to point to the EPG123 server - and then go through tuner setup again.

WMC must be getting the IP address or server name from the registry, a configuration file or from embedded code - and if that was replaced with a pointer to a different server, then that could be updated to point to EPG123.

Then, when Microsoft decides to pull the plug on their WMC server (and we really have no idea when that will happen), all ties to Microsoft will already be cut - and it wouldn't impact WMC users.

Just an idea...
I had the same idea since all the problems with the guide provider started. Redirecting the WMC call for the guide is trivial thru some clever updates in the machine host file. Emulating the EPG service and providing the data the way the WMC expects it is the hard part. Here is a simple log from my updates. Guide updates can be found at C:\ProgramData\Microsoft\eHome\Packages\EpgListings

Code: Select all

6:37:48 PM - Retrieving EpgListings.
6:37:48 PM - Processing EpgListings.
6:37:48 PM - Retrieving EpgListing-2.enc.
6:38:57 PM - Extracting 28498856_ListingData.mxf.
6:39:02 PM - Processing 28498856_ListingData.mxf.
7:07:14 PM - Processing of EpgListings is complete.
7:07:14 PM - Retrieving EpgListings.
7:07:15 PM - Retrieving EpgListings.
7:07:15 PM - Processing EpgListings.
7:07:16 PM - Retrieving EpgListing.enc.
7:07:25 PM - Extracting 309582224_ListingData.mxf.
7:07:25 PM - Processing 309582224_ListingData.mxf.
7:12:01 PM - Processing of EpgListings is complete.
Here is how I thinks it works (could be totally wrong)
1. Retrieving EpgListings -> I assume the 28498856_ListingData.mxf is retrieved first (seems to be encrypted)
2. Retrieving EpgListing-2.enc (per tunner) -> I believe this is the decryption key.
3. Extracting 28498856_ListingData.mxf -> decripting the MXF file
4. Processing 28498856_ListingData.mxf -> Probably loading it into the WMC

That is as far as I went - not sure how gray is the area of reverse engineering of the EPG functionality.

There are many developers on this forum that are hard at work in developing a solution for the EPG management - You guys rock ! :clap:
At the same time I believe it is time to combine all effort and create the single EPG solution being developed and supported by all of us.

User avatar
Scallica

Posts: 2797
Joined: Mon Jun 06, 2011 7:09 pm
Location: USA!

HTPC Specs: Show details

#97

Post by Scallica » Thu Feb 18, 2016 2:02 am

I decided to try EPG123 on my test system. Using garyan's procedure, which is now in the wiki (http://www.thegreenbutton.tv/wiki/index ... tle=EPG123) I had everything all set fairly quickly.

Once the metadata was downloaded, I used another app called Lineup Selector to merge the EPG123 lineup into the default lineup of WMC. Then, I used Guide Tool to delete any unwanted channels. I initially had 10000 channels like some other members have reported, but I was able to delete all of them in one shot using Guide Tool.

Now I have a channel guide containing accurate and complete data instead of the utter toxic waste provided by Rovi.

The last step is to create a scheduled task to download new guide data regularly.

Many thanks to garyan for his time and hard work. :thumbup:
HTPC Enthusiast / Forum Moderator - TGB.tv Code of Conduct

User avatar
garyan2

Posts: 7438
Joined: Fri Nov 27, 2015 7:23 pm
Location:

HTPC Specs: Show details

#98

Post by garyan2 » Thu Feb 18, 2016 2:04 am

webminster wrote:
garyan2 wrote: 1) The logo images are associated to the service (station). When you transferred over to EPG123, the existing service was replaced along with its associated logo image. For those images that changed to the small logos, that is actually the logo that was linked in the downloaded data. That is why I opted to have a subdirectory .\logos to store your station logos in. Since you have MCL you can just copy the contents the C:\ProgramData\MyChannelLogos\Logos\Custom folder into the .\logos folder and you're covered.
So I've had mixed results with this. Copied the logos from the Custom and the Big folders in a "logos" folder beside the epg123.exe file. Most of the logos reverted to small, however I note that the logos with the same uppercase and callsign do stay big. So I guess the logo matching is exactly against the callsign (MCL has a mappings file). To get this to stay stable, it appears I'd need to make a custom assignment for each channel, instead of using autopopulate. Most of the logos are pretty small, and a lot look like black-on-blue (or maybe transparent alpha channel), so they show badly.

Is it possible to /not/ assign the channel logo in the program, or make it optional? Wondering if that would allow autopopulate from MCL to survive updates like it does in conventional mcupdate processes,,,
You're right, there should be an option to not include logo images in the mxf file. But on another note, the images in the .\logos directory, with the station callsigns as the filename, must be present during the mxf file creation. Just sticking them in the directory does not in itself override the image. When MCL does its autopopulate, it copies the source image into the custom directory and renames it to the unique callsign it belongs to. If you execute another download/update the logos should be directed toward the .\logos folder and should look just like it did with MCL in control.

But, like I said, there should and will be an option to not include logo images so that tools like MCL will work.
- Gary
Keeping WMC alive beyond January 2020. https://garyan2.github.io

User avatar
garyan2

Posts: 7438
Joined: Fri Nov 27, 2015 7:23 pm
Location:

HTPC Specs: Show details

#99

Post by garyan2 » Thu Feb 18, 2016 2:07 am

Scallica wrote:I decided to try EPG123 on my test system. Using garyan's procedure, which is now in the wiki (http://www.thegreenbutton.tv/wiki/index ... tle=EPG123) I had everything all set fairly quickly.

Once the metadata was downloaded, I used another app called Lineup Selector to merge the EPG123 lineup into the default lineup of WMC. Then, I used Guide Tool to delete any unwanted channels. I initially had 10000 channels like some other members have reported, but I was able to delete all of them in one shot using Guide Tool.

Now I have a channel guide containing accurate and complete data instead of the utter toxic waste provided by Rovi.

The last step is to create a scheduled task to download new guide data regularly.

Many thanks to garyan for his time and hard work. :thumbup:
Thank you ... and it will only get better. I promised a list of improvements I am going to do, and the steps to get there, but I'm tied up right now and will send it out later tonight...still have a lot of "real" work to do.

Most of all, I need users inputs on improvements, needs, and desires. Very helpful and will only benefit us all.
- Gary
Keeping WMC alive beyond January 2020. https://garyan2.github.io

webminster

Posts: 657
Joined: Tue Dec 20, 2011 11:05 pm
Location:

HTPC Specs: Show details

#100

Post by webminster » Thu Feb 18, 2016 3:02 am

garyan2 wrote: When MCL does its autopopulate, it copies the source image into the custom directory and renames it to the unique callsign it belongs to. If you execute another download/update the logos should be directed toward the .\logos folder and should look just like it did with MCL in control.
Hmmm, not the way MCL XL is working for me. Only logos populated into the Custom directory are those that I've manually overridden in the WMC addin or the MCL GUI app. It copies the selected image into there with the callsign name. But after running autopopulate, it does populate the guide, but isn't creating callsign-specific files in the Custom folder.
-Alan

Post Reply