Page 1 of 4

New enhanced EPG

Posted: Tue Jan 08, 2008 9:34 am
by ScanMan
Because i missed some usefull features i created a new EPG.
What's new:
- Collected data will be saved and reloaded.
- Continuosly reading data on tune transponder
- Automatic deletion of old data
- DD-fav's are usable to filter channels
- Filter events with a time window for selected or all channels
- Textsearch in event-name, short- and long description

Also copy the selected event to DD's scheduler is implemented - but will not work yet ! Sorry...

A liitle 'HowTo' is added to the ZIP.

Let me know of you all here like this Module.
If there are some usefull ideas, enhancement will be done soon.

@rel
I tried it like this:

Code: Select all

SendMessage(hwndDD, WM_MODULE_MSG, DDMODAPI_ADD_SCHEDULED_RECORD, Integer(@sr));
where sr is TScheduledRecord from API

Nothing happens when sending this command to DD....

:D ScanMan

Posted: Tue Jan 08, 2008 11:18 am
by jerryt
Sweet.

Can you make the window expandable?
I need to display at 1920 x 1080.

Posted: Tue Jan 08, 2008 11:28 am
by ScanMan
...yes, some users in the german forum asked for this feature.
I also use this resolution on TV in my living room - quite small and not really readable in 5m distance...
But its not really simple to 'zoom' with bigger and bolded text. I have to align all the window new.
This is still something like a beta-release. I'm thinking about to implement this one as an OSD or something else.

Posted: Tue Jan 08, 2008 12:06 pm
by rel
That API command was no longer functioning after switching to windows scheduler.

Here is a patch for the scheduler API command and Dish Net EEPG (PID 0x300 enabled)

LINK REMOVED , CHECK THE LATEST POSTS

Posted: Tue Jan 08, 2008 12:19 pm
by Dabbith
Are you planning on releasing the source to this EPG and/or would you like some help developing it?

Posted: Tue Jan 08, 2008 1:03 pm
by ScanMan
@rel
I copied the exe and the dll to my actual 1.4h directory.
DD's Scheduler didn't receive my SendMessage anyway..

Posted: Tue Jan 08, 2008 1:43 pm
by rel
@rel
I copied the exe and the dll to my actual 1.4h directory.
DD's Scheduler didn't receive my SendMessage anyway..
try this: (should be ok now)
LINK REMOVED , CHECK THE LATEST POSTS

Posted: Tue Jan 08, 2008 3:47 pm
by Dreamer
Good work ScanMan! Also the special Czech/Slovak characters are shown correctly now. :)

Minor suggestions:

- switch to channel on double click
- auto-search with Enter

I'm using HotkeyP for custom hotkeys - I'm using hotkey like R, K, L - and I can't use this characters in the search field. When I press the search button, Spy (part of HotkeyP) shows this Window Class: TGroupBox, but I'm using only these in HotkeyP:

Tfmain|ftvwindow|fvideo|TfPIP

...so probalby in the search field the Window Class is not the same. In DD's Search channel dialog I can use these characters (R, K, L). Where is the problem? :?
I'm thinking about to implement this one as an OSD or something else.
It would be great.

Thank you for all you're doing for DVB Dream!

Posted: Tue Jan 08, 2008 4:09 pm
by petrusek
Great to see some EPG plugin implementing ISO 6973! I confirm good decoding of czech characters except one that is probably not decoded properly: "ĎS" (0xCF, 0x53) should be dispalyed as "Å " (0x0160 in unicode) - not as "|", others seems to be ok.

Posted: Tue Jan 08, 2008 6:00 pm
by CausticSoda
Great job Scanman!

If you are interested, I have a suggestion. When the current channel is DN239, it sends so much EPG info that it nearly locks up the computer. Is there any way to regulate the CPU cycles drawn by the EPG?

Also, is there a way to stop updating the EPG display when the mouse is over it? What happens is the list resets to the end or somewhere else when it refreshes and I can't pick a channel I want because it keeps flipping back there. If the program stopped updating the display when the mouse was over the EPG window, it would be easier to use.

Lastly, I'm only getting two events per channel - even when I go to the extended EPG channel (DN239).

Again, great job and thanks for writing this.

Posted: Tue Jan 08, 2008 6:59 pm
by Dabbith
rel,

The scheduling seems to be working with the 2nd update, but the PID 0x300 parsing seems broken. Using either this new EPG or the internal EPG, the event title and description are empty. The times and durations fill in fine.

Anything I can do to help debug?

Posted: Tue Jan 08, 2008 10:38 pm
by rel
rel,

The scheduling seems to be working with the 2nd update, but the PID 0x300 parsing seems broken. Using either this new EPG or the internal EPG, the event title and description are empty. The times and durations fill in fine.

Anything I can do to help debug?
thanks for testing, I will start a new forum thread for eitparser.dll (EPG parser) updates.


If you are interested, I have a suggestion. When the current channel is DN239, it sends so much EPG info that it nearly locks up the computer. Is there any way to regulate the CPU cycles drawn by the EPG?
@scanman, I think it will need an event buffer in the module. Module should only fill a buffer in callback (it shouldn't do any GUI update in EPG callback) A seperate/another thread should read the events from this buffer and update the GUI.

Are you planning on releasing the source to this EPG and/or would you like some help developing it?
I will post a sample source code after fixing the issues with Dish EEPG

Posted: Wed Jan 09, 2008 12:38 am
by GrEaTwArRiOr
@Scanman awesome module mate everyone is looking for this one
great job :)

* is that possible can i minimize to taskbar / system try feature
and i tried rel second patch its working well but why duration always shows 4.59 i don't get it

Image

* i am getting only 2 events not the hole day or 7 days EPG is it possible? and Arabic letters doesn't show properly ?!@#$%

Image

*there is little GUI problem

Image

thanks and regards,
Gr

Posted: Wed Jan 09, 2008 3:33 am
by ScanMan
@rel
@scanman, I think it will need an event buffer in the module. Module should only fill a buffer in callback (it shouldn't do any GUI update in EPG callback) A seperate/another thread should read the events from this buffer and update the GUI.
Yes, i still know this. Can cause error, crash or hangup. Mostly...
The CallBack here only fills a kind of buffer and converts a few things. No GUI related function/update is called !
The 'MAIN' depends on a simple Timer wich calls a checkroutine every 500ms and sets a flag so that the CallBack returnes immediatly when Data from the buffer is collected new and displayed. Blocking should not happen.

An other curios behavior:
When i first set the CallBack, delivering of data will stop after 1-2 seconds. For continuos reading i managed it like this: The Timer-routine checks a constantly incremented counter from the CallBack. if it stopps, i simply start the CallBack again.
Maybe that this little 'trick' causes some undefined behavior.

@ all other
I'm happy that you like this little EPG.
I will collect all your suggestions / probs and we will have an Update soon.
Following is still fixed/changed here:
- Set active channel with doubleclick (no more separate button)
- Text search on simple RETURN in the edit-box. (no more separate button)
- Set a filter now directly by changing a check-box (no more separate button)
>>> less buttons = easier handling. I hope so...

Posted: Wed Jan 09, 2008 5:58 am
by ScanMan
@rel

Some slightly probs with time and duration when i send an event to scheduler.
Time is about 1 hour 45 minutes back (here) and duration shows the endtime - not duration itself.

Internal i translate the given UNIX date/time from EPG to delphi's TDateTime - regard local offsets with DVBTimeToLocalTime from Helpers.pas.
When i use LocalTimeToDVBTime to convert back before sendig event the time will be more false then before...