Non-standard Airtime application - what to add / change?
  • This looks like the proper area to post this. B)

    OK, first, pleased to note that airtime installed mostly painlessly on ubuntu 14.04-4 and was able to connect to an existing, external icecast2 stream.  I noticed that a number of people have been trying to install Airtime on a Raspberry Pi, I'll probably watch those attempts with baited breathe.  ;)  And that's where things here diverge from a standard install / application of Airtime.

    In this case, I am working on modifying Airtime to control a Pi and its playlists, and not just audio, but video, as well.  The Pi appliance works very well, the major hurdle at this moment was a program manager.  For a disclosure, the appliance's project page is here https://github.com/krattai/AEBL and the blog for the appliance is here http://aeblm2.blogspot.ca/ for those who are curious.

    I don't want to have this end up being a huge, initial post, so I'll try to summarize, yet still touch on some the major points for feedback.

    First, the installation for this hack will end up being a virtual machine, as it is specific purpose and needs to be easy for people to install / use, "out of the box".  In that regard, the appliance (VM) will be zeroconf and IPv6 enabled, in order to auto discover devices that it will be controlling.  If anyone has any feedback on experiences using Airtime in a virtualbox installation, it would be interesting to hear.

    Next, I initially came to the forums here, because I was looking for any references to remote storage successes.  There's a few reasons for this, partly because the AEBL devices themselves will contain content that this application of Airtime should be able to reference in scheduling.  I've browsed a few of the discussions on this subject, and did not see any resolutions on quick skimming.  Again, if anyone has any feedback on this, it would be great, otherwise I'll have to look at adding that as a feature for this hack.  Just as a point of interest, the AEBL appliances are essentially Internet of Things devices (don't get me started on that ridiculous name) and form their own cloud of content, so mapping public content (yes, copyright issues are very much in focus, here) is part of the interest in externally mapping content for Airtime, as will be the private content, in regards to sharing to private groups / subscribers.

    Third, is regarding streaming.  Maybe I'm missing it, but I haven't found a way to add an external stream to the schedule.  Even though I was able to successfully connect the icecast2 server on an AEBL device to Airtime, I'm not sure I'm real clear on the concept.  I'd partly expected to be able to set an external stream to an Airtime schedule, although I certainly can see how a remote device (ie. AEBL) could playback an Airtime stream.  Any insight into this would be welcome, as to how an external stream source works within Airstream.

    Second lastly would be daisy chaining.  The AEBL appliance is itself a media playback and streaming device which utilizes the concept of channels.  Each device is potentially its own channel, if the owner of the device wants to publish their own content and others want to subscribe to that channel.  I'm looking at a number of ways to accomplish that.  Part of what I'm hoping to accomplish with Airtime is to augment that function.  At first glance, it appeared that Airtime's decentralized concept might help in that regard, although again, maybe I'm not clear about Airtime's core abilities.  If anyone could provide thoughts on using Airtime to stream to an external device, which would in turn rebroadcast that content (ie. an artist is using Airstream to master a live show, which is then picked up by their AEBL appliance, for rebroadcast on their AEBL's channel), it would be much appreciated.

    And now for the most non-standard part.  The AEBL device was originally developed as a generation advancement of a prior appliance, which was actually a video playback device.  Think digital sign on steroids.  The audio aspects were an afterthought, but are of more interest to me.  That said, I'll be adding video programming functionality and possibly streaming capabilities to Airtime.  If anyone has any knowledge of attempts to do this, I'd love to hear about it.  Ultimately, Airtime will create the playlist schedule for the AEBL devices as a primary function, and anything else is, at least at this point in time, just an afterthought.  But there certainly could be a huge potential that will probably be explored at a later date.

    I look forward to any feedback, suggestions, etc. on this.

    Cheers,

    Kevin
  • 12 Comments sorted by
  • RE: adding an external stream - go to the AT library - New - Webstream. Then add THAT to the schedule.

    I am getting AT working on an ARM device that is NOT a pi - but a sub 100$ quad-core Rockchip device. It should have more than enough power.

    You did not find any PHP version issues? I have.
    Post edited by John Chewter at 2014-09-17 07:12:09
    No longer using Airtime or Libretime.
  • Thanks John, I'll try that out for the stream.  B)

    I think there's a few other ways to get AT on an ICB, which would be as you say, go to a more powerful ICB.  Like the Intel Galileo or the Banana Pi.  The "nice" thing about the Banana Pi is, it is 100% compatible with Raspbian, the nice thing about the Galileo is it would run any non-ARM distro.

    And no, no problems with PHP that I've found.  I'm running AT 2.5.1 with PHP 5.5.9 with an otherwise up to date 14.04 and pretty much been to every part of AT.  *shrug*

    What I DID have problems with, was the initial install, when I used the DEB.  I did not know what was wrong (no indicators) but later found out it was the vhost error, so I renamed the 000-default.config, changed the name of airtime to 000-default.config, which didn't work, but then did an install from the git code and everything went properly.
  • So to confirm, was able to add the AEBL stream to AT library and schedule it to play in a show.  Thanks again, John.  B)  Not sure how I missed that...

    Which then, solves for daisy chaining,  AEBL to AT master, AEBL to AEBL, AEBL to AT mater to AT slave to AEBL, and any other combination. Very nice.  B)
  • How did you get Silan installed? I am finding that a problem
    No longer using Airtime or Libretime.
  • That's a good question, John.

    My previous workstation died a couple weeks ago and after fighting with it for a while, I ended up building a new (temporary) workstation until I get the data off the old one and can re-install.  The point is, uvuntu 14.04-4 was a fresh install to desktop, then added the usual restricted and gnome-session-fallback, so I'm using metacity.  I only mention that because of possible dependencies that MIGHT have been met, without me intentionally installing anything.

    From there, I grabbed the .deb for AT and ran it on the system, but that failed (I don't know where, I did not check the log files), but only in the sense that AT was not running (ie. the vhost problem).

    In the mean time, I had done a git clone on the AT master.  After fiddling with the vhost without success, I found the airtime-full-install script in the install_full/ubuntu path, so I ran that script.  Once complete, AT worked.

    Now, the logs for the full install indicate that silan was already the newest version, so I can only guess that silan installed during the .deb attempt.

    silan -V responds with:

    silan version 0.3.2
    Copyright (C) GPL 2012 Robin Gareus <robin@gareus.org>

    Idk if that is the newest version, or just the newest version in the ubuntu repos.
  • Just another quick thought on that, although I don't know if either of these use silan.

    I know for sure that I had LMMS installed prior to installing AT, and I believe I also had vlc installed before AT, although I'm not entirely sure about that.

    I also don't know if silan is installed as binary or compiled, but I do have gcc, etc. installed, although I haven't had a chance to check through the install script, but I doubt that silan was compiled on the fly.
  • OK, finally done.  I've got an Airtime virtualbox VM that I will be making available for everyone to use/test as soon as I can get the vm compressed and find a spot to host it.

    It's IPv6 / zeroconf enabled, so it's discoverable and immediately available to be logged into, once started.  It is a low profile installation (ubuntu 14.04LTS i386 server set up for 384MB and has a 4GB drive) so that it's as compatible as it can be.  Of course RAM can be increased if a person has the resources and the drive is LVM so it can be expanded easily enough.

    Anyone who is able and willing to help develop this VM is welcome and encouraged to do so via the AEBL project I referenced above.  I think it has a lot potential.

    I'll post a link to the image as soon as it's put up.
  • OK, I got the Airtime VM compressed from 2.6GB to 0.98GB using 7zip.  For linux, you'll need to install p7zip or p7zip-full.

    There's a readme that gives info on use of the VM as well as username and password info.

    The file's on my AEBL dropbox:
    https://www.dropbox.com/s/ojvw90ce3subom0/ATS_vm.7z?dl=0

    If anything is broken, let me know on the AEBL project site:
    https://github.com/krattai/AEBL

    NB:  This is a standard, unmodified, full install of Airtime 2.5.1.  Anything else that will be for my specific purpose will not go on this VM.
    Post edited by krattai at 2014-09-19 18:31:59
  • krattai - we need to talk :) Skype john_chewter

    No longer using Airtime or Libretime.
  • Sent you a PM, John.
  • :D
    The message was - he doesn't do private, in case anyone was wondering.
    Post edited by John Chewter at 2014-09-19 22:09:36
    No longer using Airtime or Libretime.
  • lol  B)

    I didn't know if I could do skype on this two fold sluggish computer and sat connection, and couldn't remember my skype account, but...  i figured it out.  :BG:  now...  if I can find my mic...

    and anyhow...  what's with using a microsoft service?  :p

    oooooh...  don't get me started...  lol
    Post edited by krattai at 2014-09-20 00:56:54