Release 0.0.7: Let there be Mini support! - Plex Blog

Release 0.0.7: Let there be Mini support!

| 28 Jan 2008 | by 54 Comments

A few changes in this release:

  • Support for GMA950-based video hardware, like Mac Mini and some MacBooks. Until this point you’ve had to live vicariously through your larger-mac’d brethren. No longer. Scott kindly helped me out with a remote Screen Share session, and a few more OpenGL calls had to be changed to their ARB cousins.
  • Multi-threaded decoding has been enabled in ffmpeg. This *may* provide a performance boost for H.264 and MPEG2 content. In practice, I haven’t noticed much difference, but feel free to prove me wrong.
  • The postproc/swscale portions of ffmpeg have been hooked up.
  • CPU ID has been partially written, you’ll at least see something on the home screen.

You can pick up the latest release here.

Oh, and my excuse for not getting this done sooner is shown below. We went whale (and dolphin) watching this weekend. Those humpback whales are some elusive bastards, and tended to jump out of the water right after my arm got tired holding the camera up to my eye. Jerks.

IMG_1430.jpg

IMG_1500.jpg
FacebookTwitterGoogle+LinkedIn
Share this

54 Comments so far

  1. trippo January 28th, 2008 8:47 pm

    Great!

    You really rock! Haven’t got time to try it on my Mini until later when I get home from work but I’m looking forward to it!

    Now, what’s left before it should be working fairly as a complete mediacenter solution? How about apple remote support, fullscreen, and so on?

    I’m just curious how that’s going and how far in the future you guess those features are, not complaining about them not being there already because that would just be unreal.

    Keep trucking, and thanks for doing this!

    Regards // trippo

  2. Gordon Mackenzie January 28th, 2008 9:05 pm

    Works great on my Mac Mini Intel Core Duo 1.83Ghz w/ LaCie Firewire Speakers. Mac OS X 10.5.1

    Music played, xvid/divx video played, basic H.264 anime played well.

    Got a crash after exiting the H.264 anime (used the ‘x’ key, I need to make a cheat sheet for keyboard commands, maybe a little mac app…Is there a keyboard command that will display in a popup on the XBMC screen all the commands mapped?) and trying to quickly navigate the file structure:

    Date/Time: 2008-01-28 22:57:40.888 -0800
    OS Version: Mac OS X 10.5.1 (9B18)
    Report Version: 6

    Exception Type: EXC_CRASH (SIGABRT)
    Exception Codes: 0×0000000000000000, 0×0000000000000000
    Crashed Thread: 34

    Thread 34 Crashed:
    0 libSystem.B.dylib 0x9237e47a __kill + 10
    1 libSystem.B.dylib 0x923f5782 raise + 26
    2 libSystem.B.dylib 0x92404d3f abort + 73

    (Another thought, is there a reason why the system reports the XBMC only using 2048K of memory? I have 2 GB of RAM on me mac mini…Or is that future work in progress by the Linux/MacOSX crew)

    Again, great work!

    Starting to scheme on getting a new Mac so I can use the Mac Mini where the XBOX sits in my Home Media System.

    ~ Gordon

  3. Andreas January 28th, 2008 10:40 pm

    Will their be Apple TV support?

    Would be great to run on that device!

  4. Bob Jelica January 28th, 2008 11:48 pm

    Keep up the good work!
    There are a lot of people (who aren’t showing themselves in the comments or otherwise) that are following your work and rooting for you guys.

    Cheers,
    bob

  5. Polve January 29th, 2008 1:11 am

    I’m noob, I need a simple but complete tutorial to install it on Mactel Mini.
    In a previous comment I recive a step by step guide but for my poor knowledge I don’t reach the objective :(

    Sorry for my bad english, tia Polve

  6. LinuxStill January 29th, 2008 1:21 am

    Could you guys maybe help D4rk with any tips for getting Intel GMA950 support under XBMC4Linux if your fixes could be applied there as well?

  7. XBMC_fanboy January 29th, 2008 1:33 am

    Thanks you for your amazing coding skills guys!

    Can users now add SMB/Samba sources via the GUI yet or does one still have to map those to a drive under the Mac OS X operating-system?

    I am now also really looking forward to Apple IR Remote (via LIRC for Mac OS X?) and real fullscreen support.

    I’m also curious, has any one tried to replace these OSXBMC binaries as the window manager on an Apple TV box yet?

  8. bouriko January 29th, 2008 2:06 am

    thx now CPU (macmini) was reconized ^^ … any infos for web radio (shoutcast and lastFM) ? alway crash for me ..

  9. nuaik January 29th, 2008 2:33 am

    Hi

    Maybe a stuoid question. I have extracted the compressed file
    XBMC-0.0.7gz –> XBMC-0.0.7. How do I progress from that.
    Is this an “.dmg” file or how can i get it working on my mac mini ?

    Thanks in advance

    /Regards Niklas

  10. HenrikDK January 29th, 2008 2:42 am

    Wow that was a great leap for Mac hardware, great work. There’s still som problems on my macbook. Video plays, yes… but its way to fast (just zooms by at 2 to 3 times the normal speed) and there’s no audio output on analog out. When i set it to digital out all i get is static noise (Though I’m guessing this i designed).

  11. Martin January 29th, 2008 4:29 am

    @nuaik

    You just need to make the file executable. In Terminal cd to your XBMC dir and type: chmod +x XBMC

    @HenrikDK

    Hej Henrik ;)

    There’s no downmixing of audio yet.

    If you choose Digital in XBMC and connect your internal audio output digitally to a surround receiver and you play back a DD or DTS movie, it should play back at normal speed.

    Try that first :o)

    Regards
    Martin

  12. nuaik January 29th, 2008 4:45 am

    @HenrikDK

    “You just need to make the file executable. In Terminal cd to your XBMC dir and type: chmod +x XBMC”

    Thanks Henrik for your answer. I will test that.

    Hej Niklas

  13. Lavaeb January 29th, 2008 7:16 am
  14. zAo January 29th, 2008 8:02 am

    I still cant play 720 x264 files on my C2D X1600 2GB iMac.
    I get a 1080p (huge at least) XBMC white window with a lot of noise. The console spits this out:

    QZ_SetVideoWindowed(720, 576)
    Creating OpenGL context with shared=0×00000000
    QZ_SetVideoWindowed(1280, 720)
    Creating OpenGL context with shared=0×00000000
    CxImage::Load – loading of type
    ++ WARN: could not retrieve file info for `image.nrg’: No such file or directory
    ++ WARN: can’t open nrg image file image.nrg for reading
    [matroska @ 0xbbd320]Ignoring seekhead entry for ID=0x1549a966
    [matroska @ 0xbbd320]Ignoring seekhead entry for ID=0x1654ae6b
    [matroska @ 0xbbd320]Ignoring seekhead entry for ID=0x114d9b74
    [matroska @ 0xbbd320]Unknown entry 0x73a4 in info header
    [matroska @ 0xbbd320]Unknown track header entry 0x55aa – ignoring
    [matroska @ 0xbbd320]Unknown track header entry 0x23314f – ignoring
    [matroska @ 0xbbd320]Unknown track header entry 0x55ee – ignoring
    [matroska @ 0xbbd320]Unknown track header entry 0xaa – ignoring
    [matroska @ 0xbbd320]Unknown track header entry 0x55aa – ignoring
    [matroska @ 0xbbd320]Unknown track header entry 0x23314f – ignoring
    [matroska @ 0xbbd320]Unknown track header entry 0x55ee – ignoring
    [matroska @ 0xbbd320]Unknown track header entry 0xaa – ignoring
    Input #0, matroska, from ‘/Users/zAo/Movies/Films/The Hitchhiker/rev-hitchhiker.x264/rev-hitchhiker.x264.mkv’:
    Duration: 01:48:43.0, start: 0.000000, bitrate: N/A
    Stream #0.0: Audio: ac3, 48000 Hz, 5:1
    Stream #0.1(eng): Video: h264, yuv420p, 1280×528 [PAR 1:1 DAR 80:33], 23.98 tb(r)
    CxImage::Load – loading of type
    [matroska @ 0xbbd320]Ignoring seekhead entry for ID=0x1549a966
    [matroska @ 0xbbd320]Ignoring seekhead entry for ID=0x1654ae6b
    [matroska @ 0xbbd320]Ignoring seekhead entry for ID=0x114d9b74
    [matroska @ 0xbbd320]Unknown entry 0x73a4 in info header
    [matroska @ 0xbbd320]Unknown track header entry 0x55aa – ignoring
    [matroska @ 0xbbd320]Unknown track header entry 0x23314f – ignoring
    [matroska @ 0xbbd320]Unknown track header entry 0x55ee – ignoring
    [matroska @ 0xbbd320]Unknown track header entry 0xaa – ignoring
    [matroska @ 0xbbd320]Unknown track header entry 0x55aa – ignoring
    [matroska @ 0xbbd320]Unknown track header entry 0x23314f – ignoring
    [matroska @ 0xbbd320]Unknown track header entry 0x55ee – ignoring
    [matroska @ 0xbbd320]Unknown track header entry 0xaa – ignoring
    Input #0, matroska, from ‘/Users/zAo/Movies/Films/The Hitchhiker/rev-hitchhiker.x264/rev-hitchhiker.x264.mkv’:
    Duration: 01:48:43.0, start: 0.000000, bitrate: N/A
    Stream #0.0: Audio: ac3, 48000 Hz, 5:1
    Stream #0.1(eng): Video: h264, yuv420p, 1280×528 [PAR 1:1 DAR 80:33], 23.98 tb(r)
    Asked to open device: [iec958]
    Asked to create device: [iec958]
    Device should be digital: [1]
    Channels: [2]
    Sample Rate: [48000]
    BitsPerSample: [16]
    PacketSize: [2048]
    Including: Built-in Output
    Considering: [Built-in Output]
    QZ_SetVideoWindowed(1680, 1050)
    Creating OpenGL context with shared=0×00000000
    [h264 @ 0xb9b150]Cannot parallelize deblocking type 1, decoding such frames in sequential order
    [PortAudio] ERROR[/Volumes/Whopper/Users/elan/Code/Java/XBMC/xbmc/cores/dvdplayer/PortaudioDirectSound.cpp:104]: Stream is stopped.
    QZ_SetVideoWindowed(1280, 720)
    Creating OpenGL context with shared=0×00000000
    CRITSEC[0x00cabc70]: Trying to destroy uninitialized section.

  15. Mattias L January 29th, 2008 8:38 am

    Great work guys!

  16. polve January 29th, 2008 10:23 am

    Ok the istructions works good, but only blank screen instead os xbmc menu

    I make another try tomorrow.

  17. Lars January 29th, 2008 10:57 am

    wow my MacBook now plays XVID(sound ok)and x264(sound is fuked up)

    Thx you guys are fast.

  18. elan January 29th, 2008 1:09 pm

    @trippo: Yeah, fullscreen and remote support are the big ones to make it usable. Lots of other work is still needed, including Python and VFS support, and lots of other “plug-in” features like Shoutcast, UPnP, etc.

    @Gordon: It looks like the code died on an assertion. Unfortunately it’s like that Agatha Christie movie where the person is about to give away the killer but then gets shot, because I need a few more pasted lines (maybe you can get them from your crashlogs directory?). XBMC doesn’t use much memory because it’s written for a lean operating environment (the original Xbox).

    @LinuxStill: D4rk will see the check-ins for GMA950. It’s possible that they will just magically make things work under Linux with that video hardware, and it’s possibly that more or different things are needed.

    @XBMC_fanboy: SMB support is not compiled in, use Leopard’s support for it.

    @bouriko: Last.FM and Shoutcast are unsupported, I haven’t even tried them.

    @zAo: If you’ve got a big white window then whack your system/profiles.xml file and/or make sure the video playback resolution is set to “Best Available”.

    @Lars: Your sound issues probably relate to mix-down not haven’t been implemented yet.

    Thanks for all the feedback!

  19. Gordon Mackenzie January 29th, 2008 1:14 pm

    Again exciting work elan!

    Here’s the full Crash report:

    [snip]

  20. elan January 29th, 2008 1:18 pm

    @Gordon: Hmm, thanks for pasting. That thread’s stack trace seems short for some reason. Let me know if you can reproduce and get a stack trace under gdb. Thanks!

  21. Lars January 29th, 2008 1:46 pm

    Q: My MacBooks Activity Monitor show XBMC over 20%CPU load when doing nothing(after bootup)

    Is that normal?

  22. elan January 29th, 2008 1:48 pm

    @Lars: My Mac Pro shows about 6%, so maybe that’s normal. And by “normal” I don’t mean “correct”, but rather “expected” :)

  23. XBMC_fanboy January 30th, 2008 12:10 am

    I did not mean that you could compile in the Samba library in Mac OS X to get SMB support under XBMC, I only meant that I hope that users will one day be able to map SMB shares directly from XBMC’s GUI by adding the source there, instead of having to use the Mac OS X own function to map a network drive.

    That way one can use XBMC as the only window manager / shell if one wants to build a dedicated media center computer from a Mac.

  24. rob January 30th, 2008 1:52 am

    I installed everything as per the instructions in this forum thread. I receive the following error:

    dyld: Symbol not found: _clock$UNIX2003
    Referenced from: /Applications/XBMC/XBMC
    Expected in: /usr/lib/libSystem.B.dylib

    I’ve got the path set in my .profile file that I created and verified that I had everything installed with port install.

    Any ideas,
    THanks
    Rob

  25. Martin January 30th, 2008 2:01 am

    @rob

    Looks like an error I’ve seen before, I don’t know if you need the Developer Tools installed from the OS X DVD to use OSXBMC, maybe elan can answer that?

    Otherwise you probably still need one the the Ports…

  26. rob January 30th, 2008 2:23 am

    @Martin
    I have xcode installed , is there something else I needed to install.

  27. rob January 30th, 2008 2:25 am

    Just got post in one of the other forums, it seems this xbmc is lepord only. I’m running tiger this is probably the problem.

  28. Mr T January 30th, 2008 6:28 am

    How do I get the binary file to run on Leopard? There is no info at all on this page on how to get this thing to run. Please help.

  29. Polve January 30th, 2008 6:41 am

    What file and what tag I must edit to use 1360×720 resolution of osx and LCD TV?
    I need this to prevent a white screen instead of xbmc menu screen.

    Good Job and thanks,

    Polve

  30. Lars January 30th, 2008 6:51 am

    Mr T

    in Terminal chmod +x XBMC-0.0.6

  31. Lars January 30th, 2008 6:52 am

    or chmod +x XBMC-0.0.7

  32. charlesv January 30th, 2008 9:02 am

    lots of progress in such a short amount of time, i’m very, very impressed. From what I understand, if this is leopard only, then you’re not going to have much luck on a hacked apple tv (since as of my last check, they can only run leopard through some usb booting hacks and even then, will not have any sound). Cheers, though, and I’m looking forward to following this. If nothing else, this’d be great on my 24″ imac, it’s a decent set.

    - Charles

  33. SoerenV January 30th, 2008 9:20 am

    I have same problem as polve. I have installed as the instructions said, found them on xboxmediacenter.com in the forum, but all I get is a grey/white screen that seems to be 1080p. I run the osx desktop at 1360×720 as far as i remember.
    You guys have an idea to what could be wrong?

    Nice work Elan, all though it doesn’t work on my mac atm, it seems that you are very dedicated :)

  34. Mr T January 30th, 2008 12:56 pm

    Works fine on my Mac Mini except for fullscreen and DTS doesnt work either. This might be something Ill use once those things are sorted out :)

  35. Mr T January 30th, 2008 1:25 pm

    Nevermind DTS works. I forgot to add the libdts-osx.so file :D
    Now the only pice missing for me is fullscreen then Ill be a happy camper. GOOD JOB!

  36. Lars January 30th, 2008 3:14 pm

    only pice missing for me is a nice XBMC dock icon ;)

  37. Chris January 30th, 2008 8:56 pm

    @Lars

    Dude, that’s the easiest thing you can do:

    IN the XBMC folder, go to the Media folder, and double click on one of the “Splash_xxx.png” files. It will open in Preview. Press Command+C to copy the image.

    Get Info on the XBMC-0.0.x, then click the icon to hilite it, the press Command+V to paste the image you previously copied, and voila, a brand new icon.

    Chris/Dudeman

  38. NeMeSi January 30th, 2008 9:59 pm

    How about using SCons as an alternative build system for XBMC on Mac OS X? (and Linux? and Win32?)

    http://www.scons.org

    SCons is an Open Source software construction tool—that is, a next-generation build tool. Think of SCons as an improved, cross-platform substitute for the classic Make utility with integrated functionality similar to autoconf/automake and compiler caches such as ccache. In short, SCons is an easier, more reliable and faster way to build software.

    What SCons gives that XCode/Eclipse do not offer:
    - supports many platforms
    - out of source file builds
    - blazing fast (it does not use recursive makefiles, and does parallel builds too)
    - flexible (you have the whole power of a programming language — Python — at your disposition)
    - it appears it can produce MSVS projects too (but that is off-topic).

    What is less good with SCons:
    - things like debug/release versions are not done automatically for you (as in CMake) — you have to set the compiler flags manually, even though you always end up doing customizing compiler options anyway
    - Scons* files are python scripts, so it requires a bit more typing (like quotes in filenames), but it doesn’t look so strange to the eyes of a programmer

  39. elan January 30th, 2008 11:08 pm

    @Mr T: Glad to hear you got it working, fullscreen is up next.

    @Lars: I’m going to be working on better packaging.

    @SoerenV: Gray screen usually indicates you needing to whack system/profiles.xml, or else set the video player resolution to “Best Available”. That’s assuming you downloaded the full binary package to start with at http://dn-0.com/xbmc-trac/attachment/wiki/WikiStart/OSXBMC-0.01.tar.gz

  40. elan January 30th, 2008 11:09 pm

    @NeMeSi: Hey, that’s the beauty of an open source project. Port the Makefile to SCons, and let’s have a look.

  41. Lars January 31st, 2008 12:33 am

    thx Chris that was easy

  42. SoerenV January 31st, 2008 12:39 am

    @Elan or anyone else who knows

    How do I “set the video player resolution to “Best Available”.”

    As I have tried to whack the profiles.xml and I did start out with the full binary and then use the latest binary.

  43. Mr T January 31st, 2008 6:58 am

    Just a question. Doesnt have much to do with XBMC though but how do you create a shortcut in the dock to start XMBC. Now I have to open a terminal every time I want to start XBMC.

  44. Gurkburk January 31st, 2008 7:20 am

    @MR T: I think you said it yourself :) Just coose that the xbmc file shall be opend with terminal.

  45. zAo January 31st, 2008 8:55 am

    [quote]
    @zAo: If you’ve got a big white window then whack your system/profiles.xml file and/or make sure the video playback resolution is set to “Best Available”.[/quote]
    Tried both, but both gave me the with window :(

  46. polve January 31st, 2008 9:31 am

    Ok, I know that I must set “Best Available” on xbmc/system/profiles.xml but I don’t find in what row of the xml file.

    someone could help me?

  47. zAo January 31st, 2008 10:20 am

    Ok, downloaded all the files again and got a picture now! Only the sound is noisy.

    Thanks for the good work!

  48. elan January 31st, 2008 10:31 am

    @SoerenV: You can set “Best Available” in Settings -> Video -> Player -> Resolution.

    @zAo: Sound being “noisy” is because we don’t support mix-down (yet). You’re hearing encoded AC3/DTS, and unless your brain has a surround decoder, it’ll sound weird.

  49. Mr T January 31st, 2008 10:47 am

    Gurkburk: yeah. I figured it out just seconds after I posted here. Figures :)

  50. SoerenV January 31st, 2008 10:33 pm

    @elan
    As I understand your explanation it’s something i setup in the GUI, but that’s not possible as I get the grey/white screen.
    I tried to make changes in the guisettings.xml but with no luck either.

  51. elan January 31st, 2008 10:37 pm

    @SoerenV: OK, then make sure system/profiles.xml is whacked, and make sure you have XBMC_HOME pointing to the right place.

    Very shortly here we’ll have an actual real Mac application where you don’t have to do any of this nonsense.

  52. SoerenV February 1st, 2008 12:54 am

    @elan

    cool, I’ll wait :)

    Thanks again for your great work

  53. shambolic February 2nd, 2008 1:14 pm

    Is this Leopard only? I am running Tiger, and I get this error:

    dyld: Library not loaded: /opt/local/lib/libiconv.2.dylib
    Referenced from: /Users/snip/Desktop/XBMC/./XBMC-0.0.7
    Reason: Incompatible library version: XBMC-0.0.7 requires version 7.0.0 or later, but libiconv.2.dylib provides version 5.0.0

  54. elan February 2nd, 2008 1:16 pm

    @shambolic: Yes, Leopard only.

Leave a reply