New MythTV add-on using libcmyth

  Thread Rating:
  • 8 Votes - 4.75 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
fiveisalive Offline
Fan
Posts: 371
Joined: Jul 2009
Reputation: 0
Location: United States
Post: #211
Weatherman Wrote:They are on different physical systems. I have (2) XBMC front ends that will connect to my MythBuntu VM.

I pulled the path information from the mysql database on Mythbuntu. The icons don't appear to be "in" the database, but there is a link to them.

- Mark

That might be the problem. I think xbmc expects to find them locally. The thumbnail location is stored in the Epg5.db (pulled from the mythbackend) as file path. You can maybe check where the add-on thinks they are using sqlite3 on this db. e.g.

Code:
$ cd .xbmc/userdata/Database/
$ sqlite3 Epg5.db
> .table
> SELECT * FROM epg;

(.table lists the tables available, if you need to check the names of the tables). If the SELECT statement shows the paths to the icons, but they are file locations relative to your mythbackend filesystem (rather than your xbmc filesystem), then there's the problem.
find quote
deadite66 Offline
Donor
Posts: 230
Joined: Aug 2008
Reputation: 0
Location: UK
Post: #212
anyone had any problems with xbmc.bin taking 113% cpu after a while?
back to 35% after restarting.

i believe its related to this.
Code:
[350681.953505] init: mythtv-backend main process (3950) terminated with status 134
[350681.953583] init: mythtv-backend main process ended, respawning

i have noticed this when i've changed the backend settings or stopped/restarted mythbackend then xbmc.bin cpu load will get very high.

Asus E2KM1I-DELUXE (E2-2000 with HD7340) 60GB SSD + 2TB WD Caviar Green : xubuntu Trusty x64 : 3.14.2, (mythtv 0.27+fixes + 2x PCTV 290e DVB-T2)
Acer aspire revo R3600 Ubuntu Oneiric.
ASRock ION 3D, atom D525/ion2, 2GB ram, 1TB HDD running Ubuntu Precise. - in storage

(This post was last modified: 2011-10-27 00:22 by deadite66.)
find quote
tsp42 Offline
Senior Member
Posts: 222
Joined: Aug 2011
Reputation: 11
Location: Denmark
Post: #213
Weatherman: I have not added the code to fetch the icons and thumbnails yet from MythTV so it will only work if xbmc and mythtv is on the same computer.

deadite66: The add-on does not yet handle if the connection is lost to the backend so that most likely explains the increase in cpu utilization (this also includes suspending the computer running xbmc).
find quote
fiveisalive Offline
Fan
Posts: 371
Joined: Jul 2009
Reputation: 0
Location: United States
Post: #214
tsp42 Wrote:Weatherman: I have not added the code to fetch the icons and thumbnails yet from MythTV so it will only work if xbmc and mythtv is on the same computer.

deadite66: The add-on does not yet handle if the connection is lost to the backend so that most likely explains the increase in cpu utilization (this also includes suspending the computer running xbmc).

tsp42: I notice that there is a new branch on your (tsp) github repo: "PVR". Is that where the new stuff will land? should we still track master? Looks there have been a number of fixes in dushmaniacs branch (esp. related to EPG).

Lastly, you mentioned replacing timer screen with "upcoming" recordings, and having a dialog for editing the rules. Would it make sense to suggest adding that to the main pvr code too? (i.e. do the other add-ons have the same concept?) It would be nice to have that PVR-wide and in addition it will make it easier for new skins to support the extra window if it is a PVR-wide standard (as opposed to being an add-on window).
find quote
fiveisalive Offline
Fan
Posts: 371
Joined: Jul 2009
Reputation: 0
Location: United States
Post: #215
Another feature request (ultimately should be pvr-wide, but it occurred to me that it could be "road-tested" in this cmyth add-on and later pushed to dushmaniac's repo) would be to add more useful information on the recordings screen. See my FR in dushmaniac's branch here:

https://github.com/opdenkamp/xbmc/issues/287
find quote
glst0rm Offline
Junior Member
Posts: 8
Joined: Oct 2011
Reputation: 0
Post: #216
I'm trying to compile tsp-xbmc on a Hardy virtual machine for use on an Apple TV. I've installed all the dependencies yet am stuck on this make error:

Full error here: http://pastebin.com/YaenxqeC

Code:
make[1]: Leaving directory `/home/settop/temp/tsp-xbmc/tsp-xbmc-98a6f0f/xbmc/screensavers/rsxs-0.9/xbmc'
make -C lib/libapetag
make[1]: Entering directory `/home/settop/temp/tsp-xbmc/tsp-xbmc-98a6f0f/lib/libapetag'
make  all-am
make[2]: Entering directory `/home/settop/temp/tsp-xbmc/tsp-xbmc-98a6f0f/lib/libapetag'
make[2]: Leaving directory `/home/settop/temp/tsp-xbmc/tsp-xbmc-98a6f0f/lib/libapetag'
make[1]: Leaving directory `/home/settop/temp/tsp-xbmc/tsp-xbmc-98a6f0f/lib/libapetag'
CPP     xbmc/utils/TimeSmoother.o
In file included from TimeSmoother.cpp:23:
TimeSmoother.h:25:37: error: boost/circular_buffer.hpp: No such file or directory
In file included from TimeSmoother.cpp:23:
TimeSmoother.h:127: error: expected ‘,’ or ‘...’ before ‘::’ token
TimeSmoother.h:127: error: ISO C++ forbids declaration of ‘boost’ with no type
TimeSmoother.h:156: error: expected ‘,’ or ‘...’ before ‘::’ token
TimeSmoother.h:156: error: ISO C++ forbids declaration of ‘boost’ with no type
TimeSmoother.h:167: error: expected ‘,’ or ‘...’ before ‘::’ token
TimeSmoother.h:167: error: ISO C++ forbids declaration of ‘boost’ with no type
TimeSmoother.h:180: error: ‘boost’ has not been declared
TimeSmoother.h:180: error: ISO C++ forbids declaration of ‘circular_buffer’ with no type
TimeSmoother.h:180: error: expected ‘;’ before ‘<’ token
TimeSmoother.h:181: error: ‘boost’ has not been declared
TimeSmoother.h:181: error: ISO C++ forbids declaration of ‘circular_buffer’ with no type
TimeSmoother.h:181: error: expected ‘;’ before ‘<’ token
TimeSmoother.h:186: error: ‘boost’ has not been declared
TimeSmoother.h:186: error: ISO C++ forbids declaration of ‘circular_buffer’ with no type
TimeSmoother.h:186: error: expected ‘;’ before ‘<’ token
TimeSmoother.h:187: error: ‘boost’ has not been declared

Code:
make[1]: *** [TimeSmoother.o] Error 1
make: *** [xbmc/utils/utils.a] Error 2

Does anyone recognize this build error? Thanks for your help.

Steven
find quote
tsp42 Offline
Senior Member
Posts: 222
Joined: Aug 2011
Reputation: 11
Location: Denmark
Post: #217
fiveisalive: the PVR branch is just my attempt to merge the code that are not specific to the myth-tv add-on with dushmaniacs PVR code. It should make it easier for me to push my changes to his fork.
At least TVHeaded and Media Portal supports more complicated recording rules like recording new episodes of a TV show although not as extreme as MythTV. It would be nice to have it in the main PVR branch but I guess it should be highly customizable to support the differences between the backends. I'm currently working on updating the addon GUI code so I can show a custom window. It would be nice if xbmc PVR handled it instead.
It is a good suggestion with the recording screen but it may take a while before I have time to look at it though.

glst0rm: It looks like the boost library is not installed or installed wrongly.
find quote
Jimmer Offline
Donor
Posts: 339
Joined: Jan 2010
Reputation: 3
Location: Sunny Devon, UK
Post: #218
glst0rm Wrote:I'm trying to compile tsp-xbmc on a Hardy virtual machine for use on an Apple TV. I've installed all the dependencies yet am stuck on this make error:

Full error here: http://pastebin.com/YaenxqeC

Code:
make[1]: Leaving directory `/home/settop/temp/tsp-xbmc/tsp-xbmc-98a6f0f/xbmc/screensavers/rsxs-0.9/xbmc'
make -C lib/libapetag
make[1]: Entering directory `/home/settop/temp/tsp-xbmc/tsp-xbmc-98a6f0f/lib/libapetag'
make  all-am
make[2]: Entering directory `/home/settop/temp/tsp-xbmc/tsp-xbmc-98a6f0f/lib/libapetag'
make[2]: Leaving directory `/home/settop/temp/tsp-xbmc/tsp-xbmc-98a6f0f/lib/libapetag'
make[1]: Leaving directory `/home/settop/temp/tsp-xbmc/tsp-xbmc-98a6f0f/lib/libapetag'
CPP     xbmc/utils/TimeSmoother.o
In file included from TimeSmoother.cpp:23:
TimeSmoother.h:25:37: error: boost/circular_buffer.hpp: No such file or directory
In file included from TimeSmoother.cpp:23:
TimeSmoother.h:127: error: expected ‘,’ or ‘...’ before ‘::’ token
TimeSmoother.h:127: error: ISO C++ forbids declaration of ‘boost’ with no type
TimeSmoother.h:156: error: expected ‘,’ or ‘...’ before ‘::’ token
TimeSmoother.h:156: error: ISO C++ forbids declaration of ‘boost’ with no type
TimeSmoother.h:167: error: expected ‘,’ or ‘...’ before ‘::’ token
TimeSmoother.h:167: error: ISO C++ forbids declaration of ‘boost’ with no type
TimeSmoother.h:180: error: ‘boost’ has not been declared
TimeSmoother.h:180: error: ISO C++ forbids declaration of ‘circular_buffer’ with no type
TimeSmoother.h:180: error: expected ‘;’ before ‘<’ token
TimeSmoother.h:181: error: ‘boost’ has not been declared
TimeSmoother.h:181: error: ISO C++ forbids declaration of ‘circular_buffer’ with no type
TimeSmoother.h:181: error: expected ‘;’ before ‘<’ token
TimeSmoother.h:186: error: ‘boost’ has not been declared
TimeSmoother.h:186: error: ISO C++ forbids declaration of ‘circular_buffer’ with no type
TimeSmoother.h:186: error: expected ‘;’ before ‘<’ token
TimeSmoother.h:187: error: ‘boost’ has not been declared

Code:
make[1]: *** [TimeSmoother.o] Error 1
make: *** [xbmc/utils/utils.a] Error 2

Does anyone recognize this build error? Thanks for your help.

Steven

Code:
sudo apt-get install bjam

wget http://sourceforge.net/projects/boost/files/boost/1.46.1/boost_1_46_1.tar.gz

tar -xzf boost_1_46_1.tar.gz

cd boost_1_46_1

./bootstrap.sh

sudo ./bjam install --prefix=/usr/local

sudo ldconfig

don't think the version of boost supplied with hardy is sufficient anymore. The above is what I did to get a working boost on my system (thanks to dynaflash for the above)

Jimmer

PS if that alone doesn't help you (i.e. further config problems..... get back in touch and I'll let you have my editted README.ubuntu which I cobbled together as I was putting together my build enviroment in the first place)
(This post was last modified: 2011-10-27 12:17 by Jimmer.)
find quote
glst0rm Offline
Junior Member
Posts: 8
Joined: Oct 2011
Reputation: 0
Post: #219
Jimmer: thank you, that got me past my error.

Now I'm hitting another error, which I think may be related to the version of Python I use. I've tried both Python 2.5 (installed with Hardy) and Python 2.6.2 installed from source.

Using Python 2.5:

Code:
pyrendercapture.cpp: In function ‘PyObject* PYXBMC::RenderCapture_GetImage(PYXBMC::RenderCapture*, PyObject*)’:
pyrendercapture.cpp:126: error: ‘PyByteArray_FromStringAndSize’ was not declared in this scope
/home/settop/temp/tsp-xbmc/tsp-xbmc-98a6f0f/xbmc/guilib/GraphicContext.h: At global scope:
/home/settop/temp/tsp-xbmc/tsp-xbmc-98a6f0f/xbmc/guilib/GraphicContext.h:245: warning: ‘g_graphicsContext’ defined but not used
make[1]: *** [pyrendercapture.o] Error 1
make: *** [xbmc/interfaces/python/xbmcmodule/xbmcmodule.a] Error 2

Using Python 2.6:

Code:
/usr/local/lib/python2.6/config/libpython2.6.a(posixmodule.o): In function `posix_tmpnam':
/home/settop/Desktop/Python-2.6/./Modules/posixmodule.c:7074: warning: the use of `tmpnam_r' is dangerous, better use `mkstemp'
/usr/local/lib/python2.6/config/libpython2.6.a(posixmodule.o): In function `posix_tempnam':
/home/settop/Desktop/Python-2.6/./Modules/posixmodule.c:7029: warning: the use of `tempnam' is dangerous, better use `mkstemp'
/usr/local/lib/python2.6/config/libpython2.6.a(posixmodule.o): In function `posix_forkpty':
posixmodule.c:(.text+0x32cd): undefined reference to `forkpty'
/usr/local/lib/python2.6/config/libpython2.6.a(posixmodule.o): In function `posix_openpty':
posixmodule.c:(.text+0x334c): undefined reference to `openpty'
collect2: ld returned 1 exit status
make: *** [xbmc.bin] Error 1
(This post was last modified: 2011-10-28 15:46 by glst0rm.)
find quote
Jimmer Offline
Donor
Posts: 339
Joined: Jan 2010
Reputation: 3
Location: Sunny Devon, UK
Post: #220
glst0rm Wrote:Jimmer: thank you, that got me past my error.

Now I'm hitting another error, which I think may be related to the version of Python I use. I've tried both Python 2.5 (installed with Hardy) and Python 2.6.2 installed from source.

Using Python 2.5:

Code:
pyrendercapture.cpp: In function ‘PyObject* PYXBMC::RenderCapture_GetImage(PYXBMC::RenderCapture*, PyObject*)’:
pyrendercapture.cpp:126: error: ‘PyByteArray_FromStringAndSize’ was not declared in this scope
/home/settop/temp/tsp-xbmc/tsp-xbmc-98a6f0f/xbmc/guilib/GraphicContext.h: At global scope:
/home/settop/temp/tsp-xbmc/tsp-xbmc-98a6f0f/xbmc/guilib/GraphicContext.h:245: warning: ‘g_graphicsContext’ defined but not used
make[1]: *** [pyrendercapture.o] Error 1
make: *** [xbmc/interfaces/python/xbmcmodule/xbmcmodule.a] Error 2

Using Python 2.6:

Code:
/usr/local/lib/python2.6/config/libpython2.6.a(posixmodule.o): In function `posix_tmpnam':
/home/settop/Desktop/Python-2.6/./Modules/posixmodule.c:7074: warning: the use of `tmpnam_r' is dangerous, better use `mkstemp'
/usr/local/lib/python2.6/config/libpython2.6.a(posixmodule.o): In function `posix_tempnam':
/home/settop/Desktop/Python-2.6/./Modules/posixmodule.c:7029: warning: the use of `tempnam' is dangerous, better use `mkstemp'
/usr/local/lib/python2.6/config/libpython2.6.a(posixmodule.o): In function `posix_forkpty':
posixmodule.c:(.text+0x32cd): undefined reference to `forkpty'
/usr/local/lib/python2.6/config/libpython2.6.a(posixmodule.o): In function `posix_openpty':
posixmodule.c:(.text+0x334c): undefined reference to `openpty'
collect2: ld returned 1 exit status
make: *** [xbmc.bin] Error 1

When you built 2.6.2 from source did you get module errors at compile time? I did originally and eventually grabbed python2.6 like this:

Code:
PYTHON2.6:
sudo nano /etc/apt/sources.list
add:
deb http://ppa.launchpad.net/python-dev/ppa/ubuntu hardy main
deb-src http://ppa.launchpad.net/python-dev/ppa/ubuntu hardy main
then:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys D81367B9
sudo apt-get update
sudo apt-get install python2.6
sudo apt-get install python2.6-dev

then I made a symlink from /usr/bin/python2.6 /usr/bin/python

I'm not sure if this breaks something else in the system. If you don't want to do this, you can export your python version at config time ie:

PYTHON_VERSION=2.6 ./configure --blah --blah --enable-external-python

Hope this helps!
find quote
Jimmer Offline
Donor
Posts: 339
Joined: Jan 2010
Reputation: 3
Location: Sunny Devon, UK
Post: #221
glstr0m:

Hardy Build Deps for pre-eden on ATV1

Hope this helps!

(I think we should free up this thread for the original purpose again now!)

Jimmer
find quote
glst0rm Offline
Junior Member
Posts: 8
Joined: Oct 2011
Reputation: 0
Post: #222
Jimmer Wrote:glstr0m:

Hardy Build Deps for pre-eden on ATV1

Hope this helps!

(I think we should free up this thread for the original purpose again now!)

Jimmer

Thank you, this has been really helpful. Now back to regularly scheduled thread programming. Big Grin

Steven
find quote
fiveisalive Offline
Fan
Posts: 371
Joined: Jul 2009
Reputation: 0
Location: United States
Post: #223
Looks like dushmaniac's updated his repo to rebase with upstream:

https://github.com/opdenkamp/xbmc/commits/master

Any chance of a rebase in the tsp trunk? It seems like he's also fixed some various EPG issues.
find quote
cfetzer Offline
Fan
Posts: 307
Joined: Jul 2011
Reputation: 16
Post: #224
Awesome work! This looks really promising. I have been using mythbox for a while but this is much better integrated :-)

Right now I also have some epg issues. In the channel view only a few channels show data. The timeline shows data for all channels but the blocks are not at the correct position and some shows are even missing. I live in germany UTC+1 so it could be related to a timezone problem. The details show the correct start/end times.
I'm not sure whether this should be fixed already. If you need more info, i could provide you some logs.

Another thing that comes to my mind is the priority handling between live tv and recordings. If live tv is blocking a recording mythfrontend shows a dialog and lets the user choose. with xbmc the recording gets just skipped without any notification. Do you plan to support this?
In addition there are 2 mythtv settings related to this. One is "LastFreeCard" or "Avoid conflicts between live TV and scheduled shows". The backend will then return the last available tuner for live tv. The other option is "LiveTVPriority" or "Allow live TV to move scheduled shows" that allows the scheduler to use some other tuner for the recording. Those options are evaluated by the backend but set for each frontend in the mythtv database. Unfortunately it seems that they are ignored when using xbmc as frontend.
Any idea how we can get the backend to read them from the database?

Cheers
Christian

MythTV PVR addon - Wiki - Development
find quote
avus m3 Offline
Senior Member
Posts: 245
Joined: May 2010
Reputation: 0
Post: #225
Cool stuff!

[Image: widget]
find quote
Post Reply