Multituner und EPG Grabber (2 Viewers)

chrissooo

Portal Pro
February 21, 2007
434
35
Home Country
Germany Germany
Please do not make free tuner epg grapping the default.
Do not worry, grab on free tuner is off by default in this patch. And i dont sure that this comes ever in one of next releases.

Long time there was already a patch proposal to switch to seconds which was not implemented.
sounds very interesting, do you have maybe a diff from this changes?
 

snowball

Portal Pro
December 24, 2008
51
12
Home Country
Germany Germany
Sure will post it tomorrow.... iam in bed with tab. There is also another bugfix in, that handles issues with "dead" channels. Epg thread always starts from the top of the list. I had issues where the grapper tried forever to grap a certain channel which failed and then tried it again. As far as i can remeber that applies also to channels that do not broadcast whole day. If needed i can check the code to separate it from the seconds patch. Will need to look at it. Was doing this for 1.02 so its a while ago. But still works with 1.10
 

snowball

Portal Pro
December 24, 2008
51
12
Home Country
Germany Germany
here the patch file with the changes. the seconds patch basically turns the setting into an float variable. this ensures compatibility with old settings 1 minute stays 1 minute but you can set it also to 0.1 wich means 6 seconds. that was for me the approach to stay compatible with old handling but has the disadvantage that you have to do a bit of calculation in your head. a unit switcher seconds/minutes would have been more of an effort.
additionally in epgcard.cs the + _currentTransponder.OnTimeOut(); is to ensure that an error in grapping a channel marks the channel as grapped together with + ch.Refresh(); at the begining of each grap in the epggrapper.cs it ensures that there is no endless loop when you have a "faulty" channel.

not sure if this is all 100% correct. i am just "freetime" programmer but it runs since years stable for me.
 

Attachments

  • 0001-EPGUpdate_2.zip
    2.5 KB

diskeeper

Portal Pro
January 5, 2007
6,109
421
Dortmund
Home Country
Germany Germany
Hi,
die neue Version gefällt mir sehr gut.
Das grabben auf nur einem Tuner, mit ausgeschalteten Timschift-Grabber, belastet mein System so gut wie gar nicht mehr.
Vermutlich funktioniert da der idle etwas anders als der Timeshift, außerdem hat bei mir das grabben mit mehren Turnern
mehrfach zu Bluescreens geführt. Wobei das grabben eigentlich ja nicht das Problem ist, sondern das Schreiben in die Datenbank.
Ist zumindest mein Eindruck.
 

mm1352000

Retired Team Member
  • Premium Supporter
  • September 1, 2008
    21,577
    8,224
    Home Country
    New Zealand New Zealand
    As you know (from MP1 release news), TV Server is under code freeze while we work on TVE 3.5. That means patches for TVE 3 are not accepted at the moment. However, you're welcome to continue to distribute them on the forum.

    At the moment unfortunately I seem to be the only person working on TVE 3.5. However, I have already made some improvements to the DVB EPG grabber (in addition to improvements to the XMLTV plugin discussed -->here<--, and many other improvements elsewhere):
    • Fixed stutter during storage of EPG data (...I hope! :) ), so people should be free to use the timeshifting/recording grabber.
    • Added MediaHighway 2 format support.
    • Added grabbing of series and episode identifiers (UK Freeview/Freesat, NZ Freeview etc.) so series link schedules may be supported in future.
    • New option: timeshifting/recording EPG grabber refresh (unit = minutes). The grabber regrabs after this time. So if you watch the same channel for a long time, the EPG will still be updated.
    • Removed "always try to fill holes" and "always try to update existing entries" settings. The DB update code was changed so these settings are no longer relevant/necessary.
    • Removed "display options". If those sorts of settings are required then they should be skin or at least client side options (like the current "show episode info" option). IMHO having them on the server side, and only for DVB EPG was very bad.
    • Removed TV and radio EPG grabber sub-sections (selection of channels and languages). These settings confused almost everybody. In the worst cases incorrect configuration caused BSODs (!!!). Now the EPG grabber will simply grab once from each transmitter with at least one visible channel (rather than once for each enabled channel on each transmitter!) and store all available data. This way the configuration so much simpler and all available EPG data should be received. For some people grabbing might take a little longer... but IMHO this is a small cost compared to the benefits for the majority of people.
    • Removed "grab EPG only for channels on the same transponder" setting. No longer relevant due to the above change (remove TV and radio EPG grabber sections).
    • Language preferences:
      • Moved to main section (from TV/radio EPG grabber section) so only need to set this configuration once.
      • Now possible to prioritise the languages.
      • Preference applies to XMLTV plugin as well as DVB EPG grabber (and I hope in future will be supported by other EPG plugins if it is relevant).
      • List of languages now includes all ISO 639 codes. Fixes [for example] issues with missing "nor" (Norwegian) code.
    • Manual control section refresh button moved to main EPG section, and split into delete (relevant for all EPG sources) and refresh (relevant only for DVB EPG grabber) functions.
    upload_2015-1-22_22-15-18.png


    Guide categories (genres) is pretty much the same as it was before with only a few tweaks:
    upload_2015-1-22_22-16-54.png


    All the text clutter has been removed from the UI. IMO the UI should be "intuitive" (not require explanation)... or at least, if explanation is required it should be in the manual (wiki) rather than the UI (!!!).
    The "enabled" and "movie" columns are now checkboxes. Keeps it simple and consistent.
    Drag and drop is supported for the mapped/unmapped program categories.

    ...and that's it for now. :)

    P.S. This is still a work in progress. Feedback welcome. ;)
    P.P.S. The idle EPG grabber is currently broken. When I fix it, I intend to enable it to use idle tuners even if timeshifting and/or recording is active. In other words, TV Server does not have to be completely idle. Only the tuner has to be idle. For now I don't intend to support simultaneous grabbing with multiple tuners.
     

    mm1352000

    Retired Team Member
  • Premium Supporter
  • September 1, 2008
    21,577
    8,224
    Home Country
    New Zealand New Zealand
    Here the link where it was discussed. https://forum.team-mediaportal.com/index.php?threads/98091/ should we restart the topic or is there a general epg rework where this can be placed?
    In the first post of the thread, @Vasilich says:
    right now DVB EPG grab time can be set only in minutes, and i found no reason why we have to wait at least one minute for EPG grabbing - other programs don't have such long delay before grabbing starts. So first part of patch changes delay units for this from minutes to seconds.

    The purpose of the grab time (timeout) setting is to set a limit on the maximum time that the grabber will wait for data to be received. This solves a potential problem: if no EPG data is available then we don't want the grabber to wait forever (hang). To be clear: when Vasilich says "...other programs don't have such a long delay before grabbing starts", I think he must have been confused... because the setting should not have any relationship to a start delay.

    Having said that, when you look at the patch you can see this:
    - _epgTimer.Interval = timeout * 60000;
    + _epgTimer.Interval = timeout * 1000;

    That change can make a difference to the "start delay" because the first timer "pulse" comes after _epgTimer.Interval milliseconds, and _epgTimer.Interval is calculated based on the timeout. However, the fact that the timeout affects the start delay is bad. That should be considered a separate bug. The solution for that bug would simply be to trigger the timer callback when the timer is started (so you get an immediate grabber startup as expected), not to reduce the timeout/interval.

    In other words, I could not accept this patch in current form.

    Vasilich also says:
    Another part of patch sets minimum value for delay to 1 instead of 0 - i tried to set it to 0 somewhen and wasn't able to watch TV with exception loggged.

    That is definitely a true bug which the patch fixes. I also found and fixed that bug in TVE 3.5. :)
     

    snowball

    Portal Pro
    December 24, 2008
    51
    12
    Home Country
    Germany Germany
    Hi, i think the timeout always is used also when epg is received for a channel. At least that is the behavior i have seen for me. Means with default code it did waited in worst case 1 minute * channels to grap. With my patch to refresh channels before grap cycle 1 minute * transponders as he does not regrap then a channel when another channel on the transponder was grapped. Maybe that is a problem on my system only. But it helped to reduce the time below minutes and i never had issues that within the time 10 seconds epg was not grapped. I am happy to test also the new engine. But iwould need to set up another system. Family would kill me when i use the prod system. Ill have a read into tve3.5
     

    aspik

    Retired Team Member
  • Team MediaPortal
  • April 14, 2008
    1,322
    586
    P.S. This is still a work in progress. Feedback welcome.

    Those screenshots looks really nice, much better then in TVE3! Are the changes already in the latest available native TV build for MP2? Taking from the screenshots you did them in Visual Studio and not from a running TV-Server?
     

    Users who are viewing this thread

    Top Bottom