No announcement yet.

CarMa 2011 (public beta) [updated 14-04-2011] *old thread*

This topic is closed.
  • Filter
  • Time
  • Show
Clear All
new posts

  • CarMa 2011 (public beta) [updated 14-04-2011] *old thread*

    Some details about it's current state
    (see 2nd post for, more-or-less, the current feature-list)

    The reason to open this beta is to allow everyone to enjoy, follow and talk about this project

    The development versions will be open for everyone.
    But please remind yourself it is still beta! This means we can't guarantee
    a bug free application just yet, although is quite stable for every day use!

    This topic is to keep track of the current state of the project and
    to notify the public about any significant updates and features.
    The zip (behind the link below) will be updated almost daily.
    Mostly, the updates will contain bugfixes and performance upgrades.
    I expect to introduce new features every few days, unless a bug or
    an issue need attention first.

    Download it HERE!
    A small changelog is available in the post #3 of this topic.


    ps: see last posts of this topic for the most recent updates (or follow us at twitter or facebook )
    Last edited by jsn; 03-14-2011, 12:01 PM. Reason: update 2011/3/14

  • #2
    Pro's and specs:
    • 32bit alpha-blended GUI, based on layers
    • Different types of layers available like text-, bitmap-, button-, slider-, albumcover-,
      progressbar- and timerlayers to execute script at set intervals and a couple more.
    • Scripting support in an easy 'Pascal'-like way
    • XML based skins, where scripting is embedded
    • PNG is the preferred image format (due to blending), but JPG and GIF are supported as well.
    • Full plugin architecture based on interfaces (which should make it cross-language compatible,
      or at least easy to make it so)
      The only plugin now is the audioplayer (which drives Winamp, it's equalizer and the playlist.. Thanks to the flexibility,
      another plugin is able, f.i., to modify the contents of the playlist.. which can make things interesting in some future ideas)
    • The current skin is a temporary stage, it is just designed to be usable and
      functional and not too bad looking, right now. I started using NoTec's brilliant Bloom skin
      of the last version, but modified it a lot.
    • As mentioned earlier, the full 10-band equalizer in winamp is implemented, but also
      the many audio-channels which might be available on your soundcard. CM supports
      multichannel volume-control in addition to the standard Windows volume controls.
      Note: If CM is misunderstanding the channels of your card, please let me know by
      pm-/mailing me the logfile.
    • The library is currently based on your on-disk folder structure.
      The root folder of your music can be configured ofcourse.
    • Dragging a list is implemented, as well as a touchscreen threshold to avoid those
      annoying immediate doubleclicks due to bumps in the road when you really didn't want to
      Kinetic-scrolling is still in development stage, but it's almost done!
    • Every mentioned feature is already implemented and functional in the current skin!
    • An internal caching- and memory management system delivers files fast to CM subsystems.
      It tries to maintain the mem and resource usage to a small comfortable amount.
    • A couple of other nice and neat features I forgot to mention.
    • Very low CPU usage, most things are low priority background tasks or event-driven instead
      of polling.
    • Very open API.. Most aspects of CM (about 90%) are reachable by the external plugins
      due to the interfaces. No limiting set of imports, just a nice and clean set of interfaces
      (for developers: think of it as the typelib of MSWord, but way less messy )
    • FM Radio plugin (driving currently a Silabs USB FM receiver)
    • PhotoFrame layer (using random images from the "My Pictures" folder, displayed as a p0lar0id )

    Cons and known issues:
    • This is only valid for <1ghz machines: it lags a tiny bit sometimes reloading screens,
      or executing a script, but it is small and totally not annoying, unless you go well below 800mhz.

    Almost completed or planned:
    • A redesigned library browser, just temporarily
    • Kinetic scrolling



    • #3
      Updates as of March 14:
      • Fixed OGG multichannel audio. (Your DTS audio CD's, converted to multichannel OGG should play beautifully!)
      • Fixed TEMPer detection and re-detection. (and correctly converts the value to C or F displays)
      • Fixed screen sensitivity (hopefully optimized it a bit)
      • CoreTemp and SpeedFan plugins added

      Most important updates as of February 15:
      • New experimental XM radio plugin! (not yet finished, feedback needed)
      • Improved configuration application and storage structure
      • Plugins are able to extend the scripting language
      • Lots of framework improvements (core & plugins)

      Updates as of November 13:
      • Lots of optimizations and bugs fixed.
      • Add folder to playlist bug fixed.
      • Added additional scripting support to initialize screens.
      • Added plugin detection for screens, this will hide elements depending on a specific plugin.
      • Added support for in-application configuration settings. A limited settings screen has been added.
      • Fixed (at least improved) the VU-meters.
      • Added a switch-button control to accommodate on/off type buttons.
      • Added animated wallpaper (currently not used). (Used to slide a cloud across on top of the wallpaper)
      • Added a programmable keyboard plugin (f.i. to control CarMa with steeringwheel-controls)
      • Lots of other development since the last topic update.

      Updates as of May 18:
      • Replaced the Winamp audio player with the BASS audio engine. Providing multichannel audio, with low- and highpass filters and independent channel volumes. It supports all (incl 8-channel) audio configurations, and you can even set up a dual subwoofer system!
      • Modified the linear volume control. It's using a logarithmic scale which can be configured/tuned in through the settings.

      Updates between April 5 and May 18:
      • Set up a basic website for the CarMa project at
      • Added a forum with some basic documentation about skinning and available plugins.
      • Lots of fixing and coding, we were replacing the audio engine with a multichannel capable player!

      Updates as of April 5:
      • The TEMPer USB temperature modules are now supported. This can provide interior and exterior temps to CarMa!
      • OBD-II basics are almost up and running. We're using an ELM327 bluetooth adapter for the development. Although released, this plugin sometimes isn't accurate.
      • Optimized the list scrolling again, tried to correct the select issues.
      • Weather service plugin released.

      Updates as of March 20:
      • Added scrolling for text labels. This allows f.i. longer song titles to be read.
      • Added a setting to start playing music when the playlist receives one or more items.
      • Fixed a navigation-plugin shutdown bug. (GMPC still doesn't close, but the plugin doesn't crash on shutdown anymore).
      • Corrected a few used fonts. Some were cut off, some were too wide.

      Updates as of March 17:
      • Personalization has been added! You can choose your own wallpaper and your own car-logo (not included). This only works if the skin supports these custom settings. (the shipped skin does)
      • Plugin management from the settings application. Plugins can be configured and disabled.
      • Fixed playlist bugs.
      • Improved scrolling speed of the library-browser control.
      • Fixed a plugin unloading bug and a few others.

      Updates as of March 14:
      • Removed dependency on external utility to embed GMPC. It is now natively embedded. (there's still an issue shutting it down from within CarMa, the Windows shutdown will take care of it now)
      • Included personalization (car-logo, background) in the configuration app. It must be supported by the skin to be functional.

      Updates as of March ~11:
      • Supports Speedfan for hardware monitoring, configure your items using the following....
      • CarMa Settings application (huray!).
      • Basic support for Garmin Mobile PC navigation software (it seems to be one of the hardest apps to integrate).
        I was able to use Cloak. An application from a member of the mp3car forum, but I forgot who developed it. "Integrating"
        was a lot easier using this tool. The author should receive all the credits for that! (although I still have to ask for his kind
        permission to use it with CarMa)
      • Basic external application integration implemented for above item, but should be more developed to be useful.
      • Basic videoplaying support, but it lacks a way to start them yet.
      • USB device detection. Enables playing music from an external device (USB memory, USB disk, etc)!
      • A slideshow GUI element.

      Check thread for updates for February.

      Updates as of Jan 28:
      • GPS plugin tested and packaged with the current build.
      • Minor skin adjustments
      • Again an updated SDK (interface definitions are a bit tuned)
      • Core SDK-plugin has been commented more and the code makes more sense now.

      Updates as of Jan 27:
      • Finished GPS plugin, needs testing in the field (download is not yet available)
      • Fixed SDK. Example project had wrong paths references. Tested plugin compilation on Delphi 7 (works!)

      Updates as of Jan 25:
      • GPS plugin is being worked on!
      • SDK example has been released on the page!

      Updates as of Jan 23:
      • A lot of performance fixes! It consumes near 0% CPU.
      • Added a key to the settings to override the Winamp location
      • Reduced amount of threads
      • Fixed cover load.
      • Added ID3 tag reading for extra song data
      Last edited by jsn; 03-14-2011, 12:00 PM.


      • #4
        reserved 2


        • #5
          Excellent work jsn. I gave it a shot today and am very impressed with speed and functionality. A quick note, the current skin has back button behind the bottom bar barely visible for the settings screen on bottom right.

          Works flawlessly so far. Keep up the good work
          Lilliput EBY701, Intel D945CLF2, Windows 7,
          PPA-1455 USB Audio, Visteon HD Radio,
          Front End - Still Searching

          Build 95% (can never be complete)


          • #6
            Interesting. It shows potential, I'll play with it more later. Graphics look really nice.


            • #7
              Thanks for the compliment!

              But yeah, the settings screen are a remnant of the earlier skin.
              It was mainly used to test new controls like toggle-switches (which will also return, but a little later)


              • #8
                The current graphics are just temporary. NoTec will give it the finishing touch
                it deserves. But therefore the core functionality must be finished and stable.

                As he said earlier, he already spent a lot of time on it, working out concepts and
                figuring out the main GUI design-rules. He is currently waiting until the app matures
                some more. Until then, the graphics will be okay, not too horrible..
                But a developer is a developer, not a graphics-designer


                • #9
                  Looks great. I completely agree with getting one feature solid before moving to the next. Besides, I need a good music player.

                  A bug, though: I went to the music player, went to a folder with 2 MP3s in it, clicked "add selection to current playlist", saw "added 2 files to the playlist" up top, clicked "switch to music" and got a dialog box that said "There are no songs in the playlist yet."


                  • #10

                    Because CM uses the playlist of Winamp to record those actions,
                    I think it probably couldn't, or didn't launch, Winamp.. Can you confirm that?
                    (Winamp should be running, or it should be launched by CM.)

                    Otherwise, I'll have to implement a path-setting to manually enter the path
                    to the Winamp player.

                    Thanks reporting, I'll check into it!


                    • #11
                      Couldn't get it to do much of anything other then switch screens but the graphical work is incredible!! The interface reminds me of something from XBMC.

                      Not having winamp installed might explain why I couldn't get music to play. Its a shame you guys went that route...a built in media player would have been pretty cool.
                      openMobile - An open source C# Front End (why choose openMobile?)
                      - Always Recruiting Developers -
                      Like what you see? Donations are always welcome


                      • #12
                        Hmm, sounds also like the above mentioned problem.

                        CM tries to retrieve the installation-path of Winamp 2.9x from the registry.
                        If it finds it, it will launch the winamp.exe (and shuts it down after closing CM)

                        But if it can't find or launch Winamp, the playlist will always be empty.
                        Thats because CM's playlist is actually the Winamp playlist.
                        No winamp = No playlist data for CM.

                        I'll think of something to solve this... An automatic search doesn't work
                        for everyone, it seems.


                        • #13
                          Originally posted by justchat_1 View Post
                          Couldn't get it to do much of anything other then switch screens but the graphical work is incredible!! The interface reminds me of something from XBMC.

                          Not having winamp installed might explain why I couldn't get music to play. Its a shame you guys went that route...a built in media player would have been pretty cool.
                          It is planned, maybe I will go for it sooner. It depends on the requests I guess. (first one counted )
                          It's just the matter of implementing 3 interfaces (player, eq and playlist) and FMOD, BASS
                          or DirectMedia are within reach..
                          I think it would be about 10hrs to implement a plugin for one of each mentioned player.


                          • #14
                            Originally posted by jsn View Post
                            Because CM uses the playlist of Winamp to record those actions,
                            I think it probably couldn't, or didn't launch, Winamp.. Can you confirm that?
                            Yes, I can confirm that. I don't even have Winamp installed.

                            I'll fix that and try again.


                            • #15
                              Sorry to bother you guys with 'another' install..
                              Luckily it's a very known and lightweight player. But still...

                              I'll give developing an integrated audioplayer a higher priority,
                              but currently some other things and features will be implemented.