Air Video addon for XBMC


Air Video logoThis is simple enough really: an addon for XBMC that allows you to browse (and stream) from an Air Video server.

Download Air Video Plugin for XBMC

To install this in XBMC, download the zip file above, save it somewhere you can find it, then

System -> Settings -> Addons -> Install from zip file

and browse for the file you just downloaded
Be sure to configure the “Location” in the preferences before use (this should be the ip address of your air video server).

I can take very little credit for this. Most of the Air Video code comes from Jeremy Debate’s port of JP Hastings-Spital’s ruby library for interacting with Air Video, with some minor modifications here and there to get it to work from within XBMC.

Note that I’ve only tested this on Frodo, the latest development build. I would expect it to work without issue in Eden also however.

UPDATE: Please note that if you open a video by simply selecting/clicking it, it will not be transcoded (xbmc will simply attempt to play the file as-is). Transcoding requires opening the file via the context menu/right-click/’C’-key, and does not appear to work correctly in current versions of XBMC due to lack of support for the stream format. Please read the comments below for further details.
(Thanks for signorRossi for this information).

,

  1. #1 by Lee on October 2, 2012 - 10:45 pm

    I get a “Script failed” error when I try and run this. Not sure where I can get a log from but if you point me in the right direction I’ll try and help.

  2. #2 by Lee on October 2, 2012 - 11:28 pm

    I figured it out.

    Line 23 of client.py was falling over with “hashib is not defined”

    You missed out the l in there, changed it to hashlib and it worked.

    I’m very impressed with myself actually. *self-hi-5*

    Unfortunately the streaming doesn’t seem to work for me, even with the lowest bitrate setting it seems to be buffering the video in its native bitrate, it isn’t usable on a 3G connection. I’m sure this is a fault with jezza’s code and not yours.

    • #3 by Bricky on October 3, 2012 - 12:30 am

      Thanks Lee, nice catch!
      Will fix in the repo asap and the change should roll out automatically to everyone who’s using it.

      Regarding the streaming: the default action is to play the video without conversion – to get the low-bitrate version you’d need to open the vid via the context menu (right-click, or ‘c’ key).

      Be aware that conversion doesn’t work with the latest beta of airvideo (or at least not for me) – haven’t had a chance yet to look into the ‘why’.

      Thanks again for your help. Great to get feedback that’s a fix rather than a problem :)

  3. #4 by Huin on October 6, 2012 - 5:39 pm

    I was expecting this from a long time. But I have the same problem, “script failed”. There is an update to version 0.8.1 but with the same problem.
    But thank you very much for this plugin.

  4. #5 by Bricky on October 6, 2012 - 7:33 pm

    Hi Huin, have a look at the xbmc log. It’ll probably tell you where the error is.

    (And let me know if you find it, so I can fix in the repo)

    Thanks

  5. #6 by Huin on October 7, 2012 - 1:10 pm

    Sorry, I can’t find the error. I’ve tried with a numeric URL, with my domain name and I have the same mistake. Air video server is working sure, because I can access with my iPhone. May I send you the logs?
    I am working with OS 10.8.2
    Thanks.

  6. #7 by Bricky on October 7, 2012 - 4:52 pm

    @Huin: maybe search for “error” in the logs and post up any matching lines.
    (the logs are likely to contain sensitive info, you probably wouldn’t want to send them in their entirety)

  7. #8 by Huin on October 8, 2012 - 8:26 am

    17:56:13 T:2958184448 ERROR: Error Type:
    17:56:13 T:2958184448 ERROR: Error Contents: nonnumeric port: ”
    17:56:13 T:2958184448 ERROR: Traceback (most recent call last):
    File “/Users/Thierry/Library/Application Support/XBMC/addons/plugin.video.airvideo/default.py”, line 66, in
    dirItems = theClient.browse(avPath)
    File “/Users/Thierry/Library/Application Support/XBMC/addons/plugin.video.airvideo/resources/lib/pyAirVideo/client.py”, line 44, in browse
    AVDict(“air.video.BrowseRequest”, browsereq))
    File “/Users/Thierry/Library/Application Support/XBMC/addons/plugin.video.airvideo/resources/lib/pyAirVideo/client.py”, line 99, in _request
    response = urllib2.urlopen(request).read()
    File “/Applications/XBMC.app/Contents/Frameworks/lib/python2.6/urllib2.py”, line 126, in urlopen
    return _opener.open(url, data, timeout)
    File “/Applications/XBMC.app/Contents/Frameworks/lib/python2.6/urllib2.py”, line 391, in open
    response = self._open(req, data)
    File “/Applications/XBMC.app/Contents/Frameworks/lib/python2.6/urllib2.py”, line 409, in _open
    ‘_open’, req)
    File “/Applications/XBMC.app/Contents/Frameworks/lib/python2.6/urllib2.py”, line 369, in _call_chain
    result = func(*args)
    File “/Applications/XBMC.app/Contents/Frameworks/lib/python2.6/urllib2.py”, line 1161, in http_open
    return self.do_open(httplib.HTTPConnection, req)
    File “/Applications/XBMC.app/Contents/Frameworks/lib/python2.6/urllib2.py”, line 1107, in do_open
    h = http_class(host, timeout=req.timeout) # will parse host:port
    File “/Applications/XBMC.app/Contents/Frameworks/lib/python2.6/httplib.py”, line 657, in __init__
    self._set_hostport(host, port)
    File “/Applications/XBMC.app/Contents/Frameworks/lib/python2.6/httplib.py”, line 682, in _set_hostport
    raise InvalidURL(“nonnumeric port: ‘%s'” % host[i+1:])
    InvalidURL: nonnumeric port: ”
    File “/Users/Thierry/Library/Application Support/XBMC/addons/plugin.video.airvideo/default.py”, line 66, in
    dirItems = theClient.browse(avPath)
    File “/Users/Thierry/Library/Application Support/XBMC/addons/plugin.video.airvideo/resources/lib/pyAirVideo/client.py”, line 46, in browse
    items = browse_resp[‘result’][‘items’]
    TypeError: ‘NoneType’ object is unsubscriptable

    • #9 by Bricky on October 8, 2012 - 9:53 am

      @Huin: you’ll need to put a value in for the port number:

      Port Number field

      The default value (45631) is probably the value you want.

  8. #10 by Huin on October 9, 2012 - 4:57 pm

    It was not a port mistake, but I added http:// before my ip address. Shame on me!
    It’s a very nice work, thanks for your job.

  9. #11 by Tophicles on October 14, 2012 - 12:35 am

    Couple of problems with this (very promising) plugin!!
    Firstly, if I use it on a LOCAL AirVideo server, it works very well. If I try to use it on a REMOTE AirVideo server, it displays the failed script warning when trying to load the directory of actual items. To clarify, I can connect to the server and get “TV”, then “Breaking Bad”, then a list of the seasons. If I try to go into “Season 2″, for example, I get the script failed notice and the following appears in my xbmc log:
    23:29:46 T:140371736651520 NOTICE: name and path are Breaking Bad – S02E01 – Seven Thirty-Seven.mkv, 32D21FA8086EF654A83F7F94BD8A142E325CE438/Breaking Bad/Season 2/Breaking Bad – S02E01 – Seven Thirty-Seven.mkv
    23:29:46 T:140371736651520 NOTICE: video stream is
    23:29:46 T:140371736651520 ERROR: Error Type:
    23:29:46 T:140371736651520 ERROR: Error Contents: ‘NoneType’ object has no attribute ‘__getitem__’
    23:29:46 T:140371736651520 ERROR: Traceback (most recent call last):
    File “/storage/.xbmc/addons/plugin.video.airvideo/default.py”, line 97, in
    liveUrl = dirItem.live_url()
    File “/storage/.xbmc/addons/plugin.video.airvideo/resources/lib/pyAirVideo/media.py”, line 87, in live_url
    return self.client.get_url(self, True)
    File “/storage/.xbmc/addons/plugin.video.airvideo/resources/lib/pyAirVideo/client.py”, line 72, in get_url
    return url_resp[‘result’][‘contentURL’]
    TypeError: ‘NoneType’ object has no attribute ‘__getitem__’
    23:29:46 T:140373063194432 ERROR: GetDirectory – Error getting plugin://plugin.video.airvideo/?path=32D21FA8086EF654A83F7F94BD8A142E325CE438%2FBreaking+Bad%2FSeason+2
    23:29:46 T:140373063194432 ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.video.airvideo/?path=32D21FA8086EF654A83F7F94BD8A142E325CE438%2FBreaking+Bad%2FSeason+2) failed
    23:29:46 T:140371736651520 NOTICE: Thread XBPyThread start, auto delete: false
    23:29:46 T:140371736651520 NOTICE: –>Python Interpreter Initialized<–

    This happens on any item that has a video file in it. Could it be something with reading media info or filesize?

    Item #2 is slightly more disconcerting. Whenever I reboot the XBMC server with the plugin installed, it kills my networking.
    I can't get a log that shows the error there, but I can't get to the log in time :)

    I'm hoping this plugin continues in development, I think it's a great start!

    • #12 by Bricky on October 14, 2012 - 5:25 am

      @Tophicles:

      It looks like air video isn’t (for whatever reason) receiving a URL for the video files (which xbmc & the plugin need). Maybe the protocol is different when connecting to a remote server? I wouldn’t know enough about it to say (but I understand that others can use remote servers without this issue).

      Is there any possibility that this would be a firewall filtering the URL? It might explain your network issue also.

      (Xbmc doesn’t have the capacity to stop your network from working, so it, or this plugin, can’t be directly responsible for that – but of course they could be indirectly triggering something that is/can)

      Does the remote server work with your ios client? And what versions of client/server/os/xbmc etc are you running?

  10. #13 by Tophicles on October 14, 2012 - 11:09 pm

    Hiya, Bricky;

    I agree with and understand your assessment with the situation. the AirVideo App on my iOS devices work correctly with remote servers.

    I realize the incredulity of my networking statement, I can only say that if this plugin is installed and I reboot, I lose the network totally – no wifi LED or LAN function. If I remove the plugin via it’s “uninstall” option and reboot, the network comes back. It’s odd, I agree…

    Please keep in mind, I’m not trying to (and I hope I don’t) come across as a complainer, I really believe you’re on to something wonderful here!

    IT’s a very, very strange issue :)

    If it helps, I’d be happy to (privately) provide you with access to my AirVideo server for remote testing… let me know. tophicles@gmail.com

    • #14 by Bricky on October 15, 2012 - 3:28 pm

      @Tophicles: The XBMC plugin code doesn’t even run until you open up XBMC, and even then only when you actually click on the plugin. Prior to that the plugins are just files on your computer. To claim that they’re preventing network startup … well, it’s surprising. :)

      (and I’m not saying that it’s not happening, just that it’s likely some problem very specific to your setup)

      Would you be running XBMC on a system with very limited resources? Perhaps the plugin files are causing your system to run out of physical storage space, and hence (indirectly) causing network startup to fail?

      I’m sure there’d be some kind of OS record of failure if that were the case: on a *nix you can check syslog – it’s sure to have some error during startup. (Most *nixes will keep 5% free for root, so syslog logs should be kept even if resources are limited).

      If you do discover what the problem is, please let me know – would be very curious to find out what could cause this!

  11. #15 by Tophicles on October 15, 2012 - 5:11 pm

    All good questions! I’m running OpenELEC 1.99.2 on a ZOTAC MAG Mini, so resources should not be an issue. 1.99.2 is Eden, so I should be good on revision there too.

    I can capture the syslog after a reboot with the plugin installed, where should I send it (assuming you want a peek at it) ?

    Did you want my AirVideo address to test remotely? I have no problem if it helps out in any way…

  12. #17 by Tophicles on October 15, 2012 - 5:16 pm

    … this may help as well, but after installing the plugin, I get a “udisks-WARNING — cannot enumerate devices” error on boot. I’m trying to collect a syslog now…

  13. #18 by Tophicles on October 15, 2012 - 5:26 pm

    http://sprunge.us/QNjI

    That’s the link to my DMESG capture, but I think that’s after the reboot once I remove the plugin. If the plugin is installed, I cannot get to the box because I have no network. I can access the machine directly, but I have no command line access, I SSH into the machine.

  14. #19 by Tophicles on October 15, 2012 - 5:27 pm

    Hmm, I did stumble upon that link earlier, but my other plugins (YouTube, TED Talks, etc) don’t have any problem with the network at all…

    • #20 by Bricky on October 15, 2012 - 5:44 pm

      @Tophicles: The difference might be (just guessing tbh) that those plugins don’t cache data (this plugin caches thumbnails locally). If that’s the case, then I’m not surprised that this is a common problem.

      Will that hardware run a different OS/distro? You’d probably save yourself a bit of heartache if you could switch (and open up the possibility of using Frodo – which is well worth the effort imo).

  15. #21 by Tophicles on October 15, 2012 - 6:15 pm

    I’d love to start using Frodo, but the issue there is that my entire home media system runs from a centralized XBMC mySQL database. Therefore all clients must be on the same release if I’m to maintain hegemony among them. Once a unit moves to Frodo, the library becomes altered and then I have to move them all up to Frodo.

    I suspect that’s the case (the thumbnail caching), because the script fails when it tries to access the list of video files (where I’m assuming it attempts to grab thumbs). Is it possible to have it not cache them (or make it toggleable) that way I could test that out.

    The reason for going with openELEC is the ease of install/maintenance. Install of a new client is literally a 30 second affair – 60 seconds to watching TV on the new client after migrating advancedsettings.xml and skin gui settings.

    With seven HTPCs to serve, it’s too much of a nightmare to have them all on different releases and monitoring which needs to upgrade where and when. I know, I’ve tried that route before and I’m convinced I should have purchased stock in Tylenol ;).

    Again, the offer stands if you’d like a remote AirVideo server to test against – you know best what your code requires/demands.

    Thanks for the prompt and earnest replies, it’s nice to know one’s concerns are being considered!

    • #22 by Bricky on October 15, 2012 - 6:32 pm

      @Tophicles: Having a look through the code here, and I think you’ll only need to add one line to disable the thumbnails. Open up the file resources/lib/pyAirVideo/media.py (it’s just a text file, you can open it with vi if you have ssh access), go to line 89 and add one line as follows

      Before:

          def get_local_thumbnail_path(self, saveInDir='/tmp'):
              try:
                  tn = self.__getattr__('thumbnail_image')
                  ...etc...
      

      After:

          def get_local_thumbnail_path(self, saveInDir='/tmp'):
              return None
              try:
                  tn = self.__getattr__('thumbnail_image')
                  ...etc...
      

      (be careful of the capitalisation, and always use spaces to indent, not tabs).
      That should fix the problem if this is the issue.

      Regarding the central db: I feel your pain. I was (still am in fact) in the same position here – 5 copies of XBMC all sharing a db, and all needing to be updated together. You’ll find the switch to Frodo wonderful however whenever you can do it – the mysql code is considerably improved.

      hth anyway, and let me know how it goes.

  16. #23 by Tophicles on October 15, 2012 - 8:10 pm

    Well, I added “return None” on line 89.
    No dice, Chicago :(

    Any other suggestions?

    • #24 by Bricky on October 15, 2012 - 9:25 pm

      @Tophicles: Assuming no dice = my network is still broken, then no, I’m afraid I’m out of ideas :(
      Your best approach might be to open this as an OpenELEC issue (or add to the ticket linked above).

      hth

  17. #25 by Tophicles on October 30, 2012 - 9:55 am

    Hiya, Bricky :)

    Just an update, I have tried the AirVideo plugin on both Windows and OSX machines and get the same “script failed” message when browsing into a remote server’s folder. Again, this only occurs when there is the potential for thumbnails or media info to be read, top level folders work fine.

    Just an FYI – it doesn’t appear to be an OpenELEC issue alone…

  18. #26 by Waj on November 13, 2012 - 1:41 am

    Hey Bricky,

    The plugin crashes when it tries to retrieve the file list from a remote Air Video server. Here is what I got from the log:

    09:25:39 T:6528 NOTICE: –>Python Interpreter Initialized<–
    09:25:42 T:6528 ERROR: Error Type:
    09:25:42 T:6528 ERROR: Error Contents: ‘NoneType’ object is unsubscriptable
    09:25:42 T:6528 ERROR: Traceback (most recent call last):
    File “C:\Users\sabium-hp\AppData\Roaming\XBMC\addons\plugin.video.airvideo\default.py”, line 66, in
    dirItems = theClient.browse(avPath)
    File “C:\Users\sabium-hp\AppData\Roaming\XBMC\addons\plugin.video.airvideo\resources\lib\pyAirVideo\client.py”, line 46, in browse
    items = browse_resp[‘result’][‘items’]
    TypeError: ‘NoneType’ object is unsubscriptable
    09:25:42 T:2620 ERROR: XFILE::CDirectory::GetDirectory – Error getting plugin://plugin.video.airvideo
    09:25:42 T:2620 ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.video.airvideo) failed
    09:30:32 T:4760 ERROR: XFILE::CDirectory::Remove – Error removing C:\Users\sabium-hp\AppData\Roaming\XBMC\addons\plugin.video.airvideo\
    09:33:56 T:4592 NOTICE: –>Python Interpreter Initialized<–
    09:34:00 T:4592 ERROR: Error Type:
    09:34:00 T:4592 ERROR: Error Contents: ‘NoneType’ object is unsubscriptable
    09:34:00 T:4592 ERROR: Traceback (most recent call last):
    File “C:\Users\sabium-hp\AppData\Roaming\XBMC\addons\plugin.video.airvideo\default.py”, line 66, in
    dirItems = theClient.browse(avPath)
    File “C:\Users\sabium-hp\AppData\Roaming\XBMC\addons\plugin.video.airvideo\resources\lib\pyAirVideo\client.py”, line 46, in browse
    items = browse_resp[‘result’][‘items’]
    TypeError: ‘NoneType’ object is unsubscriptable
    09:34:00 T:2620 ERROR: XFILE::CDirectory::GetDirectory – Error getting plugin://plugin.video.airvideo
    09:34:00 T:2620 ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.video.airvideo) failed
    09:34:36 T:2620 ERROR: XFILE::CDirectory::GetDirectory – Error getting C:\Users\sabium-hp\AppData\Roaming\XBMC\media\Fonts\
    09:34:36 T:2620 ERROR: XFILE::CDirectory::GetDirectory – Error getting special://home/media/Fonts/
    09:35:04 T:5732 ERROR: XFILE::CDirectory::Remove – Error removing C:\Users\sabium-hp\AppData\Roaming\XBMC\addons\plugin.video.airvideo\
    09:36:34 T:4412 NOTICE: –>Python Interpreter InitializedPython Interpreter Initialized<–
    09:36:42 T:7064 ERROR: Error Type:
    09:36:42 T:7064 ERROR: Error Contents: ‘NoneType’ object is unsubscriptable
    09:36:42 T:7064 ERROR: Traceback (most recent call last):
    File “C:\Users\sabium-hp\AppData\Roaming\XBMC\addons\plugin.video.airvideo\default.py”, line 66, in
    dirItems = theClient.browse(avPath)
    File “C:\Users\sabium-hp\AppData\Roaming\XBMC\addons\plugin.video.airvideo\resources\lib\pyAirVideo\client.py”, line 46, in browse
    items = browse_resp[‘result’][‘items’]
    TypeError: ‘NoneType’ object is unsubscriptable
    09:36:42 T:2620 ERROR: XFILE::CDirectory::GetDirectory – Error getting plugin://plugin.video.airvideo
    09:36:42 T:2620 ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.video.airvideo) failed

    I am able to stream from the same server on my iOS device though. Any suggestions?

    Thanks!

  19. #27 by Bricky on November 13, 2012 - 1:33 pm

    @Tophicles: Your openelec issue with network failure is an openelec issue.

    And without a full debug log I have no hope of diagnosing your other issue. At this point you have used up your “good will” debugging (getting useful information from you has been like pulling teeth). I would suggest that the issue is specific to your air video server (or the files therein) – and suggest that you start your debugging there.

    Wishing you the very best of luck.

    @Waj: Could you enable debug logging and post the log from when the error occurs? There are a few debug lines from just before where the issue is happening which will tell me a lot more.

    And could you have a look at the log on the airvideo server also? The ‘NoneType’ in the error is a missing part of the response – it could be that the server is showing up some useful error info.

    Also, what version of xbmc are you using? (and what version of windows?)

  20. #28 by signorRossi on November 25, 2012 - 11:45 am

    Hi, first of all thank you for working on this plugin. :)
    Lately I tried to get various video streaming servers with transcoding to work on my Arch Linux box with the intent to stream to a jailbroken iPad2 with XBMC installed. The only one I could get to work reliably including transcoding was air-video-server with the native (free but limited) iOS client. XBMC discovers the server and I can select a file, but it is not transcoded as with the native client. Do you have any tip where I can look to adjust this?

  21. #29 by Bricky on November 26, 2012 - 11:39 am

    @signorRossi: transcoding (i.e. opening the video via the context menu) doesn’t work for me either. I still haven’t had a chance to look into the “why” (I actually don’t use this plugin myself), but I’m guessing that it’s probably a protocol issue.

    If your coding skills are up to it (and it sounds like they might be?) the easiest way to debug this would probably be running pyAirVideo directly (assuming the problem lies therein).

    If you do find a solution, please let me know – I’ll patch the plugin with any fixes you find.

  22. #30 by signorRossi on November 26, 2012 - 1:14 pm

    Ooh, my coding skills are very limited, but I might give it a try. I’ll install XBMC and the plugin on my desktop and see if I can get a tiny idea why it doesn’t transcode, but don’t get your hopes too high. :)

  23. #31 by signorRossi on November 26, 2012 - 5:10 pm

    Found this:
    http://www.inmethod.com/forum/posts/list/135/514.page#17824
    If I understand correctly the issue is with the format used with live conversion, which is not supported.

  24. #32 by signorRossi on November 26, 2012 - 5:14 pm

    Now if I can set XBMC to use an external player on the iPad…

  25. #33 by Bricky on November 26, 2012 - 5:24 pm

    @signorRossi: wow! Good detective work!

    I think there might be a light at the end of the tunnel: According to wikipedia, XMBC supports this format in “12.0 Alpha 5 and later” (that’s the current beta channel I believe) – so it could be that this is possible without handing off playback to something else.

    Edit: just tried it with 12.0 Beta 1 (which would be later than the required Alpha 5), and it fails with the error:

    17:37:25 T:140735128412544   ERROR: XBMC.PlayMedia could not play media: http://192.168.5.29:45631/live-playback-2.4.0/index_6d24b7ff-e237-4072-99a8-6b9b655803ff.m3u8

    So I guess there’s more to it than that (maybe the XBMC support for this format is only partial, or it doesn’t understand the m3u8 file).

  26. #34 by Zanzibar on December 27, 2012 - 9:41 pm

    Works on the LAN, but from the WAN, when browsing a folder that has media content:

    16:37:46 T:4602662912 ERROR: EXCEPTION: argument “thumbnailImage” for method “XBMCAddon::xbmcgui::ListItem” must be unicode or str
    16:37:46 T:4602662912 ERROR: EXCEPTION Thrown (PythonToCppException) : –>Python callback/script returned the following error<–
    – NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
    Error Type:
    Error Contents: argument “thumbnailImage” for method “XBMCAddon::xbmcgui::ListItem” must be unicode or str
    Traceback (most recent call last):
    File “/Users/admin/Library/Application Support/XBMC/addons/plugin.video.airvideo/default.py”, line 79, in
    listItem = xbmcgui.ListItem(label=dirItem.name, label2=’File’, iconImage=”DefaultVideo.png”, thumbnailImage=tn)
    TypeError: argument “thumbnailImage” for method “XBMCAddon::xbmcgui::ListItem” must be unicode or str
    –>End of Python script error report<–

  27. #35 by pete fletcher on March 1, 2013 - 12:29 pm

    hi, i managed to get this script to work. I applied the thumbnail change as mentioned in an earlier post. And then I got the same error as the last post. I just commented out line 76 and removed the # from line 77 (in default.py). It means that the thumbnails are not processed, but you can play over LAN and WAN.
    I cannot get the live convert to work, but the normal stream will work ok, after a bit of buffering

  28. #36 by Ray on April 3, 2013 - 9:55 am

    Hi, Just stumbled across this today while checking out XBMC on the iPhone.
    Having a problem with the plugin when trying to open any folder that has videos in it when connected to the AirVideo server. I am able to navigate the folder structure, but cannot open any folder that contains videos.

    I’ve turned on debugging and generated a log of just the error.

    22:46:16 T:254619648 INFO: Scriptresult: Success
    22:46:16 T:227037184 DEBUG: WaitOnScriptResult- plugin returned successfully
    22:46:16 T:254619648 INFO: Python script stopped
    22:46:16 T:142086144 DEBUG: Unfocus WindowID: 10025, ControlID: 500
    22:46:16 T:142086144 DEBUG: waiting for python thread 5 (/var/mobile/Library/Preferences/XBMC/addons/plugin.video.airvideo/default.py) to stop
    22:46:16 T:142086144 DEBUG: python thread 5 (/var/mobile/Library/Preferences/XBMC/addons/plugin.video.airvideo/default.py) destructed
    22:46:16 T:142086144 DEBUG: —— Window Deinit (DialogBusy.xml) ——
    22:46:17 T:142086144 DEBUG: ProcessMouse: trying mouse action leftclick
    22:46:17 T:142086144 DEBUG: CGUIMediaWindow::GetDirectory (plugin://plugin.video.airvideo/?path=fa7ab35a-8387-4258-bf19-4e02af8b5ee1%5c2%20Broke%20Girls)
    22:46:17 T:142086144 DEBUG: ParentPath = [plugin://plugin.video.airvideo/?path=fa7ab35a-8387-4258-bf19-4e02af8b5ee1]
    22:46:17 T:224137216 DEBUG: StartScript – calling plugin Air Video(‘plugin://plugin.video.airvideo/’,’3′,’?path=fa7ab35a-8387-4258-bf19-4e02af8b5ee1%5c2%20Broke%20Girls’)
    22:46:17 T:224137216 INFO: initializing python engine.
    22:46:17 T:224137216 DEBUG: new python thread created. id=6
    22:46:17 T:224137216 DEBUG: WaitOnScriptResult – waiting on the Air Video (id=6) plugin…
    22:46:17 T:254357504 DEBUG: Python thread: start processing
    22:46:17 T:254357504 NOTICE: –>Python Interpreter InitializedPython Interpreter Initialized<–
    22:46:19 T:254095360 DEBUG: Process – The source file to load is /var/mobile/Library/Preferences/XBMC/addons/plugin.video.airvideo/default.py
    22:46:19 T:254095360 DEBUG: Process – Setting the Python path to /var/mobile/Library/Preferences/XBMC/addons/plugin.video.airvideo:/var/mobile/Library/Preferences/XBMC/addons/script.module.t0mm0.common/lib:/private/var/stash/Applications.bMMGdS/XBMC.app/XBMCData/XBMCHome/addons/weather.wunderground/resources/lib/wunderground:/private/var/stash/Applications.bMMGdS/XBMC.app/XBMCData/XBMCHome/addons/script.module.simplejson/lib:/private/var/stash/Applications.bMMGdS/XBMC.app/XBMCData/XBMCHome/addons/script.module.pil/lib:/var/mobile/Library/Preferences/XBMC/addons/script.common.plugin.cache/lib:/var/mobile/Library/Preferences/XBMC/addons/script.module.simple.downloader/lib:/var/mobile/Library/Preferences/XBMC/addons/script.module.parsedom/lib:/private/var/stash/Applications.bMMGdS/XBMC.app/XBMCData/XBMCHome/addons/script.module.pysqlite/lib:/Applications/XBMC.app/Frameworks:/Applications/XBMC.app/Frameworks/lib/python26.zip:/Applications/XBMC.app/Frameworks/lib/python2.6:/Applications/XBMC.app/Frameworks/lib/python2.6/plat-darwin:/Applications/XBMC.app/Frameworks/lib/python2.6/plat-mac:/Applications/XBMC.app/Frameworks/lib/python2.6/plat-mac/lib-scriptpackages:/Applications/XBMC.app/Frameworks/lib/python2.6/lib-tk:/Applications/XBMC.app/Frameworks/lib/python2.6/lib-old:/Applications/XBMC.app/Frameworks/lib/python2.6/lib-dynload:/Applications/XBMC.app/Frameworks/lib/python2.6/site-packages:
    22:46:19 T:254095360 DEBUG: Process – Entering source directory /var/mobile/Library/Preferences/XBMC/addons/plugin.video.airvideo
    22:46:19 T:254095360 DEBUG: Instantiating addon using automatically obtained id of "plugin.video.airvideo" dependent on version 2.0 of the xbmc.python api
    22:46:19 T:254095360 DEBUG: Air Video: airvideo called with args ['plugin://plugin.video.airvideo/', '4', '?path=fa7ab35a-8387-4258-bf19-4e02af8b5ee1%5c2%20Broke%20Girls%5cSeason%201']
    22:46:19 T:254095360 DEBUG: Air Video: got params {'path': 'fa7ab35a-8387-4258-bf19-4e02af8b5ee1\\2 Broke Girls\\Season 1'}
    22:46:19 T:254095360 DEBUG: Air Video: connecting to location: hostname.removed.com, port: 45631
    22:46:19 T:254095360 DEBUG: 2 Broke Girls S01E01 – Pilot.avi
    22:46:19 T:142086144 DEBUG: —— Window Init (DialogBusy.xml) ——
    22:46:19 T:254095360 NOTICE: name and path are 2 Broke Girls S01E01 – Pilot.avi, fa7ab35a-8387-4258-bf19-4e02af8b5ee1\2 Broke Girls\Season 1\2 Broke Girls S01E01 – Pilot.avi
    22:46:19 T:254095360 WARNING: GetDurationFromMinuteString should be in minutes. Interpreting ‘0:21:36′ as 0 minutes
    22:46:19 T:254095360 NOTICE: video stream is
    22:46:20 T:142086144 DEBUG: —— Window Init (DialogKaiToast.xml) ——
    22:46:20 T:254095360 INFO: Python script stopped
    22:46:20 T:227037184 DEBUG: WaitOnScriptResult – plugin exited prematurely – terminating
    22:46:20 T:142086144 ERROR: GetDirectory – Error getting plugin://plugin.video.airvideo/?path=fa7ab35a-8387-4258-bf19-4e02af8b5ee1%5c2%20Broke%20Girls%5cSeason%201
    22:46:20 T:142086144 ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.video.airvideo/?path=fa7ab35a-8387-4258-bf19-4e02af8b5ee1%5c2%20Broke%20Girls%5cSeason%201) failed
    22:46:20 T:142086144 DEBUG: CGUIMediaWindow::GetDirectory (plugin://plugin.video.airvideo/?path=fa7ab35a-8387-4258-bf19-4e02af8b5ee1%5c2%20Broke%20Girls)
    22:46:20 T:142086144 DEBUG: ParentPath = [plugin://plugin.video.airvideo/?path=fa7ab35a-8387-4258-bf19-4e02af8b5ee1]
    22:46:20 T:224137216 DEBUG: StartScript – calling plugin Air Video(‘plugin://plugin.video.airvideo/’,’5′,’?path=fa7ab35a-8387-4258-bf19-4e02af8b5ee1%5c2%20Broke%20Girls’)
    22:46:20 T:224137216 INFO: initializing python engine.
    22:46:20 T:224137216 DEBUG: new python thread created. id=8
    22:46:20 T:224137216 DEBUG: WaitOnScriptResult – waiting on the Air Video (id=8) plugin…
    22:46:20 T:254095360 DEBUG: Python thread: start processing
    22:46:20 T:254095360 NOTICE: –>Python Interpreter Initialized<–
    22:46:20 T:254095360 DEBUG: Process – The source file to load is /var/mobile/Library/Preferences/XBMC/addons/plugin.video.airvideo/default.py
    22:46:20 T:254095360 DEBUG: Process – Setting the Python path to /var/mobile/Library/Preferences/XBMC/addons/plugin.video.airvideo:/var/mobile/Library/Preferences/XBMC/addons/script.module.t0mm0.common/lib:/private/var/stash/Applications.bMMGdS/XBMC.app/XBMCData/XBMCHome/addons/weather.wunderground/resources/lib/wunderground:/private/var/stash/Applications.bMMGdS/XBMC.app/XBMCData/XBMCHome/addons/script.module.simplejson/lib:/private/var/stash/Applications.bMMGdS/XBMC.app/XBMCData/XBMCHome/addons/script.module.pil/lib:/var/mobile/Library/Preferences/XBMC/addons/script.common.plugin.cache/lib:/var/mobile/Library/Preferences/XBMC/addons/script.module.simple.downloader/lib:/var/mobile/Library/Preferences/XBMC/addons/script.module.parsedom/lib:/private/var/stash/Applications.bMMGdS/XBMC.app/XBMCData/XBMCHome/addons/script.module.pysqlite/lib:/Applications/XBMC.app/Frameworks:/Applications/XBMC.app/Frameworks/lib/python26.zip:/Applications/XBMC.app/Frameworks/lib/python2.6:/Applications/XBMC.app/Frameworks/lib/python2.6/plat-darwin:/Applications/XBMC.app/Frameworks/lib/python2.6/plat-mac:/Applications/XBMC.app/Frameworks/lib/python2.6/plat-mac/lib-scriptpackages:/Applications/XBMC.app/Frameworks/lib/python2.6/lib-tk:/Applications/XBMC.app/Frameworks/lib/python2.6/lib-old:/Applications/XBMC.app/Frameworks/lib/python2.6/lib-dynload:/Applications/XBMC.app/Frameworks/lib/python2.6/site-packages:
    22:46:20 T:254095360 DEBUG: Process – Entering source directory /var/mobile/Library/Preferences/XBMC/addons/plugin.video.airvideo
    22:46:20 T:254095360 DEBUG: Instantiating addon using automatically obtained id of "plugin.video.airvideo" dependent on version 2.0 of the xbmc.python api
    22:46:20 T:254095360 DEBUG: Air Video: airvideo called with args ['plugin://plugin.video.airvideo/', '5', '?path=fa7ab35a-8387-4258-bf19-4e02af8b5ee1%5c2%20Broke%20Girls']
    22:46:20 T:254095360 DEBUG: Air Video: got params {'path': 'fa7ab35a-8387-4258-bf19-4e02af8b5ee1\\2 Broke Girls'}
    22:46:20 T:254095360 DEBUG: Air Video: connecting to location: hostname.removed.com, port: 45631
    22:46:20 T:142086144 DEBUG: —— Window Init (DialogBusy.xml) ——
    22:46:20 T:142086144 DEBUG: waiting for python thread 7 (/var/mobile/Library/Preferences/XBMC/addons/plugin.video.airvideo/default.py) to stop
    22:46:20 T:142086144 DEBUG: python thread 7 (/var/mobile/Library/Preferences/XBMC/addons/plugin.video.airvideo/default.py) destructed
    22:46:20 T:254095360 DEBUG: Season 1
    22:46:20 T:254095360 DEBUG: Season 2
    22:46:20 T:224137216 DEBUG: WaitOnScriptResult- plugin returned successfully
    22:46:20 T:254095360 INFO: Scriptresult: Success
    22:46:20 T:142086144 DEBUG: Unfocus WindowID: 10025, ControlID: 500
    22:46:20 T:254095360 INFO: Python script stopped
    22:46:20 T:142086144 DEBUG: waiting for python thread 8 (/var/mobile/Library/Preferences/XBMC/addons/plugin.video.airvideo/default.py) to stop
    22:46:20 T:142086144 DEBUG: python thread 8 (/var/mobile/Library/Preferences/XBMC/addons/plugin.video.airvideo/default.py) destructed
    22:46:20 T:142086144 DEBUG: —— Window Deinit (DialogBusy.xml) ——
    22:46:25 T:142086144 DEBUG: OnAppCommand: unknown appcommand 229
    22:46:25 T:142086144 DEBUG: —— Window Deinit (DialogKaiToast.xml) ——
    22:46:27 T:142086144 DEBUG: OnAppCommand: unknown appcommand 229

    • #37 by Bricky on April 5, 2013 - 9:22 am

      Hi Ray,

      This isn’t really intended to be run on iOS. InMethod make a far superior app just for this purpose.
      Download it here.

  29. #38 by Mitchdzj on April 5, 2013 - 12:23 pm

    Any progress or new development on the transcoding problem? It would be great to get that working as that is the only point for using the plugin , that I can see. I have a few low power xbmc machines that just can handle my high bitrate rips. I’m playing with using plex right now but it seems to crash a lot. AirVideo server is so much simpler and has servered me will playing to my iPad2 and iPhone. Hope you can get the plugin working for transcoding.

  30. #39 by Ray on April 8, 2013 - 3:26 am

    @Bricky – Thanks for the reply. I know about the AirVideo iOS app, was hoping to be able to use just a single app for all my viewing pleasure, and the scrapers and interface of XBMC is so much better.

  31. #40 by Bricky on April 8, 2013 - 11:02 am

    @Mitchdzj: I haven’t looked at it since the investigation above, but I doubt I could fix it anyway – this is quite fundamental to xbmc, and would need skills that I just don’t have to fix :)

    @Ray: agree regarding the scrapers, but I actually find the UI for xbmc very poor on the iphone. Maybe that’s just me though.
    But anyway, the issue here isn’t the quality of the app – InMethod’s only revenue from Air Video is from their iOS apps, and I have no wish to take that away (by writing/fixing something that could be used as a replacement). So, for now at least, I won’t be working on any iOS-related changes (unless they are specifically to break it).

  32. #41 by Ray on April 14, 2013 - 7:37 am

    @Bricky – No probs with the not wanting to rain on their parade! Have been using the AirVideo app for a few years now.

  33. #42 by Sascha on September 18, 2013 - 4:30 pm

    Hi

    I get an error when i go to a folder where are Videos in it. Is in this Folder only other Folder i get no Error.

    I get the Error “Script Error in plugin.video.airvideo”

    Here is the Log
    20:00:45 T:2876 NOTICE: ———————————————————————–
    20:00:45 T:2876 NOTICE: Starting XBMC (12.2 Git:20130502-32b1a5e), Platform: Windows 7 SP1 64-bit, build 7601. Built on May 2 2013 (compiler 1600)
    20:00:45 T:2876 NOTICE: Intel(R) Core(TM) i7-4700HQ CPU @ 2.40GHz
    20:00:45 T:2876 NOTICE: Desktop Resolution: 1360×768 32Bit at 60Hz
    20:00:45 T:2876 NOTICE: Running with administrator rights
    20:00:45 T:2876 NOTICE: Aero is enabled
    20:00:45 T:2876 NOTICE: special://xbmc/ is mapped to: C:\Program Files (x86)\XBMC
    20:00:45 T:2876 NOTICE: special://xbmcbin/ is mapped to: C:\Program Files (x86)\XBMC
    20:00:45 T:2876 NOTICE: special://masterprofile/ is mapped to: C:\Users\sasch\AppData\Roaming\XBMC\userdata
    20:00:45 T:2876 NOTICE: special://home/ is mapped to: C:\Users\sasch\AppData\Roaming\XBMC\
    20:00:45 T:2876 NOTICE: special://temp/ is mapped to: C:\Users\sasch\AppData\Roaming\XBMC\cache
    20:00:45 T:2876 NOTICE: The executable running is: C:\Program Files (x86)\XBMC\XBMC.exe
    20:00:45 T:2876 NOTICE: Local hostname: MSI
    20:00:45 T:2876 NOTICE: Log File is located: C:\Users\sasch\AppData\Roaming\XBMC\xbmc.log
    20:00:45 T:2876 NOTICE: ———————————————————————–
    21:26:49 T:6596 DEBUG: XBPyThread::Process – Entering source directory C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo
    21:26:49 T:6596 DEBUG: Instantiating addon using automatically obtained id of “plugin.video.airvideo” dependent on version 2.0 of the xbmc.python api
    21:26:49 T:6596 DEBUG: Air Video: airvideo called with args [‘plugin://plugin.video.airvideo/’, ’57’, ‘?path=4f29ec0a-c31d-4289-8dd3-8d686fdfe3b1%2fSerien%2fAirwolf’]
    21:26:49 T:6596 DEBUG: Air Video: got params {‘path': ‘4f29ec0a-c31d-4289-8dd3-8d686fdfe3b1/Serien/Airwolf’}
    21:26:49 T:6596 DEBUG: Air Video: connecting to location: saschavolk.dyndns.org, port: 10000
    21:26:49 T:6596 DEBUG: Season 1
    21:26:49 T:6596 DEBUG: Season 2
    21:26:49 T:6596 DEBUG: Season 3
    21:26:49 T:6596 INFO: Scriptresult: Success
    21:26:49 T:8012 DEBUG: XFILE::CPluginDirectory::WaitOnScriptResult- plugin returned successfully
    21:26:49 T:3368 NOTICE: Thread Background Loader start, auto delete: false
    21:26:49 T:2876 DEBUG: CWinEventsWin32::WndProcWindow is active
    21:26:49 T:2876 DEBUG: CWinEventsWin32::WndProc: Focus switched to process C:\Windows\System32\notepad.exe
    21:26:49 T:6596 INFO: Python script stopped
    21:26:49 T:6596 DEBUG: Thread XBPyThread 6596 terminating
    21:26:49 T:2876 DEBUG: waiting for python thread 63 (C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo\default.py) to stop
    21:26:49 T:2876 DEBUG: python thread 63 (C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo\default.py) destructed
    21:26:49 T:2876 DEBUG: —— Window Deinit (DialogBusy.xml) ——
    21:26:49 T:3368 DEBUG: Thread Background Loader 3368 terminating
    21:26:54 T:2876 DEBUG: —— Window Deinit (Pointer.xml) ——
    21:26:54 T:2876 DEBUG: —— Window Deinit (DialogKaiToast.xml) ——
    21:27:04 T:2172 DEBUG: CAESinkDirectSound::Deinitialize: Cleaning up
    21:27:04 T:2172 DEBUG: Suspended the Sink
    21:27:11 T:2876 DEBUG: —— Window Init (Pointer.xml) ——
    21:27:16 T:2876 DEBUG: —— Window Deinit (Pointer.xml) ——
    21:27:19 T:8012 DEBUG: Thread Jobworker 8012 terminating (autodelete)
    21:27:49 T:2876 DEBUG: —— Window Init (Pointer.xml) ——
    21:27:55 T:2876 DEBUG: —— Window Deinit (Pointer.xml) ——
    21:28:34 T:2876 DEBUG: —— Window Init (Pointer.xml) ——
    21:28:34 T:2876 NOTICE: CJoystick::EnumJoysticksCallback : Enabled Joystick: XBOX 360 For Windows (Controller)
    21:28:34 T:2876 NOTICE: CJoystick::EnumJoysticksCallback : Total Axis: 5 Total Hats: 1 Total Buttons: 10
    21:28:34 T:2876 DEBUG: CWinEventsWin32::WndProcWindow is active
    21:28:34 T:2876 DEBUG: CApplication::ProcessMouse: trying mouse action leftclick
    21:28:35 T:2876 DEBUG: Previous line repeats 1 times.
    21:28:35 T:2876 DEBUG: CGUIMediaWindow::GetDirectory (plugin://plugin.video.airvideo/?path=4f29ec0a-c31d-4289-8dd3-8d686fdfe3b1%2fSerien%2fAirwolf%2fSeason%201)
    21:28:35 T:2876 DEBUG: ParentPath = [plugin://plugin.video.airvideo/?path=4f29ec0a-c31d-4289-8dd3-8d686fdfe3b1%2fSerien%2fAirwolf]
    21:28:35 T:7876 NOTICE: Thread Jobworker start, auto delete: true
    21:28:35 T:7876 DEBUG: XFILE::CPluginDirectory::StartScript – calling plugin Air Video(‘plugin://plugin.video.airvideo/’,’58’,’?path=4f29ec0a-c31d-4289-8dd3-8d686fdfe3b1%2fSerien%2fAirwolf%2fSeason%201′)
    21:28:35 T:7876 INFO: initializing python engine.
    21:28:35 T:7876 DEBUG: new python thread created. id=64
    21:28:35 T:7876 DEBUG: XFILE::CPluginDirectory::WaitOnScriptResult – waiting on the Air Video (id=64) plugin…
    21:28:35 T:6808 NOTICE: Thread XBPyThread start, auto delete: false
    21:28:35 T:6808 DEBUG: Python thread: start processing
    21:28:35 T:6808 NOTICE: –>Python Interpreter Initialized<–
    21:28:35 T:6808 DEBUG: XBPyThread::Process – The source file to load is C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo\default.py
    21:28:35 T:6808 DEBUG: XBPyThread::Process – Setting the Python path to C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.xbmcswift\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.t0mm0.common\lib;C:\Program Files (x86)\XBMC\addons\script.module.simplejson\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.myconnpy\lib;C:\Program Files (x86)\XBMC\addons\script.module.pil\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.common.plugin.cache\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.simple.downloader\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.urlresolver\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.parsedom\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.elementtree\lib;C:\Program Files (x86)\XBMC\addons\script.module.pysqlite\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.metahandler\lib;C:\Program Files (x86)\XBMC\system\python\DLLs;C:\Program Files (x86)\XBMC\system\python\Lib;C:\Program Files (x86)\XBMC\python26.zip;C:\Program Files (x86)\XBMC\system\python\lib\plat-win;C:\Program Files (x86)\XBMC\system\python\lib\lib-tk;C:\Program Files (x86)\XBMC;C:\Program Files (x86)\XBMC\system\python;C:\Program Files (x86)\XBMC\system\python\lib\site-packages;
    21:28:35 T:6808 DEBUG: XBPyThread::Process – Entering source directory C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo
    21:28:35 T:6808 DEBUG: Instantiating addon using automatically obtained id of "plugin.video.airvideo" dependent on version 2.0 of the xbmc.python api
    21:28:35 T:6808 DEBUG: Air Video: airvideo called with args ['plugin://plugin.video.airvideo/', '58', '?path=4f29ec0a-c31d-4289-8dd3-8d686fdfe3b1%2fSerien%2fAirwolf%2fSeason%201']
    21:28:35 T:6808 DEBUG: Air Video: got params {'path': '4f29ec0a-c31d-4289-8dd3-8d686fdfe3b1/Serien/Airwolf/Season 1'}
    21:28:35 T:6808 DEBUG: Air Video: connecting to location: saschavolk.dyndns.org, port: 10000
    21:28:36 T:2876 DEBUG: —— Window Init (DialogBusy.xml) ——
    21:28:36 T:6808 DEBUG: isd-airwolfdxvid-s01e01.avi
    21:28:36 T:6808 NOTICE: name and path are isd-airwolfdxvid-s01e01.avi, 4f29ec0a-c31d-4289-8dd3-8d686fdfe3b1/Serien/Airwolf/Season 1/isd-airwolfdxvid-s01e01.avi
    21:28:36 T:6808 WARNING: CVideoInfoTag::GetDurationFromMinuteString should be in minutes. Interpreting ‘1:32:43′ as 1 minutes
    21:28:36 T:6808 NOTICE: video stream is
    21:28:37 T:6808 ERROR: EXCEPTION Thrown (PythonToCppException) : –>Python callback/script returned the following error<–
    – NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
    Error Type:
    Error Contents: ‘NoneType’ object is unsubscriptable
    Traceback (most recent call last):
    File “C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo\default.py”, line 97, in
    liveUrl = dirItem.live_url()
    File “C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo\resources\lib\pyAirVideo\media.py”, line 87, in live_url
    return self.client.get_url(self, True)
    File “C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo\resources\lib\pyAirVideo\client.py”, line 72, in get_url
    return url_resp[‘result’][‘contentURL’]
    TypeError: ‘NoneType’ object is unsubscriptable
    –>End of Python script error reportPython Interpreter Initialized<–
    21:28:37 T:6392 DEBUG: XBPyThread::Process – The source file to load is C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo\default.py
    21:28:37 T:6392 DEBUG: XBPyThread::Process – Setting the Python path to C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.xbmcswift\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.t0mm0.common\lib;C:\Program Files (x86)\XBMC\addons\script.module.simplejson\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.myconnpy\lib;C:\Program Files (x86)\XBMC\addons\script.module.pil\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.common.plugin.cache\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.simple.downloader\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.urlresolver\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.parsedom\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.elementtree\lib;C:\Program Files (x86)\XBMC\addons\script.module.pysqlite\lib;C:\Users\sasch\AppData\Roaming\XBMC\addons\script.module.metahandler\lib;C:\Program Files (x86)\XBMC\system\python\DLLs;C:\Program Files (x86)\XBMC\system\python\Lib;C:\Program Files (x86)\XBMC\python26.zip;C:\Program Files (x86)\XBMC\system\python\lib\plat-win;C:\Program Files (x86)\XBMC\system\python\lib\lib-tk;C:\Program Files (x86)\XBMC;C:\Program Files (x86)\XBMC\system\python;C:\Program Files (x86)\XBMC\system\python\lib\site-packages;
    21:28:37 T:6392 DEBUG: XBPyThread::Process – Entering source directory C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo
    21:28:37 T:6392 DEBUG: Instantiating addon using automatically obtained id of "plugin.video.airvideo" dependent on version 2.0 of the xbmc.python api
    21:28:37 T:6392 DEBUG: Air Video: airvideo called with args ['plugin://plugin.video.airvideo/', '59', '?path=4f29ec0a-c31d-4289-8dd3-8d686fdfe3b1%2fSerien%2fAirwolf']
    21:28:37 T:6392 DEBUG: Air Video: got params {'path': '4f29ec0a-c31d-4289-8dd3-8d686fdfe3b1/Serien/Airwolf'}
    21:28:37 T:6392 DEBUG: Air Video: connecting to location: saschavolk.dyndns.org, port: 10000
    21:28:37 T:6392 DEBUG: Season 1
    21:28:37 T:6392 DEBUG: Season 2
    21:28:37 T:6392 DEBUG: Season 3
    21:28:37 T:7876 DEBUG: XFILE::CPluginDirectory::WaitOnScriptResult- plugin returned successfully
    21:28:37 T:6392 INFO: Scriptresult: Success
    21:28:37 T:7272 NOTICE: Thread Background Loader start, auto delete: false
    21:28:37 T:2876 DEBUG: waiting for python thread 64 (C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo\default.py) to stop
    21:28:37 T:2876 DEBUG: python thread 64 (C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo\default.py) destructed
    21:28:37 T:2876 DEBUG: —— Window Deinit (DialogBusy.xml) ——
    21:28:37 T:6392 INFO: Python script stopped
    21:28:37 T:6392 DEBUG: Thread XBPyThread 6392 terminating
    21:28:37 T:7272 DEBUG: Thread Background Loader 7272 terminating
    21:28:37 T:2876 DEBUG: waiting for python thread 65 (C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo\default.py) to stop
    21:28:37 T:2876 DEBUG: python thread 65 (C:\Users\sasch\AppData\Roaming\XBMC\addons\plugin.video.airvideo\default.py) destructed
    21:28:39 T:2876 DEBUG: CWinEventsWin32::WndProcWindow is active
    21:28:39 T:2876 DEBUG: CWinEventsWin32::WndProc: Focus switched to process C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
    21:28:41 T:2876 DEBUG: —— Window Deinit (Pointer.xml) ——
    21:28:42 T:2876 DEBUG: —— Window Deinit (DialogKaiToast.xml) ——
    21:28:52 T:2172 DEBUG: CAESinkDirectSound::Deinitialize: Cleaning up
    21:28:52 T:2172 DEBUG: Suspended the Sink
    21:29:05 T:2876 DEBUG: —— Window Init (Pointer.xml) ——
    21:29:07 T:7876 DEBUG: Thread Jobworker 7876 terminating (autodelete)
    21:29:08 T:2876 NOTICE: CJoystick::EnumJoysticksCallback : Enabled Joystick: XBOX 360 For Windows (Controller)
    21:29:08 T:2876 NOTICE: CJoystick::EnumJoysticksCallback : Total Axis: 5 Total Hats: 1 Total Buttons: 10
    21:29:08 T:2876 DEBUG: CWinEventsWin32::WndProcWindow is active
    21:29:08 T:2876 DEBUG: CWinEventsWin32::WndProc: Focus switched to process C:\Program Files (x86)\XBMC\XBMC.exe
    21:29:08 T:2876 DEBUG: CWinEventsWin32::WndProc: window move event
    21:29:08 T:2876 DEBUG: CWinEventsWin32::WndProc: window resize event
    21:29:08 T:2876 NOTICE: CJoystick::EnumJoysticksCallback : Enabled Joystick: XBOX 360 For Windows (Controller)
    21:29:08 T:2876 NOTICE: CJoystick::EnumJoysticksCallback : Total Axis: 5 Total Hats: 1 Total Buttons: 10
    21:29:08 T:2876 DEBUG: CWinEventsWin32::WndProcWindow is inactive

(will not be published)


css.php