November 18, 2016

Mini DLNA and bubbleUPnP

So ages ago I found bubbleUPnP (also an andoid app). I’d put this in the category of cheap plex server. I say this because the main reason I wanted to use it was for its on-the-fly transcoding to play media to the chromecast. The android app is also really nice, and you can control your media directly from your device too (Much like what plex does)

What I was really impressed with was that the raspberrypi (v1 Model B) handled this without too much hastle, and was able to stream 720p content to the chromecast with no (noticable) worries

Installation is pretty simple:

  1. Ensure you have Java installed sudo apt-get install openjdk-8-jre (or the oracle java if you are so inclined)
  2. Install ffmpeg, if you want on the fly transcoding sudo apt-get install ffmpeg
  3. Download BubbleUPnP zip file from http://www.bubblesoftapps.com/bubbleupnpserver/#other_java_platforms
  4. Unpack the zip file and set the launch.sh file as executable
    • unzip BubbleUPNPserver-distrib.zip
    • cd BubbbleUPNPServer && chmod +x launch.sh
  5. Run launch.sh

Once its running you can make settings changes by going to serverIP:58050, but the transcoding settings can be setup in the android app once you connect to it

So BubbleUPnP is not a media server (you cannot tell it where videos are for you to then stream) , it just enables alot of cool things ontop of traditional dlna media servers. So, now we need a dlna server to tell our network about media we want to watch. Incomes minidlna. This is a nice, lightweigh dlna server that the pi can use. Easy to install, sudo apt-get install minidlna

Once installed, all you need to do is tell it where your content is and it will go ahead and scan and do its magic. Edit the file at /etc/minidlna.conf. Comments in that file are pretty straigh forward, all I needed to change was this line media_dir=V,/mnt/nas/downloads

You can add as many of these as you need to secify where your media is. You can also specifically tell it what type of media it is (notice the V ad the start of the listing) this just helps it not have to guess

Now that you have both services running, check out the app on your phone.

Android BubbleUPnP

You see that it can play to “Renderers” (Things that consume the media) and it plays from a “Library” (Your dlna server, or local device files). As you can see from the screenshot of my network, I could play media to my XBOX, and by bedroom chromecast. I could choose media from my desktop PC, or the “Musicbox” server (which is my rasbperry pi)

Another thing to note is, if you do not need any transcoding done, then you dont need to install the BubbleUPnP server. You can just install the android app, and install minidlna somewhere to share your media to your network