New MythTV add-on using libcmyth

  Thread Rating:
  • 8 Votes - 4.75 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
quickFuse Offline
Junior Member
Posts: 1
Joined: May 2012
Reputation: 0
Post: #826
How I built and installed this on Ubuntu 12.04

First I downloaded Precise Pangolin, I used the PC (Intel x86) desktop CD http://releases.ubuntu.com/precise/. I used Unetbootin to create a bootable USB drive from the above ISO. Then I booted the USB drive and performed a new install taking the option to install any package updates.

Once installed the first thing I did was install binary drivers for my graphics card (AMD A8-3850 with ATI Radeon HD 6550D graphics in my case) using the provided Ubuntu wizard. A notification window basically pops up prompting you to do this when you first login.

Now I installed mythtv and other build dependencies as documented in earlier posts and from README.ubuntu in the source and started the build process:
Code:
# Note this installs MythTV 0.25 +fixes on this version of Ubuntu.
apt-get install mythtv

# Note a few of these get replaced, use -s to check which
apt-get install git git-core make g++ gcc gawk pmount libtool nasm yasm automake cmake gperf zip unzip bison libsdl-dev libsdl-image1.2-dev libsdl-gfx1.2-dev libsdl-mixer1.2-dev libfribidi-dev liblzo2-dev libfreetype6-dev libsqlite3-dev libogg-dev libasound-dev python-sqlite libglew-dev libcurl3 libcurl4-gnutls-dev libxrandr-dev libxrender-dev libmad0-dev libogg-dev libvorbisenc2 libsmbclient-dev libmysqlclient-dev libpcre3-dev libdbus-1-dev libhal-dev libhal-storage-dev libjasper-dev libfontconfig-dev libbz2-dev libboost-dev libenca-dev libxt-dev libxmu-dev libpng-dev libjpeg-dev libpulse-dev mesa-utils libcdio-dev libsamplerate-dev libmpeg3-dev libflac-dev libiso9660-dev libass-dev libssl-dev fp-compiler gdc libmpeg2-4-dev libmicrohttpd-dev libmodplug-dev libssh-dev gettext cvs python-dev libyajl-dev libboost-thread-dev libplist-dev autopoint

# As noted in the first post of this thread
apt-get install libboost-regex-dev libboost-filesystem-dev libboost-dev

# Download the sources
git clone https://github.com/tsp/xbmc.git
cd xbmc
git checkout Eden-pvr

# Start the build process
./bootstrap
./configure
make

As noted above there's still a typo in the source (at least in my checkout of the code from a few mins ago) in tools.h at line 119. You can fix that with this patch:
Code:
--- tools.h.orig        2012-05-27 11:42:20.697377134 -0400
+++ tools.h     2012-05-27 11:42:41.144778174 -0400
@@ -116,7 +116,7 @@
   {
     if (mutex && locked)
     {
-      Mutex->Unlock();
+      mutex->Unlock();
       locked = false;
       return true;
     }

Also as noted above there are 3 compile errors in fileOps.cpp from calls to XBMC->Log. I basically just commented them out, or rather hacked them to compile. Not sure what the proper fix is.

Then I did make install and tested out the software. I had some pretty cool results. For comparison, I've been using MythBox on XBMCbuntu 11.10 for some time, and wanted to try this PVR branch instead and also get mythtv-0.25 in the process. I'm using OTA for reception with an HVR-2250 tuner and I was very surprised to see the results of the first channel scan bring in another 6 channels than I usually get! I was then even more pleased after installing the new Aeon Nox 3 skin, which has the Live TV menu there. Awesome! Seemed like it was time to upgrade....

Unfortunately I've had to since image this HTPC back to the XBMCbuntu 11.10 install for now, as changing channels is just unbearably slow. Like 10 seconds or maybe even more. Too frustrating. There seems to be some other stability issues as well but I don't have anything specific in terms of logging or debugging to provide. MythBox is a little slow to change channels but it's at least pretty stable.

I took an image just before reverting back, so I can re-image back to the 12.04 install sometime and update, rebuild and experiment some more. It was fun to test it out, and Thanks again to everybody putting in their efforts. Looking forward to some improvements allowing for a stable transition, it just feels a lot tighter than the MythBox thing.
find quote
tsp42 Offline
Senior Member
Posts: 222
Joined: Aug 2011
Reputation: 11
Location: Denmark
Post: #827
(2012-05-27 12:29)opteron123 Wrote:  BLAST!!! (Damn I'm having a bad day)

I have just had to re-apt-get tinyxml headers to compile the latest git pull...weird.

Won't compile now because of boost library cStdString errors, is that related to what InoD has experienced? Or will I have to reinstall boost libraries again.

So giving up on ubuntu for the moment and testing on Win7 laptop.

Windows build 22052012 crashes after updating channel listings from 0.25 mythtv backend, is this a known issue, or have i stuffed something up here too?

Also where are the logs stored on windows XBMC?

Cheers.
The compile errors should be fixed now. The windows build shouldn't crash but I will have to update the build to the latest version (Do you use the Eden or master build?). The log file is stored in the \Users\[USERNAME]\AppData\Roaming\XBMC directory.

quickFuse: I'm working on improving the channel switch time. Is the time is takes to switch channel with my addon comparable to the time it takes MythBox to open LiveTV an display the first channel?.

Libcmyth MythTV addon for xbmc-pvr [source] [forum thread]
find quote
bilbonvidia Offline
Fan
Posts: 458
Joined: Jun 2011
Reputation: 2
Location: Britain
Post: #828
Hi tsp42, It takes 12 seconds ish to change channels on xbmc 4- 7 seems to vary on mythtv after a brief test. 7 second to first come on mythtv and 14 on xbmc, this is with xbmcbuntu upgraded to 12.04. From what I have read, 4 seconds is a very fast change for mythtv.

Cheers
find quote
andyb2000 Offline
Junior Member
Posts: 42
Joined: Jul 2011
Reputation: 0
Location: North-East, UK
Post: #829
Hi all,
Just did a git pull to get the latest, compile itself looked fine (after a few tweaks as posted previously by others), but as soon as the plugin starts up it crashes xbmc. It looks like it might be a version mismatch, my myth backend shows:

Code:
2012-05-27 22:11:44.607 MainServer::HandleAnnounce FileTransfer
2012-05-27 22:11:44.645 adding: XBMCLive as a remote file transfer
2012-05-27 22:11:46.696 RingBuf(/var/lib/mythtv/livetv/23272_20120527221143.mpg) Error: OpenFile(): File too small (0B).
2012-05-27 22:11:46.860 TVRec(1): Changing from WatchingLiveTV to None
2012-05-27 22:12:00.646 MainServer::HandleVersion - Client speaks protocol version 8 but we speak 63!
2012-05-27 22:12:00.683 MainServer, Warning: Unknown socket closing MythSocket(0xffffffffa9902620)
2012-05-27 22:12:00.685 MainServer::ANN Playback
2012-05-27 22:12:00.776 adding: XBMCLive as a client (events: 0)
2012-05-27 22:12:00.823 TVRec(1): Changing from None to WatchingLiveTV
2012-05-27 22:12:00.866 TVRec(1): HW Tuner: 1->1
2012-05-27 22:12:01.405 LoadFromScheduler(): Error, called from backend.
2012-05-27 22:12:01.409 AutoExpire: CalcParams(): Max required Free Space: 3.0 GB w/freq: 14 min
2012-05-27 22:12:01.468 DTVMux, Error: Invalid symbol rate parameter '0', aborting.
2012-05-27 22:12:01.528 DVBChan(1:/dev/dvb/adapter1/frontend0) Error: SetChannelByString(111): Failed to initialize mult
iplex options

Is this because of my mythbackend being old? It shows mythbackend version: fixes/0.24


XBMC log shows:

Code:
10:33:43 T:2850384704  NOTICE: Thread CTCPServer start, auto delete: false
10:33:43 T:2976275264   ERROR: SetThreadInfo: error Permission denied
10:33:43 T:2976275264  NOTICE: Thread PVR add-on updater start, auto delete: false
10:33:43 T:2976275264   DEBUG: PVR - ResetProperties - creating PVR add-on instance 'MythTV cmyth PVR Client'
10:33:43 T:3048494912    INFO: GL: Selected vsync mode 2
10:33:43 T:2976275264   DEBUG: InitialiseClient - initialising add-on 'MythTV cmyth PVR Client'
10:33:43 T:2959489856  NOTICE: VideoInfoScanner: Starting scan ..
10:33:43 T:2833021760  NOTICE: Thread Jobworker start, auto delete: true
10:33:43 T:2976275264   DEBUG: ADDON: Dll Initializing - MythTV cmyth PVR Client
10:33:43 T:2833021760   DEBUG: CZeroconfAvahi::doPublishService identifier: servers.jsonrpc-http type: _xbmc-jsonrpc-h._
tcp name:XBMC (XBMCLive) port:8080
10:33:43 T:2833021760   DEBUG: CZeroconfAvahi::addService() named: XBMC (XBMCLive) type: _xbmc-jsonrpc-h._tcp port:8080
10:33:43 T:2976275264   DEBUG: SECTION:LoadDLL(/usr/lib/xbmc/addons/pvr.mythtv.cmyth/XBMC_MythTV_cmyth.pvr)
10:33:43 T:2976275264   DEBUG: Loading: /usr/lib/xbmc/addons/pvr.mythtv.cmyth/XBMC_MythTV_cmyth.pvr
10:33:43 T:2833021760   DEBUG: CZeroconfAvahi::doPublishService identifier: servers.jsonrpc-tpc type: _xbmc-jsonrpc._tcp
name:XBMC (XBMCLive) port:9090
10:33:43 T:2833021760   DEBUG: CZeroconfAvahi::addService() named: XBMC (XBMCLive) type: _xbmc-jsonrpc._tcp port:9090
10:33:43 T:2833021760   DEBUG: CZeroconfAvahi::doPublishService identifier: servers.webapi type: _xbmc-web._tcp name:XBM
C (XBMCLive) port:8080
10:33:43 T:2833021760   DEBUG: CZeroconfAvahi::addService() named: XBMC (XBMCLive) type: _xbmc-web._tcp port:8080
10:33:43 T:2833021760   DEBUG: CZeroconfAvahi::doPublishService identifier: servers.webserver type: _http._tcp name:XBMC
(XBMCLive) port:8080
10:33:43 T:2833021760   DEBUG: CZeroconfAvahi::addService() named: XBMC (XBMCLive) type: _http._tcp port:8080
10:33:43 T:2833021760   DEBUG: CZeroconfAvahi::doPublishService identifier: servers.eventserver type: _xbmc-events._udp
name:XBMC (XBMCLive) port:9777
10:33:43 T:2833021760   DEBUG: CZeroconfAvahi::addService() named: XBMC (XBMCLive) type: _xbmc-events._udp port:9777
10:33:43 T:3018214208  NOTICE: Thread CRssReader start, auto delete: false
10:33:43 T:3018214208   DEBUG: CurlFile::Open(0xb3e64180) http://feeds.feedburner.com/xbmc
10:33:43 T:3018214208    INFO: easy_aquire - Created session to http://feeds.feedburner.com
10:33:43 T:2942704448   DEBUG: CRecentlyAddedJob::UpdateVideos() - Running RecentlyAdded home screen update

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
tsp42 Offline
Senior Member
Posts: 222
Joined: Aug 2011
Reputation: 11
Location: Denmark
Post: #830
andyb2000: No it should work with 0.24. Do you use the eden pvr or master branch? Could you pastebin the crash log so I can see what causes the cras?.

Libcmyth MythTV addon for xbmc-pvr [source] [forum thread]
find quote
andyb2000 Offline
Junior Member
Posts: 42
Joined: Jul 2011
Reputation: 0
Location: North-East, UK
Post: #831
Hm, very strange. I can start it up with plugin disabled and xbmc itself is fine. Enable the add-one I get a crash, or a hang.

http://xbmclogs.com/show.php?id=3042

(EDIT: That first one I didn't have the plugin full debug on, thats with the plugin debug on also)

Is the log from xbmc, the last line is where it hangs, basically I've got xbmc onscreen but totally frozen.

Any ideas what to try next?

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
(This post was last modified: 2012-05-28 15:52 by andyb2000.)
find quote
ZIOLele Offline
Senior Member
Posts: 130
Joined: Oct 2008
Reputation: 0
Post: #832
(2012-05-26 23:31)InoD Wrote:  
(2012-05-26 18:07)druhboruch Wrote:  InoD: Could you share your recent openelec build?

Of course. Please find OpenELEC 2.0 beta 4 with tsp's latest code from his Eden-PVR branch behind the links below:
ION x86_64
Ultra x86_64
(at time of uploading/writing it is no longer latest... the GIT hash tag is in the filename)

Nice! InoD taks for the build, but if your buildscript is integrated in openelec' buildchain, could you share it? so we can build on the latest tsp development.
find quote
tsp42 Offline
Senior Member
Posts: 222
Joined: Aug 2011
Reputation: 11
Location: Denmark
Post: #833
andyb2000: Some of the threads can still be alive and produce log messages. Could you provide me with a full stack trace as described in the very first post in this thread of the deadlocked xbmc.bin process? I can't see any obvious reason for the hang in the log file.

Libcmyth MythTV addon for xbmc-pvr [source] [forum thread]
find quote
apnar Offline
Junior Member
Posts: 15
Joined: Oct 2011
Reputation: 0
Post: #834
(2012-05-28 15:39)andyb2000 Wrote:  Hm, very strange. I can start it up with plugin disabled and xbmc itself is fine. Enable the add-one I get a crash, or a hang.

Any ideas what to try next?

I had a similar issue recently. I switched to a new .xbmc dir and it worked fine.
find quote
KeithLM Offline
Fan
Posts: 300
Joined: Dec 2009
Reputation: 7
Post: #835
While working on some other issues with my client system I noticed that on occasional reboots the PVR client wouldn't start every time and coincidentally that the weather was reporting incorrectly. This lead me to think that there was an issue with network connectivity. I've run into other issues with ubuntu and certain services starting in the wrong order and have found a fix for this. If you are using an XBMCbuntu based installation go to /etc/init and edit the file xbmcbuntu.conf and look for the line that begins with "start on". Change it to the following:
Code:
start on (starting lightdm and net-device-up IFACE!=lo)

This will keep xbmc from starting until the network interface is up and connected.
find quote
andyb2000 Offline
Junior Member
Posts: 42
Joined: Jul 2011
Reputation: 0
Location: North-East, UK
Post: #836
Thanks tsp42, Sorry i hadn't seen the method of getting crashlogs there, I've got them for the hung xbmc process, pasted at:
http://xbmclogs.com/show.php?id=3062

Am going to try resetting my .xbmc home dir and see how that goes too just incase there is something strange in there.
--EDIT: Reset my .xbmc folder, setup just the cmyth add-on, enabled live tv, and same, crash.


KeithLM: Good call, this is a common issue I've spotted when my machine powers up, it complains it cannot connect to the PVR service, wait a few seconds, then it comes up. I also attribute this to using Cisco switches which take a while to go through BLF before the interface passes traffic.

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
(This post was last modified: 2012-05-29 12:06 by andyb2000.)
find quote
rdoac Online
Senior Member
Posts: 171
Joined: May 2009
Reputation: 0
Post: #837
Anyone know what's going on with sound in this version. Everything works until it just decides not to. I get this in the log.

Code:
07:03:55 T:2990332736   DEBUG: CSoftAE::Run - Sink restart flagged
07:03:55 T:2990332736    INFO: CSoftAE::InternalOpenSink - sink incompatible, re-starting
07:03:55 T:2990332736    INFO: CAESinkALSA::Initialize - Attempting to open device iec958:CARD=SB,DEV=0
07:03:55 T:2990332736   ERROR: CAESinkALSA::Initialize - snd_pcm_open_lconf(-16) - iec958:CARD=SB,DEV=0
07:03:55 T:2990332736   ERROR: CAESinkOSS::Initialize - Failed to get supported formats, assuming AFMT_S16_NE
07:03:55 T:2990332736    INFO: CSoftAE::InternalOpenSink - NULL Initialized:
07:03:55 T:2990332736    INFO:   Output Device : iec958:CARD=SB,DEV=0
07:03:55 T:2990332736    INFO:   Sample Rate   : 44100
07:03:55 T:2990332736    INFO:   Sample Format : AE_FMT_FLOAT
07:03:55 T:2990332736    INFO:   Channel Count : 2
07:03:55 T:2990332736    INFO:   Channel Layout: FL,FR
07:03:55 T:2990332736    INFO:   Frames        : 22000
07:03:55 T:2990332736    INFO:   Frame Samples : 2
07:03:55 T:2990332736    INFO:   Frame Size    : 8
07:03:55 T:2990332736   DEBUG: CSoftAE::Initialize - Using speaker layout: 5.1
07:03:55 T:2990332736    INFO: CAEWAVLoader::Initialize - Sound Loaded: /usr/local/share/xbmc/addons/skin.confluence/sounds/cursor.wav
07:03:55 T:2990332736   DEBUG: AERemap: Downmix normalization is enabled
find quote
andyb2000 Offline
Junior Member
Posts: 42
Joined: Jul 2011
Reputation: 0
Location: North-East, UK
Post: #838
Hi rdoac,

I also noticed this with the build, sound effects for the menus, etc, at first boot work fine, however try to play a video, either from your saved ones or via TV and no audio, I get errors about libdvd. I tried the git from dushmaniac and it doesn't suffer from this audio issue (although obviously Myth doesn't work there).

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
InoD Offline
Junior Member
Posts: 38
Joined: Apr 2012
Reputation: 1
Post: #839
(2012-05-28 17:29)ZIOLele Wrote:  Nice! InoD taks for the build, but if your buildscript is integrated in openelec' buildchain, could you share it? so we can build on the latest tsp development.

You're welcome.
My buildscript is really a custom script that automates the steps needed to build OpenELEC with a different XBMC version. I could share it, but it is not pretty nor perfect.
The steps it takes care of for me:
  • Pull and create TAR of XBMC source (this script is from OpenELEC's tree).
  • Copy TAR to local webserver
  • Checkout & Pull OpenELEC tree
  • Patch xbmc-pvr's meta file (modify package source and version)
  • Modify libboost build script (include filesystem lib)
  • Rename xbmc-pvr's patch files
  • Exclude patches that conflict with alternative xbmc source (trial & error)
  • Add custom/personal patches (for debugging)
  • Build target(s)
  • Rename target(s) (so that they are easier to track afterwards)
  • Undo (well try) all modifications done to OpenELEC tree.

I have some options for which XBMC source to get (tsp's or mine) and whether to do debugging and this is where it gets to get messy.
Sometimes my OpenELEC tree gets messed up with changes that weren't undone and since untracked file are not removed on a normal checkout, I sometimes have to manually clean the tree.
Let me know if you dare to use it, then I'll post it.
find quote
dodoadoodoo Offline
Member
Posts: 75
Joined: Jan 2010
Reputation: 1
Post: #840
(2012-05-29 14:09)rdoac Wrote:  Anyone know what's going on with sound in this version. Everything works until it just decides not to. I get this in the log.

Code:
07:03:55 T:2990332736   DEBUG: CSoftAE::Run - Sink restart flagged
07:03:55 T:2990332736    INFO: CSoftAE::InternalOpenSink - sink incompatible, re-starting
07:03:55 T:2990332736    INFO: CAESinkALSA::Initialize - Attempting to open device iec958:CARD=SB,DEV=0
07:03:55 T:2990332736   ERROR: CAESinkALSA::Initialize - snd_pcm_open_lconf(-16) - iec958:CARD=SB,DEV=0
07:03:55 T:2990332736   ERROR: CAESinkOSS::Initialize - Failed to get supported formats, assuming AFMT_S16_NE
07:03:55 T:2990332736    INFO: CSoftAE::InternalOpenSink - NULL Initialized:
07:03:55 T:2990332736    INFO:   Output Device : iec958:CARD=SB,DEV=0
07:03:55 T:2990332736    INFO:   Sample Rate   : 44100
07:03:55 T:2990332736    INFO:   Sample Format : AE_FMT_FLOAT
07:03:55 T:2990332736    INFO:   Channel Count : 2
07:03:55 T:2990332736    INFO:   Channel Layout: FL,FR
07:03:55 T:2990332736    INFO:   Frames        : 22000
07:03:55 T:2990332736    INFO:   Frame Samples : 2
07:03:55 T:2990332736    INFO:   Frame Size    : 8
07:03:55 T:2990332736   DEBUG: CSoftAE::Initialize - Using speaker layout: 5.1
07:03:55 T:2990332736    INFO: CAEWAVLoader::Initialize - Sound Loaded: /usr/local/share/xbmc/addons/skin.confluence/sounds/cursor.wav
07:03:55 T:2990332736   DEBUG: AERemap: Downmix normalization is enabled

Looks like you may have AudioEngine running there. Are you perhaps using the master branch? If so, you should probably post a full log over at that thread.

If there is no particular reason for you to run master (aka pre-frodo) you may want to try the Eden-pvr branch, which is quite stable.

/D
(This post was last modified: 2012-05-29 22:19 by dodoadoodoo.)
find quote
Post Reply