Where's the Debugging HOW-TO?
#1
I am new to XBMC, but certainly not to software development or to UNIX. (I've been doing both for over 30 years.)

I've taken a stab at trying to run XBMCbuntu (and make it do something useful) on my trusty old MSI laptop (w/HDMI) and so far, I'm sorry to say, most of the stuff I have tried to make it do is failing rather badly... all for reasons I'm not at all clear on. The good news is that XBMCbuntu does boot and comes up all the way, but the fun ends right about there.

As a software engineer myself, I would like to lend a hand and see if I can contribute fixes for the various problems I've already encountered, but even the minimal guidance that it would take to get rolling on this seems to be hard to come by. So I'm asking here.

I'm not going to use this post to talk about ALL of the several problems that I've already encountered while trying to run XBMCbuntu (even though I will describe the most show-stopper problems in a P.S. attached below). I'll save the other nits that I've found and describe those on another day, and probably in a different forum. For today, I just want to talk about one very serious show-stopper, and then get some guidance on how to debug this.

In a nutshell, I managed to get XBMCbuntu installed successfully on an 8GD USB flash drive and I managed to get my laptop to boot that and bring up XBMCbuntu. So far so good. (At boot time, I already had an external USB DVD/CD drive also attached to the laptop, in addition to the USB flash drive I was booting from.)

Once XBMCbuntu had booted all the way to XBMC, I placed a (pre-decrypted) DVD into the DVD drive, and XBMCbuntu apparently did recognize it and even showed me the title of the DVD under Video->Files. It took me awhile to figure out that I needed to right click on that, rather than left click (which would have been more intuitive) but I did eventually right click on the DVD title and then selected "Run" or "Play" or "Watch"... or whatever it was, I don't remember anymore and it isn't really important to my question anyway.

The bottom line is that after I did that, NOTHING happened. I mean nothing... except for the fact that after that, the mouse cursor was frozen. I was patient, but the whole machine was basically frozen for a long long time. I could do nothing else via the GUI, but I managed to find a hint someplace online saying that ALT-F2 would get me to a command line console. So I did that, logged in, and ran top. Of course, that showed a process... xbmc.something... sucking up 99.9% of the CPU time.

I'm guessing that this is due to a bug in the XBMC application... an endless loop. (Gee. Ya think? :-)

So now, would some kind soul just get me started? What would YOU do next? Should I fish out the PID and send the errant process a SIGQUIT (kill -3) so that I'll maybe get it to coredump and then run gdb on the coredump file? Or is it the case that in the stock releases of XBMCbuntu, all of the binaries have been stripped so that running GDB on the coredump file is useless/pointless?

Sigh. I am guessing that I'm gonna need to build XBMC from sources with -g turned on and stripping disabled and then load that up and crash it before I'm gonna get anything I can debug. Correct? Assuming so, then I have two questions: (1) Which Makefile options are recommended in order to get a debuggable binary for xbmc? and (2) Once I send the thing a SIGQUIT, where is the coredump file for that going to go? What directory should I be looking for it in? (I'm more familiar with FreeBSD than Linux, and on FreeBSD the coredump file gets stashed, I think, in whatever directory the program was started from... or perhaps whichever one it happens to be cd'd into at the moment it crashes. I forget, but it is one of those two. So, what directory is the xbmc binary started from in XBMCbuntu? What directories does xbmc typically change into during its lifetime?)

Thanks in advance to anyone willing to help me to be productive and useful to this community.


Regards,
rfg


P.S. I know that I should probably save the following (which is mostly about what I consider to be missing fundamental and indispensable features) and post it in some more appropriate other place, but I did mention above that, right off the bat, several things appeared, at least to THIS new user, to be essentially non-functional, so I hope nobody will begrudge me too much if I just get a couple of these things off my chest. (These are the kinds of things that, if I am able, I would probably like to help to implement and/or fix.)

So, the issues...

In addition to not actually being able to simply play a non-encrypted DVD that's loaded into the local DVD drive, there are also a few things that XBMCbuntu is seriously not doing for me, out-of-the-box, and that I personally think are indispensable things it really ought to do, for example:

1) Somewhere in the XBMC menu system... probably underneath "System"... there really really REALLY ought to be a button that one could click to bring up an xterm+sh command line window. An experienced UNIX/Linux user shouldn't have to google around for a half an hour just to find out that you can do Alt-F2 or Alt-F3 to get to a command line prompt. It should be right there in the GUI menu system, easy to find and in an obvious place. (And anyway, I haven't seen documented anywhere how one gets _back_ to the XBMC GUI _after_ one has done Alt-F2, which is a also a serious shortcoming. In an xterm sub-shell under X, one typically just types `exit' and that makes the xterm window just disappear so that you can easily and intuitively go back to whatever you were doing before.)

Seriously boys & girls, being perpetually trapped in a maddening maze of twisty little pre-defined GUI options, all different, is most definitely NOT my idea of either a good time OR a good user experience. In fact it is distinctly and thoroughly user-UNfriendly. C'mon now. I can quickly and easily get to a command line _even_ under dd-wrt on my teeny tiny little router! Why should XBMC be _less_ sophisticated and _less_ user friendly than that?

There will ALWAYS be things that an experienced user can do (or fix) if he/she can just get under the hood. Hell! Even Bill Gates & Co. have understood this simple truth well enough to include an easy way to get to a command line prompt in _every_ version of MS Windows ever released. Does XBCM want to be judged as being _less_ sophisticated than the ____ that comes out of Redmond? I doubt it.

2) For me at least, once XBMCbuntu had booted all the way up, it appears to me that it didn't even notice the fact that I had a second USB flash drive plugged in... one with lots of my pictures, movies, and music on it... most of which I wanted to play in XMBMC. As Jerry Seinfeld used to say ``What's up with that??'' And also, there was no obvious way, via the GUI, to induce XBMCbuntu to become aware of the presence of the 2nd USB flash drive. (This is another example of a situation in which having ready access to a command line prompt might have helped enormously.)

3) So, I could not get to play stuff from the 2nd USB flash drive, but there's always the network, right? All of my content is sitting over on the computer in my den (which is exporting it all as a single Windoze share). Surely, XBMCbuntu, running on my wireless-enabled laptop in the living room, ought to be able to easily suck that content from the den to the living room, right? Well, apparently not.

Ideally on any machine that has one or more built-in or currently accessible wireless adapters... at least the ones that Linux knows how to drive anyway... when XBMC first comes up, it really should ask the user, for each one of the wireless adapters present, if he, the user, wants to connect each of those wireless adapters to anything in particular. THAT would be user-friendly.

But not only is there no apparent or obvious ``user friendly'' way to connect, wirelessly, to all of my content. That alone would be bad enough! But the really annoying part is that on boot up, XBMCbuntu never even bothered to ask me if I wanted to do so!

So, um, lemme see... I can't access the content on the 2nd USB flash drive, and try as I might, I cannot induce XBMCbuntu to list for me any of the available local wireless access points (as even my brain-damaged LG BD670 Blu-Ray player will do), let alone allowing me to connect to any of them. Swell. So now I have this terrific media player (XBMCbuntu) and essentially no way to get any actual media into it. (Yes, yes, I know that I _could_ actually install XBMCbuntu on the laptop hard drive, and THEN I might be able to get it to see just *one* USB drive with content on it, and likewise, if I futzed around long enough, e.g. telnet'ing or ssh'ing in on a hardwired line, I could maybe even eventually get the wireless to work. But that's not the point. The point is that even my dumb old LG Blu-Ray player makes all this exact same stuff... loccal USB drive access and wireless network connectivity... simple as pie, and easily accessible through its GUI. XBMC should too.)

These and other things are things I'd like to fix, if I can manage to get that far.

My sincere apologies if I have offended anyone with my comments. I actually very much like what I have seen of XBMC so far, notwithstanding the various problems I have encountered. And of course, the bad thing about my LG Blu-Ray player (which I have compared XBMC to above) is that whenever *it* has a bug (or ``non-feature'') there isn't a damn thing that *I* can do about it, except to bitch to LG and hope that someday they may fix it. But with XBMC, if there's something bothering me about it, then at least maybe I can roll up my sleeves and fix it myself (and contribute the fix back to the community). And that, of course, makes all the difference.
Reply
#2
Forget a GUI command-line prompt, ssh in from another box. That's what we do. Trying to mess about with a command-line prompt in gui while xbmc is running is too intrusive.

gdb and attach to the pid, control-c and bt to see where it's hanging. Armed with that 'thread apply all bt', c/p (there's a reason we ssh in Smile and paste to www.pastebin.com (or similar) and post the URL here so we can see too.

The other thing of importance is xbmc.log, don't clip it or grep for what you think might be important. It's all important when debugging. Again, www.pastebin.com is your friend. Where is xbmc.log ?, 'sudo find / -name xbmc.log', works every time Smile

As far as comparing XBMC to a commercial hardware box like the LG Blu-Ray player, XBMC is free, supported by the hard work of many, many xbmc devs who spend their free time developing something that others might enjoy. We do not make a dime off XBMC and it cost nothing beside the effort to download it. LG has massive resources and spends a ton of money on development and they of course make this back and more through your purchase of their box. Think about your comparison now for a bit.

I will admit that wireless and linux is about the most braindead thing around, but hey. I suggest as I do for everyone running wireless and a media center, don't. It's a total waste of time as you cannot control the available bandwidth and something will always get in the way to trying to pump 30-50Mbit 1080p video. I run OSX boxes mostly and there wireless is seamless, but even on my OSX boxes, there's no way I would depend on a wireless media center. Just too many variables to be 100 percent reliable.





Reply
#3
1. XBMCbuntu is designed to be a fullscreen appliance, though I agree it's a bit of a hybrid as it has the heavy-weight Ubuntu sitting under it. You're not supposed to know there's an operating system sitting underneath it that you can do stuff with. Also, ALT-F2 is a property of the OS, it's not a property of XBMC, and nor should there ever be any command prompt inside XBMC itself: If you want an OS with XBMC as an app, then use the appropriate system for that (i.e. install Ubuntu, or your OS of choice, and install XBMC as an app on top of that). You should be able to "Exit" XBMC (press S or the power button on the home screen) to get back to a command prompt, though again, this may depend on how XBMCbuntu has set things up.

2. The USB drive *should* have been auto-mounted, and thus appeared directly as a source in the UI, or at the very least under the "Add Source" menu, but this could be an XBMCbuntu related thing - I dunno. If you could help debug this that'd be great. Smile

3. I'm not sure if XBMCbuntu even has the wifi stuff that the more appliance-oriented OpenElec has. That might be worth a try though for your scenario - it's specifically tuned to running as an appliance.

Let us know what you find out - we highly value all contributions, particularly if they help out directly via debugging/patching etc. Smile

Cheers,
Jonathan
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#4
First, a brief reply to davilla:

I accept your point that the Right Way to do this may indeed be to ssh in from another box, HOWEVER, as I also noted (and you also noticed, I believe) one of the ``issues'' I have had with this thing is that it *didn't* seem to give me any way to connect to the network. If it had, I believe that I would have been ssh'd in already, and (maybe) happily banging away trying to fix the other issues I've spoken about. But it didn't, so I guess now my only real alternative, is to drag my laptop... which I had hooped would become a _living room_ appliance... out of the living room and back into the ``lab'' where I can hardwire it up and, with luck, ssh in. (Sadly, I do not have the requisite 50 foot cat5e or cat6 cable necessary to just leave it where it is and still have it hardwired. And I'm not sure that I'd use it even if I did have it because it would be a safety hazard... likely to be tripped on sometime.)

Furthermore, and perhaps more to the point, certain of the issues that, eventually, I hope to debug, can only be reproduced when the laptop is out in the living room and HDMI-hardwired to my flat-screen plasma. (I didn't mention it earlier, but another quite unexpected and equally aggravating non-feature of the current incarnation of XBMC is that when I play a WMV thru XBMC on my MSI x340-218US laptop through to my big-screen plasma, for reasons unknown, the *picture* comes out mostly ok, but the sound *only* plays through the tiny little laptop speakers, and *not* on the TV. I can't debug problem this while the machine is hardwired into my local net unless I go out and buy the aforementioned 50 ft cat5e/cat6. Having at least a working wireless connection would make this all one hell of a lot easier, obviously.)

As regards to gdb "attach", yes, definitely, I should do that. But I still need to get something that has been compiled with -g or it will be pointless. So I will just ask again (even though I'm pretty sure the answer will be `no'), in the official releases, in particular, XBMCbuntu, is the xbmc executable compiled with -g and unstripped?

As regards to your point that a comparison between XBMC and Blu-Ray firmware from a commercial behemoth like LG is an unfair comparison... well... yes and no. LG has more money, certainly, but I'll wager a sizable amount that XBMC has vastly more people... and probably more talented people... working on it than any piece of firmware out of LG. So there's that. (And I've been around free open source software a long long LONG time and I've never heard it claimed that free open source can't compete and even beat any similar software coming out of the commercial closed world. So your point is also non-compelling for that reason too.) Lastly and perhaps most importantly, like it or not, commercial closed-source products like the LG BD670 *are* the things which XBMC *will* be compared against... certainly in the minds of many many people, including myself, who are primarily just looking for a best working solution, and not a full-time hobby.

You also advised not to try to stream 30-50Mbit/sec over wireless. I have only one question... Why the bleep shouldn't I? My router does `N' (doesn't everbody's these days?) at up to 150Mbit/sec, and gets a majority of that, in practice, most of the time. My LG BD670 also speaks `N'. Last but not least, the MSI laptop that I still hoping to see XBMC working on also has built in `N' wireless networking. I think that you are being far far too pessimistic, and I for one most certainly _do_ plan to stream HD from my server into the laptop in the living room, wirelessly. (I should perhaps mention also that my plasma only does 720p anyway, so I, for one, don't really need to be streaming full 1080p over wireless. I can live with a bit less than than and still be in video nirvana.)

Oh yea, and by the way, how do you think they plan on getting content into the Pivos XIOS box? If wireless HD streaming in the home really isn't going to work, then I think that there are going to be some pretty unhappy VCs a year or so from now.

In response to jmarshall...

You said:

>You're not supposed to know there's an operating system sitting underneath it that you can do stuff with.

Allow me to offer the personal observation that treating your own user base as if they were all stupid children is not inherently ``user friendly''. Seriously, people are not stupid... not nowadays, when even cell phones are capable of ``crashing'', anyway. Not anymore. *Everybody* knows that underneath *every* layer of technology, there is another lower level of technology that is holding up the upper layer, and that, under the right conditions and circumstances, that lower layer can itself become seriously hosed (thus requiring either professional, or, more often these days, end user attention). Hell! Even the penultimate example of a ``closed'' piece of technology... my lousy *&^%$# Comcast DVR box... has a lower level that even a third grader can get to, and that in fact I myself have had to get to, on occasion, because that's where you have to go to get the box to output 720p rather than 1080p.

By refusing to include an easily accessible menu item that will get the user quickly and easily to a command line prompt for the underlying OS, the XBMC project is effectively slapping a big traditional closed-source ``Caution! Removing screws will void your warranty. NO USER SERVICEABLE PARTS INSIDE.'' sticker onto each and every copy of XBMC that goes out the door. I expect this kind of thing from companies with proprietary secret stuff that they are trying hard to hide from everybody (even if the attempted hiding rarely actually works in practice, as any number of cloners and reverse engineers will tell you), but I sure as hell never would have expected this kind of ``close it off'' and ``protect the user from himself'' attitude within a free open source project. It is just entirely incongruous, to my way of thinking.

You also said:

>Also, ALT-F2 is a property of the OS, it's not a property of XBMC

All the more reason to put a route to a comand line within XBMC itself. This way, at least, it will have a consistant, and perhaps even entirely identical user interface to get to it no matter what the underyling OS. No need to go and google for funny OS-specific keyboard tricks. IOt's just right there, under System->Tools->CommandPrompt

You also said:

>nor should there ever be any command prompt inside XBMC itself:

Well, technically, it wouldn't be. It would just be a button that would cause the forking off of an xterm child process (or a CMD.EXE thingy under Windoze, I guess). The code of XBMC would hardly change at all.

>If you want an OS with XBMC as an app, then use the appropriate system for that (i.e. install Ubuntu, or your OS of choice, and
>install XBMC as an app on top of that).

I'm sorry, but I really don't know what that means. Can you please explain? How exactly is Ubuntu+XBMC different from XBMCbuntu?
Seems like a distinction without a difference to me.

You may see some subtle difference, but I sure don't. Neither, I expect, does (or would) 99.9% of the XBMC user base.

You also wrote:

>2. The USB drive *should* have been auto-mounted,

We agree entirely. The point is that it wasn't. Surprise, surprise! Complex software systems have previously unreported bugs. If I had been able to quickly and easily drop down into a command line prompt, then I feel sure that I could have easily just mounted the thing manually/explicitly, and then I would have been a... well.. let's just say that I would have been a much less UN-happy camper. But it wasn't there for me, so all I could do was to suffer and grumble.

>3. I'm not sure if XBMCbuntu even has the wifi stuff that the more appliance-oriented OpenElec has.

OK. I'll bite. Why not?

XBMC is a media player. It runs on and/or has been ported to lots of things that have little or no local disk.

So where exactly is the ``media'' that XBMC is going to play supposed to come from? Cosmic rays? Telepathy?

Obviously, at some point in time the XBMC developers all agreed that no, we don't want to get into THAT whole can of worms (i.e. connective & wireless issues). We just want to make a good media player. I can't say that I blame them. One of the ways that projects like this often go off the rails is by losing focus on the primary/central project goals. But on the other hand, what good is a media player if a typical end user can't get media into it to play?

Like it or not, I really don't think that connectivity/wireless issues are something the the XBMC project can just shrug off and then say ``Not our job man.''

But anyway, thank you jmarshall for the advice. Sincerly. I most certainly will go over and check out OpenELEC. (I looked at already a bit a few days ago, but now I will give it a second look. But I stand by my point that I think that, like it or not, connectivity is, unavoidably, an integral part of what XBMC, ought to be, needs to be, and will eventually and inevitably evolve to be. Time will tell.)
Reply
#5
(2012-10-03, 10:29)ronbaby-x Wrote: Allow me to offer the personal observation that treating your own user base as if they were all stupid children is not inherently ``user friendly''. Seriously, people are not stupid... not nowadays, when even cell phones are capable of ``crashing'', anyway. Not anymore. *Everybody* knows that underneath *every* layer of technology, there is another lower level of technology that is holding up the upper layer, and that, under the right conditions and circumstances, that lower layer can itself become seriously hosed (thus requiring either professional, or, more often these days, end user attention). Hell! Even the penultimate example of a ``closed'' piece of technology... my lousy *&^%$# Comcast DVR box... has a lower level that even a third grader can get to, and that in fact I myself have had to get to, on occasion, because that's where you have to go to get the box to output 720p rather than 1080p.

Seriously? Do you really believe that? People are not that smart or just don't wanna be. You are way to biased because you have more computer experience than the average person (or maybe 90% or more). As are we who use and just know our way around it much too well. It really helps me to see new users (without computer experience) setting things up so I could tell what needs improvement

(please don't this personally. This is just how I have experienced the average Joe using XBMC or any other computer program, appliance or tech device)

OpenELEC is the way to go IMO. It's fast and simple to setup. Has a good install guide and very very stable for me for a long time. I've even been using custom XBMC Frodo builds that haven't failed me yet. It's missing all the features the more experienced user want however for people that just something that works this is the perfect solution.
Sure i just have everything wired but also have a laptop (win7) and a Nexus7 which i use wireless and it works.

There could be tons of improvements but the point is one of the devs (in or outside the team) needs to pick up the code and start cracking at it. Usually new features or improvements come from the fact that a certain dev is interested in coding such a feature or something by very popular request. But even then it will only be done if the dev has interest in it. That's the beauty of open source, everyone can help on improving this great piece of software Smile
Read/follow the forum rules.
For troubleshooting and bug reporting, read this first
Interested in seeing some YouTube videos about Kodi? Go here and subscribe
Reply
#6
Wireless depends too much on local conditions such as;

1) cordless phones and microwaves that stomp on and spew into the wifi band.

2) how was your house built ? if paster, the now typical plaster job uses a wire mesh as substrate. Opps, now you have a partial faraday cage and your wifi signal is severally degraded.

3) how many walls and obstructions are you trying to shoot the wifi signal through. 1, 2, 3, 10 ? Are any of those obstructions metal (refrigerators, washers, dryers, etc) It matters if you want good bandwidth. Each obstruction will degrade the wifi signal. Radio signals are not magic entities that mysteriously pass though everything, it matters in the same way that most sat signals get eaten by rain (aka rain fade). It's the wrong freq to punch through the water band.

4) how many other wifi APs are floating around ? How many of those are running at the same freq. I've seen some cases where there are literally 25+ access points, all competing with each other for bandwidth but the browser works (but slow) so who cares right ? Try that with a high bandwidth video and it's epic fail time.

These are just a few tiny few examples of what can wreck your pristine wifi network Smile

About Pivos, in controlled setups, I have zero problems with wifi. However, most users don't run controlled setups, see 1-4 above... I never said wifi cannot work, I said that it's unreliable and results are site dependent.

About your other problems, sorry can't help there but I do know one thing, there will never, ever be a command-prompt exposed in XBMC GUI, that defeats the entire purpose. Smile

Sounds like something is borked in XBMCbuntu. Try OpenElec.
Reply
#7
Well Ok - I'm trying to not sound offended but i can't stop myself from writing something here.

1. You are willing to debug a problem - thats great and we appreciate that. You are also telling that you are an experienced developer with 30 years of background. Nice! (gets better and better). You ask if XBMC is compiled as debug with -g (and asked it twice because you couldn't get an answer yet). Well i can't tell you that because i don't know XBMCbuntu (its maintained by one other dev). But if i was an linux experience developer i would just attach gdb to the process and see if i get symbols. If i get those its a debug build - if not its not. But you know that. (the excuse about not getting connection to the box doesn't count here. As of what and how you write you should be able to do this without relying on XBMCs features).

2. The USB stick which wasn't detected. What kind of filesystem did you use on that. It might be simply missing the kernel module for that filesystem. (and its definitly not a generic problem - most likely related to XBMCBuntu and not XBMC itself).

3. I second that there will be no console reachable from within XBMC. And i can only say that really each linux/unix user (not the youngsters maybe but you seem to be old enough) be aware of the fact that the X server just runs on a console (mostly console number 7 or 5) and that you are able to switch consoles by using alt+f<number>. So not knowing that tells me that "experienced" is a realtive term. And that is totally out of XBMCs scope because it only applies to linux.

4. What you want is OpenElec as an appliance. XBMCBuntu is not that thing. On the first boot of XBMCBuntu you might need to quit XBMC and setup the network in Ubuntu (like you would with a normal ubuntu by using the network manager i guess). And yes we have XBMC versions where you can setup the wifi from within XBMC (speaking of OpenElec again and the pivos stuff).

5. XBMC on Ubuntu is different to XBMCbuntu in the case that it doesn't boot into XBMC. So it doesn't give that appliance feeling that might have tricked you into the assumption that everything has to work from withing XBMC.

Don't be offended by that. Its just that i'm skeptical - because on the one hand you introduce yourself as a unix geek with experience and blahblahblah, but on the other hand you point out problems which normally only hold off normal users (and in a way which i'm experiencing normally only with non-understanding/non-developer people by saying something like "every stupid poop dvdplayer does this and that but XBMC doesn't").

So if you are a professional developer you should behave like that - or just don't even mention it.

Beside that what i take away from your feedback is that it looks like XBMCBuntu seems to be a bit b0rked for first time users (maybe there should be a onetime network wizard before starting XBMC the first time or so).
AppleTV4/iPhone/iPod/iPad: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for Kodi: NFS (wiki)
HowTo configure avahi (zeroconf): Avahi_Zeroconf (wiki)
READ THE IOS FAQ!: iOS FAQ (wiki)
Reply
#8
I have almost zero experience in unix (specially as a programmer or system expert) and even though difficult I have managed mostly under my own steam to to get xbmc working with a few different machines. I learned all my unix from this. (3 years crap experience) But I learned how to use a shell and some ssh commands.

If I had any experience in coding and unix I would make sure that my skills would be used to add support so that xbmc does work out of the box with as many machines as possible, while keeping it as extensible and flexible as possible. (read ubuntuish+openelec) I can understand the XBMCbuntu frustration, it is rather a sad deviationfrom XBMClive, which was tons better in many ways (leaner and could still add ubuntu features like a desktop) without pushing anything else but what was required for your machine, even if it wasnt 100% out of box, it was better than nothing.

Without typing out a novel here, all I can read is blablablabla, moan, moan, moan... (you do apologise and even sya your willing to fix it (so DO IT). Xbmc Needs all the skilled help it can get.

Thers 3 alternatives, eiither help, by helping yourself or contribute or go somewhere else use something else.
Reply
#9
I want to say, seriously and sincerely, thanks to everyone who replied. You've all made very good and appropriate points.

Since my last post, I've gone off and done what I should probably have done to begin with, i.e. just downloaded the excellent Windows port of XBMC to the Windoze 7 partition on the laptop harddive, and then just run that as a Windoze application. I've done that now, and it has been educational and enlightening, and of course, it worked like a charm. (Of course, I _did_ have to make sure that all of my desired UBS drives were plugged in and visible to Windoze, and that my network shares were all already up and mapped in as Windoze shares before I actually ran the XBMC application. But as long as I did that, all was well, even though the UI had a couple of small aspects to it that I personally did not find to be immediately intuitive. But that's OK! That's what the manual is for, right?)

I am also now busily building the FreeBSD port of XBMC (on a reasonably fast tower system that I have) so that I can run it as a FreeBSD application, and (hopefully) do some debugging and/or enhancement work on it in that environment. (I am entirely more comfortable with FreeBSD than I am with Linux, actually.) I've also ordered the special connectors I need in order to get my laptop... which is my ultimate target for XBMC... wired in properly to my desktop KVM so that I can comfortably do development on that too
(with a full sized keyboard, a 24" screen, and hardwired at gigabit speed to my router).

Anyway, yes, trying to use XBMCBuntu was probably not the best way for me to have started out. I realize that now. Thanks to all who pointed this out.

Regarding the wireless bandwidth issue that davilla has raised, all can say for now is that I was able to stream DVD-DL quality video out to my laptop in the living room (and to XBMC running on top of Windows) and thence out to my 42" plasma, and it looked just beautiful. And I quite certainly *am* in a 2.4GHz noisy area... an apartment where, it seems, _everybody_ all around me has their own APs (and there are lots of cordless phones, including mine). I don't know how well this same test is going to go when I get to the point of trying the same thing with some actual HD off a Blu-Ray. I'll let you know when I get there. But I remain optimistic.

Regarding the various ideas I've had for XBMC enhancements (which are what brought me here in the first place), quite obviously, my #1 idea (shell access) ain't popular. That's perfectly alright, of course. If & when I do actually get to the point of hacking that up myself, I'll certainly offer the relevant patches back to the community and then everyone can take it or leave it as they prefer.

In closing, I'm sorry but I just cannot resist the temptation to quickly list the few other things that I think should eventually be added into XBMC (and which I hope to find time to work on myself). The list is small, because really XBMC _is_ quite good just as it is.

#2) A network management hunk of UI. This would allow the user to do all manner of network-related stuff, in particular, browsing available wireless APs, browsing available SMB shares and/or available NSF partitions/directories, specifying passwords, as necessary, for all of the forgoing, actually mounting/attaching/dismounting/detatching SMB and/or NFS thingies, setting DHCP parameters and/or static address(es), etc. etc., etc. As I've already belabored (and I apologize if I have belabored this point too much already) XBMC is a fine media player, but it quite obviously has to get the media its going to play from _somewhere_ . Thus, it seems to me, specifying and attaching to various typical network somewheres is, or ought to be, quite rightly, an integrated part of XBMC's UI.

#3) It would be kinda nice also if one didn't have to exit the XBMC user interface just in order to properly eject/umount each and every writable USB mass storage device. Something akin to the Windows little-green-arrow "eject" icon is in order, IMHO.

#4) I think that it is safe to say that XBMC will (eventually if not already) be used more often on ordinary laptops than on any other single device type. I bought my own laptop in April 2010, and at that time, HDMI output was still rather unusual on low-end laptops (which mine is and was). I just did some checking yesterday however, and it appears that both BestBuy.com and Amazon nowadays stock about a gazillion different laptop models that have HDMI output ports. This seems to be becoming the norm, rather than the exception, if it hasn't already.

The point I'm driving at is that it would be Extraordinarily Helpful (to what I suspect either is or will be a majority of XBMC users) if somewhere in the XBMC UI there was a modest little battery life indicator. (It could be and should be small and unobtrusive.)

The above 4 things are all things that I'd like to take a whack at hacking into the UI. It certainly won't be easy, since I fundamentally don't know squat about UIs generally, and I also don't know squat about XBMC internals in particular. But I am going to go off now and see how much I can learn.

I do have one small question before I go. On this page:

http://wiki.xbmc.org/index.php?title=XBM...quirements

it is specified that (as regards to ATI graphics) an X800 is the absolute minimum supported. Unfortunately, the system I want to use for most of my attempted XBMC hacking has just an X600 card. Do I _really_ need to replace that, or can I limp along with the X600, you know, as long as I don't try to do anything above std-def?


Regards,
rfg


P.S. I do apologize if anyone has been even the least bit offended by either this posting or my two earlier ones. That was certainly not my intent. I don't know anyone here, so certainly and obviously, nothing I've said can or should be taken personally. And as regards to the XBMC project as a whole, I say again that regardless of the few small nits I may have seemed to have been picking, I think that XBMC is, overall, a fine thing, and I consider myself lucky to be afforded the opportunity to get in and grunge around to my heart's content in the source code... something I obviously cannot do at all with any closed source commercial product.
Reply
#10
Network management is handled in OpenElec I believe - i.e. the setting up of the network, connection to wifi and so on.

Once the network is up, XBMC will connect just fine to any smb or nfs share (among others) - you don't need to mount it (though depending on what else you use the machine for, you may find it more convenient to do so) and can add these sources via "Add Source".

I'm not sure how USB storage works on win32 (or on other platforms for that matter) as most folk tend to use a NAS instead. There may be an eject option in the context menu for those that make sense to be able to eject perhaps? If not, it's something that could be explored.

Lastly, most folk want XBMC connected to their TV, and don't want to have to hook their laptop up to it (whether it be a new one or an old one). Thus, small form factor units such as the apple TV 2, the various Android based boxes coming out (Pivos), the raspberry Pi, mac mini, ION boxes and so on are typically what are used. Thus, laptops I suspect aren't necessarily the dominant hardware, though there's no reason you couldn't do so (I use XBMC on my laptop for watching movies when the main TV is being used for shows I'd rather not watch, for example).

For this reason, XBMC does have an interface/API available for battery level - it's normally shown in System Information - dunno if it's hooked up for your platform of choice, as this stuff is quite platform dependent.

Cheers,
Jonathan
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#11
Regarding #3
I have never used safe removal of USB since back in Windows XP
It never failed on me once. I just plugin and remove USB drives. IIRC even OpenELEC can remove USB drives or i just pull them out without problems (havebn't used it a lot cause i have network drives).
Edit: This is of course no guarantee and it can happen something goes wrong

About the X600 card.
There are some very cheap ($25,-) cards out there that can handle almost everything now days. Spending that little amount of money will safe you lots of headache and annoyance with poor performing video.
Remember the GUI rendering is done by CPU so upgrading your video card won't help in that respect
Read/follow the forum rules.
For troubleshooting and bug reporting, read this first
Interested in seeing some YouTube videos about Kodi? Go here and subscribe
Reply
#12
careful... gui is of course rendered by the gpu.
Reply
#13
(2012-10-05, 01:03)ronbaby-x Wrote: A network management hunk of UI. This would allow the user to do all manner of network-related stuff, in particular, browsing available wireless APs, browsing available SMB shares and/or available NSF partitions/directories, specifying passwords, as necessary, for all of the forgoing, actually mounting/attaching/dismounting/detatching SMB and/or NFS thingies, setting DHCP parameters and/or static address(es), etc. etc., etc. As I've already belabored (and I apologize if I have belabored this point too much already) XBMC is a fine media player, but it quite obviously has to get the media its going to play from _somewhere_ . Thus, it seems to me, specifying and attaching to various typical network somewheres is, or ought to be, quite rightly, an integrated part of XBMC's UI.

There are some patches for cross-platform Network Manager for XBMC with GUI settings available from topfs2 and garbear

http://forum.xbmc.org/showthread.php?pid=614770
http://trac.xbmc.org/ticket/7248

http://forum.xbmc.org/showthread.php?tid=99054
https://github.com/xbmc/xbmc/pull/303
https://github.com/xbmc/xbmc/pull/131

Looks like just POC so never been merged into XBMC mainline, but maybe you could clean up the code and resubmit the patches?


It would be very nice to have the same Network Manager GUI inside XBMC across all platforms for appliance style setups. However I do not agree that browsing network shares belongs in the network manager, that's for network configuration only, such as WiFi access port, Static IP address or DHCP and so on.
Reply
#14
Here we go about batterylevel. Seems its already there for windows - see:

https://github.com/xbmc/xbmc/blob/master...ll.cpp#L75

implementation here:

https://github.com/xbmc/xbmc/blob/master...l.cpp#L295

You should see it in the systeminfo dialog because of this:

https://github.com/xbmc/xbmc/blob/master...o.cpp#L100

For getting an idea on how to add it to a skin see skin.touched who already does this (with a tiny battery indicator).

https://github.com/xbmc/skin.touched/blo...s.xml#L171
AppleTV4/iPhone/iPod/iPad: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for Kodi: NFS (wiki)
HowTo configure avahi (zeroconf): Avahi_Zeroconf (wiki)
READ THE IOS FAQ!: iOS FAQ (wiki)
Reply
#15
My thanks again to Jmarshall, Martijn, RockerC, and Memphiz. All of this information is terrifically helpful and greatly appreciated.

Just one more word about the writable USB device removal issue... I have no idea what goes on within the guts of Windows when such removals occur. I do know however that on *NIX systems, even if you haven't actually written to the thing, since the time when it was mounted, it is generally considered improper, if not to say altogether crass and uncouth, to simply unplug such things without formally umount'ing them first. I'm sure that most people get away with it most of the time, but Dog only knows what effects there might be if, under any kind of *NIX system, one were to simply unplug one of those things, and then subsequently plug in a different one. (And I am thinking that it might depend on the kinds of filesystems involved. I personally know very little about the various ext* filesystems, but under *BSD, for the native UFS filesystem, even if you don't explicitly write to a mounted thing, I do believe that something in the filesystems gets updated upon umount, so that at the next boot or re-mount, the filesystem in question will be treated as being "clean" and not in need of fsck.)
Reply

Logout Mark Read Team Forum Stats Members Help
Where's the Debugging HOW-TO?0