[vlc-devel] New widget for EPG

Marian Ďurkovič md at bts.sk
Tue Sep 22 12:08:58 CEST 2009

On Tue, Sep 22, 2009 at 10:35:29AM +0200, Jean-Baptiste Kempf wrote:
> While those tests are great, let's face it, this is a bad solution.
> I'll try to make an EPG widget in Qt4, if I know how to get some data.

Great, that would be of course the best solution!

First, I uploaded a sample stream (epg.ts) to streams.videolan.org upload
area. This is a raw TS dump with all of SDT, EIT p/f and EIT schedule
entries encoded in ISO6937. After pressing play, wait for at least 15 seconds
(the repetition interval of EIT schedule) and press pause - now all the
EPG data is loaded and Infopanel will display it.

As for the current VLC implementation, EPG data, kept in vlc_epg_event_t
are handed over to GUI via input_item_SetEpg() function in src/input/item.c,
which feeds it between the streaminfo entries. The EPG entries could be
identified by having "EPG " as first four characters of 
p_item->pp_categories[i]->psz_name. I.e. those shouldn't be displayed
in the Third panel, but in the new EPG panel instead.

In my development tree I have also a small patch, which splits the event
items a bit differently, i.e:

- putting start date/time, name and duration of the event, i.e.
     "2009-09-22 11:00:00 Dobrá rada na zlato (00:35)"
  into   p_item->pp_categories[i]->pp_infos[j]->psz_name

- and putting all the description texts (which could be extremely
  long and might contain CR/LFs inside) 
  into   p_item->pp_categories[i]->pp_infos[j]->psz_value

IMHO the new EPG widget should display only the psz_name items initially
(the list of events) and after e.g. poiting on a specific event (?)
it could display the formatted description text (psz_value). What I have
in mind is something like a help text displayed in a small yellow window
when you point on some item in Preferences dialog.

Not sure if / how efficiently is that doable within the QT4 framework, but
the above could probably be used as a starting idea.

     Thanks & kind regards,


More information about the vlc-devel mailing list