Self-Compile - Where to find timeline code?

  Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
andyb2000 Offline
Junior Member
Posts: 40
Joined: Jul 2011
Reputation: 0
Location: North-East, UK
Question  Self-Compile - Where to find timeline code?
Post: #1
Hi,
I'm making a few tweaks to code, mainly just to satisfy my own requirements as we use XBMC as our main TV viewer with TVHeadend as the back-end, so my family have a few demands on how it all works!

One major change I need to make, we use the Timeline view (via a shortcut on the remote), and I need it to display the channels regardless of if there is EPG information or not (basically so the Timeline view is always in the same order).

Where in the code can I find the Timeline that has that IF condition?
I know in the normal channel view it just shows "No information available" when no EPG information exists for that channel at that time, so looking backwards I know thats via string id 19055:
Code:
strings.xml:  <string id="19055">No information available</string>


So searching backwards I've found:
Code:
xbmc/pvr/PVRGUIInfo.cpp:      m_strBackendDiskspace = g_localizeStrings.Get(19055);
xbmc/pvr/PVRManager.cpp:      musictag->SetTitle(epgTagNow ? epgTagNow->Title() : g_localizeStrings.Get(19055));
xbmc/pvr/PVRManager.cpp:      videotag->m_strTitle = epgTagNow ? epgTagNow->Title() : g_localizeStrings.Get(19055);
xbmc/GUIInfoManager.cpp:      return tag ? tag->Title() : g_localizeStrings.Get(19055);
xbmc/GUIInfoManager.cpp:      return tag->GetEPGNow() ? tag->GetEPGNow()->Title() : g_localizeStrings.Get(19055);
xbmc/GUIInfoManager.cpp:      return tag->GetEPGNext() ? tag->GetEPGNext()->Title() : g_localizeStrings.Get(19055);
xbmc/GUIInfoManager.cpp:      return item->GetPVRChannelInfoTag()->GetEPGNow() ? item->GetPVRChannelInfoTag()->GetEPGNow()->Title() : g_localizeStrings.Get(19055);
xbmc/epg/EpgInfoTag.cpp:      g_localizeStrings.Get(19055) :


But I'm struggling to find where the Timeline view gets built and the EPG data assembled for that view.

Can anyone give any hints/ideas where I need to be looking for the condition so I can make a few tweaks and override it so it forces the display even when no EPG data is found.
(This post was last modified: 2011-11-26 14:42 by andyb2000.)
find quote
xxxnelly Offline
Senior Member
Posts: 176
Joined: Dec 2010
Reputation: 1
Post: #2
Hi Andy,

I don't know the code really well but there is a key for guide, its E on the keyboard.

The other thing I would like to see is when you press this key it returns to the timeline at the channel you are currently watching...

I'll be interesting in helping these changes

Neil

--
Frontend : OpenELEC PVR runnig on Acer Revo 3700
Backend : Ubuntu 11.10 running with TVHeadend 1 x DVB-T, 1 x Dual DVB-S2
find quote
FernetMenta Offline
Team-XBMC Developer
Posts: 2,676
Joined: Jul 2010
Reputation: 55
Location: Munich
Post: #3
Are you looking for the GUIEPGGridContainer? This builds the timeline view.
find quote
andyb2000 Offline
Junior Member
Posts: 40
Joined: Jul 2011
Reputation: 0
Location: North-East, UK
Post: #4
Aha, could well be what I'm after. Will do some digging and see if its what I'm after. Thanks for the hint.

Neil: If I figure out the modifications I'll see if I can send them back to the repository/suggest a patch that could be used, I agree the highlight what you're watching on timeline would be good too.

Andy - http://twitter.com/andyb2000 http://www.thebmwz3.co.uk/
HTS Tvheadend development (via http://github.com/andyb2000) On Ubuntu with ST STV0299 DVB-S2, Conexant CX24116/CX24118, Philips TDA10046H DVB-T (Freesat and Freeview in the UK)

XBMC via OpenElec on Dell XPS210
find quote
andyb2000 Offline
Junior Member
Posts: 40
Joined: Jul 2011
Reputation: 0
Location: North-East, UK
Post: #5
Hmm, still struggling to find this code, anybody got any suggestions where I'm obviously missing?

Andy - http://twitter.com/andyb2000 http://www.thebmwz3.co.uk/
HTS Tvheadend development (via http://github.com/andyb2000) On Ubuntu with ST STV0299 DVB-S2, Conexant CX24116/CX24118, Philips TDA10046H DVB-T (Freesat and Freeview in the UK)

XBMC via OpenElec on Dell XPS210
find quote
FernetMenta Offline
Team-XBMC Developer
Posts: 2,676
Joined: Jul 2010
Reputation: 55
Location: Munich
Post: #6
What exactly are you looking for?
find quote
andyb2000 Offline
Junior Member
Posts: 40
Joined: Jul 2011
Reputation: 0
Location: North-East, UK
Post: #7
Hi,
I'm trying to find the part of code that assembles the Timeline view, as in there somewhere I'm assuming it decides if a channel has valid EPG data or not and will hide/skip/return without displaying that channel.

This is basically because I want the timeline to always show all channels, regardless of if they have valid EPG or not (this makes it simpler for the family to understand the timeline without having channels jump in and out of the list)

Andy - http://twitter.com/andyb2000 http://www.thebmwz3.co.uk/
HTS Tvheadend development (via http://github.com/andyb2000) On Ubuntu with ST STV0299 DVB-S2, Conexant CX24116/CX24118, Philips TDA10046H DVB-T (Freesat and Freeview in the UK)

XBMC via OpenElec on Dell XPS210
find quote
FernetMenta Offline
Team-XBMC Developer
Posts: 2,676
Joined: Jul 2010
Reputation: 55
Location: Munich
Post: #8
Check out CGUIEPGGridContainer::OnMessage.
find quote
Swifty Offline
Fan
Posts: 591
Joined: Nov 2008
Reputation: 4
Post: #9
Please get some pull requests setup if you manage to figure this out.
its these little niggles that could make all our lives a little quieter (read; wife) when using xbmc with livetv.
find quote
andyb2000 Offline
Junior Member
Posts: 40
Joined: Jul 2011
Reputation: 0
Location: North-East, UK
Post: #10
Thanks everyone. I'm getting there!
Bit of extra debugging code and I'm finding
Code:
10:55:02 T:3044513536   DEBUG: OnMessage Checking channel tag HL�^H^A^A0�
10:55:02 T:3044513536   DEBUG: OnMessage Channel number 6
10:55:02 T:3044513536   DEBUG: OnMessage Checking channel tag HL�^H^A^A0�
10:55:02 T:3044513536   DEBUG: OnMessage Channel number 6
10:55:02 T:3044513536   DEBUG: OnMessage Checking channel tag HL�^H^A^B0�
10:55:02 T:3044513536   DEBUG: OnMessage Channel number 8
10:55:02 T:3044513536   DEBUG: OnMessage Checking channel tag HL�^H^A^B0�
10:55:02 T:3044513536   DEBUG: OnMessage Channel number 8
10:55:02 T:3044513536   DEBUG: OnMessage Checking channel tag HL�^H^A^B0�
10:55:02 T:3044513536   DEBUG: OnMessage Channel number 8
10:55:02 T:3044513536   DEBUG: OnMessage Checking channel tag HL�^H^A^B0�
10:55:02 T:3044513536   DEBUG: OnMessage Channel number 8

As you can see, Channel 7 was missed, and guess what. Thats one of the channels that currently has no EPG data. So I'm getting there, GUIEPGGridContainer.cpp looks to be where its at, so thank you FernetMenta.

Will keep updating!

Andy - http://twitter.com/andyb2000 http://www.thebmwz3.co.uk/
HTS Tvheadend development (via http://github.com/andyb2000) On Ubuntu with ST STV0299 DVB-S2, Conexant CX24116/CX24118, Philips TDA10046H DVB-T (Freesat and Freeview in the UK)

XBMC via OpenElec on Dell XPS210
find quote
andyb2000 Offline
Junior Member
Posts: 40
Joined: Jul 2011
Reputation: 0
Location: North-East, UK
Post: #11
I've given up as don't understand the code very well/enough to figure out why I can't get this to work!

I've submitted a request:
http://trac.xbmc.org/ticket/12539

Andy - http://twitter.com/andyb2000 http://www.thebmwz3.co.uk/
HTS Tvheadend development (via http://github.com/andyb2000) On Ubuntu with ST STV0299 DVB-S2, Conexant CX24116/CX24118, Philips TDA10046H DVB-T (Freesat and Freeview in the UK)

XBMC via OpenElec on Dell XPS210
find quote
amitn Offline
Junior Member
Posts: 15
Joined: Dec 2011
Reputation: 1
Post: #12
But I think that what you are looking is at

Code:
void CGUIWindowPVRGuide::UpdateViewTimeline(void)
Under:
pvr/windows/GUIWindowPVRGuide.cpp

Amit
find quote