[WIP] Installing SubSonic on the MBL

Hey child, are you still there? How’s that guide coming? :slight_smile:

Just to keep you motivated, here is something to add to it.

Making Subsonic go Premium and Never Expire Guide

  • This is not a CRACK! Since Subsonic is GPL, you could also legally recompile it yourself and remove the licensing checks. Or apply a  patch. But this is an easier way :wink:
  • By making it go Premium, you’ll have unlimited access with mobile apps and many other stuff
  • The “Donation” model of Subsonic is quite lame (as in the codec :)) because it’s not a donation and it also requires a subscription. Why should I pay a subscription if they aren’t providing a recurring service, but instead, a license? MADNESS I TELL YOU!

So, let’s do this:

nano /etc/hosts
  •  Add  127.0.0.1 subsonic.org at the end of that file

  • In Subsonic (<your_ip>:4040), go to the “Buy Premium” (or similar) at the top right. There are two fields; enter:

Email:  foo@bar.com

Key:  f3ada405ce890b6f8204094deb12d8a8

That’s it. (This key is just a MD5 hash of the email address, it’s not a serial). When you fully refresh the page (F5), the top right will show “Subsonic Premium” and the trial information will be gone

Happy streaming! :stuck_out_tongue:

EDIT: at reboot, my hosts seems to have been taken back to the previous version without the Subsonic block. Any idea what process is rewriting it?

Hey, sorry. I’m still here. Had things I had to take care of in the RW.

And I’ve run into a concerning issue… Subsonic does not seem to do well long-term. It seems to have a memory leak. Over the last few days, my MBL has been getting slower and slower to respond. When I got back home last night, I ssh’d in, and top told me that Java was eating ~400MB of memory. With 256MB RAM and a 256MB swap, the math doesn’t look too good… It wouldn’t even do a soft reboot - I had to pull the plug…

Have either of you noticed this? I’m beating my head against a wall trying to get to the root of it. (It may be related to the not sleeping issue…)

Java may make this project impractical… ~sigh~

EDIT: I’ll poke at the startup scripts, see if I can find anything that reverts the host file

I actually rolled back after playing with the test install I did so I never really had it installed long enough to see that issue. I was holding off waiting to see what you came up with… Have been quite busy here as well as of late

This is the first time I have run it for an extended period of time. I was out of the state for a week, and used Subsonic via the Android app. I streamed ~10 hours total, and the streaming was always smooth. But that might not mean anything - the app caches 2GB of recently played music and preloads 3 songs ahead in the playlist…

But when I tried to get onto Deluge today, the box was totally hosed. Pages were taking minutes to load, and requests were randomly dropping. The rest is history.

Though last night my internet provider had a… let’s say, configuration and power management issue… and it played havoc with a lot of systems. (My cable modem took hours to fully recover…). So it could be that it interfered with one of WD’s services, causing it to… eat Java… and Java reacted by… exploding? Yeah, it’s a weak theory, but it’s better than “this isn’t going to work at all.”

Hi there!

I’ve been using it for the past week and it went great so far (beside the disk not sleeping). I even bought today the DSub Android app, which is an advanced Subsonic client, and I’ve been streaming with it from my way to work to my house.

I have also installed Transmission and pyLoad and both seem to work great so far.

I think that if it leaks memory on our device then it would do the same on any other Linux computer, what do you think? In the worst case scenario, couldn’t we schedule a cron job to run a script to cleanup (i.e. stop processes) one a day/week, on the most convenient time (when you are probably sleeping)?

Even though I hate Java, don’t like the “Donation” system of the author, don’t like the “subscription” service of the author, don’t like that the author filled the Android client with ads (and then removed it) and think it’s quite bloatware, I’m starting to like how easily it streams to the mobile :), so I’d hate to give up on it.

Let me know what you think or what you find.

Thanks!

@timmy: thanks.

It’s looking more likely that it was one of WD’s services running away that drowned it.

I like the cron idea. Here’s a few ways that may work:

Restart Subsonic at 3:00 AM every day

0 3 * * * /etc/init.d/subsonic restart

Or at 3:00 AM each Sunday

0 3 * * 0 /etc/init.d/subsonic restart

 Add either line to the crontab with the editor. To open the editor:

crontab -e

 Add whichever line and save.

The mobile streaming is what keeps me going on this project.

Also, with the SubSonic Premium workaround, you aren’t able to use one of the custom name.subsonic.org addresses, are you?

Hmmm… I don’t know about the name.subsonic.org because I have my own DynDNS that runs for every service, but since the HOSTS file is blocking subsonic.org, then I guess the server wouldn’t be able to update your IP when it changes. Plus, that feature might have a server license validation scheme enabled, so that’d be another factor why I guess it might not work…

But in any case, you could always get a DynDNS for Subsonic if you want.

Indeed, I suspected it wouldn’t work. I’m apparently a ■■■■■■, because I donated, but i get a subsonic.org subdomain and it automatically forwards the ports for the mobile client. And my subsonic address is much shorter than my dyndns address, so the subsonic is easier to type on the phone. Yeah, I know, first-world problems…

But yeah, DynDNS is great. And Free. Some routers have it built-in, but I think they have a linux package that might work on the MBL. Or a script on cron.  And it negates the need for the subsonic.org address

Yes, I think that every router nowadays have DynDNS as one of their main dynamic IP naming providers.

You have some serious First World Problems as you said… :stuck_out_tongue: I guess you don’t save your DNS in the Subsonic client?

Will you still work on a full guide for Subsonic or will this thread be the info repository for it? Or are you waiting to see how the RAM leakeage goes?

I’m waiting (a) to see how RAM leakage goes and (b) for RW life to calm down a bit…

Really, I ‘paid’ for it before I knew the workaround to keep mobile streaming. Now, I justify said ‘payment’ by convincing myself that the subsonic.org subdomain is worth it. (Really, it’s not, but it makes me feel better)

LOL, OK, don’t worry about it, think that now you have a subsonic domain name… :stuck_out_tongue:

I think that what’s really important to take into consideration is the fact the the disk(s) won’t sleep anymore if Subsonic is installed. I’ve searched around for this in their official forum and there were some recommendations but for the Windows client, so I went ahead and  created my own thread to see if we could get some answers.

As you said, we should keep this project going, as the mobile streaming is near perfection! :smiley:

One more thing, I’ve tried running the cron job to “/etc/init.d/subsonic.sh” but I don’t have that file in there. Also, tried with the  “/var/subsonic/subsonic.sh” from nfos draft guide and all I get is a help screen when issueing the “restart” command. So, how could I send a stop command instead of a restart (or even a restart)?

Any news guys? I got quite excited about this after trying for a few days, but now I’m afraid you might have lost interest in it :frowning:

Answering to your previous question nfo, I’ve found  the following thread with some info on how the subsonic.org subdomain might work with the previous bypass. It consists on simulating a validation reply to true_:_

 

127.0.0.1 subsonic.org 
line to /etc/hosts
and then make a file on your local webserver (for the subsonic.org vhost if you're using them) called /backend/validateLicense.view with the content of 'true'.

@ child : please let me know if you plan to continue experimenting/advancing with Subsonic or not, so I could stop from refreshing the thread every day in hope of seeing some news :stuck_out_tongue:

Thanks

 

Timmy, I can’t get ffmpeg from  http://www.deb-multimedia.org/dists/stable/main/binary-powerpc/package/ffmpeg to install or I would have expanded on my rough draft a little bit as I was also looking to get serviio dlna server setup with the same ffmpeg package. From what I read at the link below, serviio is capable of transcoding 1080p mkv to and streaming it to any device. This interests me not only because I would be able to stream all my media to any of my devices, but also I would be able to stream my 720p mkv’s with DTS tracks to a WDTV Play in my son’s room as it doesn’t support DTS.

OK finally making some progress. I have an even newer version of ffmpeg than addchild

nano /etc/apt/sources.list

 I had to add these sources (Comment out all other sources)

deb http://ftp.us.debian.org/debian/ wheezy main
deb http://www.deb-multimedia.org wheezy main non-free

apt-get updateapt-get install deb-multimedia-keyringapt-get updateapt-get install ffmpeg

MyBookLive:~# ffmpeg -version
ffmpeg version 1.0.6
built on Mar 25 2013 18:52:44 with gcc 4.6 (Debian 4.6.3-15)
configuration: --prefix=/usr --extra-cflags='-g -O2 -fstack-protector --param=ss p-buffer-size=4 -Wformat -Werror=format-security -fPIC -DPIC' --extra-ldflags='- Wl,-z,relro' --cc='ccache cc' --enable-shared --enable-libmp3lame --enable-gpl - -enable-nonfree --enable-libvorbis --enable-pthreads --enable-libfaac --enable-l ibxvid --enable-postproc --enable-x11grab --enable-libgsm --enable-libtheora --e nable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-lib speex --enable-nonfree --disable-stripping --enable-libvpx --enable-libschroedin ger --disable-encoder=libschroedinger --enable-version3 --enable-libopenjpeg --e nable-librtmp --enable-avfilter --enable-libfreetype --enable-libvo-aacenc --dis able-decoder=amrnb --enable-libvo-amrwbenc --enable-libaacplus --libdir=/usr/lib /powerpc-linux-gnu --disable-vda --enable-libbluray --enable-libcdio --enable-gn utls --enable-frei0r --enable-openssl --enable-libass --enable-libopus --enable- fontconfig --enable-libdc1394 --enable-libfdk-aac --disable-altivec --disable-ar mv5te --disable-armv6 --disable-vis --shlibdir=/usr/lib/powerpc-linux-gnu
libavutil 51. 73.101 / 51. 73.101
libavcodec 54. 59.100 / 54. 59.100
libavformat 54. 29.104 / 54. 29.104
libavdevice 54. 2.101 / 54. 2.101
libavfilter 3. 17.100 / 3. 17.100
libswscale 2. 1.101 / 2. 1.101
libswresample 0. 15.100 / 0. 15.100
libpostproc 52. 0.100 / 52. 0.100

Oooooh yeah :slight_smile: I’ve got serviio 1.2.1 up and running! The MyBookLive is transcoding the audio and video perfectly and I am now able to transcode 720p mkv files with DTS audio to a WDTV. I will try a 1080p video tommorow as it’s getting late. The MyBookLive ffmpeg process is averaging around 80-90% CPU. There will be a nice dashboard to control the server as well…

Guide to come tommorow, I have to make sure it works on the newest firmware first as I have it running on 02.11.09-053 right now

Nice progress! I’m glad I posted to pester you! :stuck_out_tongue:

So, I’ve read now that Serviio is a DLNA server, but it’s totally unrelated to Subsonic, right? Or do they have something to do with each other? Maybe I’m missing something, but if it’s a DLNA server then it wouldn’t be possible to stream from outside of your network (i.e. work), and I think so because I see the official site says “Serviio is a free media server. It allows you to stream your media files (music, video or images) to renderer devices (e.g. a TV set, Bluray player, games console or mobile phone) on your connected home network.”

On the other hand, is awesome that you are transcoding 720p with this little MBL! Why Subsonic stuggles to even display the web UI on a browser while this Serviio works great? Is it because of the horrendous Java framework? Even more reason for me to hate it :frowning:

Thanks!!!

serviio has that horrendous java mess too :stuck_out_tongue:

I didn’t have any luck getting a profile working to transcode into a container that the WDTV Play likes but I’m in the process of testing it on the newest firmware now. Once I’m done I will post a guide. I think the PRO Version of serviio can serve media over the internet if I’m not mistaken for $25 … You get 1 month Pro trial which includes this feature

See here

http://www.serviio.org/buy-pro/10-uncategorised/59-mediabrowser

I will look into SubSonic if my back holds out in this chair either today or tommorow. It appears addchild got super busy with real life issues…

Real life **bleep**; better to spend time messing with the virtual; not-really-important, stuff :smiley:

Thanks for your research, me and my MBLD will always be in debt to you (whenever you enable donations, you only need to let me know!) :slight_smile:

EDIT: that “**bleep**” was s.u.c.k.s. I think WD is quite puritan with its corrector LOL

Timmy, I updated my guide to v2

http://community.wdc.com/t5/My-Book-Live/WIP-Installing-SubSonic-on-the-MBL/m-p/563077/highlight/true#M21623

We just need some scripts now

I’m gonna hit the couch and research some scripts… I would like to get your stuff in the guide as well so it is all together in one place.

If you wouldn’t mind helping out, make a post here by copying and pasting my guide and place all your mods where they need to go in the guide. Then maybe we can start working on scripts?

1 Like