Sunday, December 28, 2014

DLNA Streaming from Linux --> 1st Gen Sony GoogleTV

While cleaning up my wife's tablet I found a few hundred photos/videos from 2010-2011 time frame.  I copied them all to offline storage.  My kids were having a ball watching younger versions of themselves over my shoulder, so I thought, why can't I just stream this stuff?

The Sony GoogleTV already supports streaming from other DLNA devices.  This generally includes a lot of devices, like Windows laptops, that appear on the network and make videos and pictures available to DLNA clients.

I tried a few different approaches in Linux before I found one that just worked right out of the box.

First, there's MiniDLNA (now called ReadyMedia).  This project is "sort of" supported by Ubuntu with a separate repo.  However the objects in that old repo seem out of date, and the only way to get this up and running with the latest and greatest version is by building it from source.  I didn't want to mess with that this morning, so I moved on without even giving this one a go.

Next, I found MediaTomb.  While this was relatively easy to set up under Ubuntu, I couldn't get my Sony GTV to recognize it.  My phone w/ a DLNA client, however, *would* recognize it, but it refused to play any of the content.  I messed w/ the config file and uncommented some lines for the PS3, Google'd around a bit, didn't find any solution.  Uninstalled, moving on.

I looked around for Plex, which I know is popular, but it is commerical and I didn't really like the license terms, so I moved on.

I finally found Rygel, which installed easily under Mint/Ubuntu and in literally minutes I had it running.  I also installed the companion app, rygel-preferences, which made it super easy to point to specific folders that had the content I wanted to publish. 

I did have to run "rygel &" from the commandline to start the server, but after that the Sony GTV discovered it immediately and the kids could look at all 6GB of short movies and photos.

Monday, December 1, 2014

123D Design Uses Open Source Code, but Autodesk Says Your 3D Model is Closed

I downloaded Autodesk's 123D Design solid modeling package, aimed at makers.  It looks okay, I played with it for a few minutes.  I wanted to see what it would take to "go premium", and what exactly that would entail.  Just click "Go Premium" to get started...

...and you are presented with:

You're allowed to use the models you create for non-commercial use only.  This means that whatever you design, whatever it is you make with this software, somehow Autodesk says that you can print it, but you're not allowed to sell it.  In fact if you look at their FAQ you will find exactly what they mean:

They note that even if you upgrade your account, you aren't able to include any Autodesk-provided 3D models.  It is not clear if this includes the primitives, such as the sphere, block, torus, cone, etc that would be inserted into your model automatically by Autodesk.

It is also amusing that they say they've made the change because while they believe in the Maker Movement, they also want to keep improving their free apps so they can unlock the creativity in everyone.

Well, it certainly seems fair to say that Autodesk likes free and they like the creativity of others, because as you take a look at the license agreement, you'll find licenses and copyright notices for all of the free software that Autodesk is depending on to build this application (click Help, then About):

I'll save you the time of going through this box, I cut/pasted it into Vim and I'm told it's about 8600 words long.  You'll see all of the open source goodies in a minute.

Autodesk says many times in this license that they'll give you the sources if you send a CD-ROM to their legal department.  I don't have much reason to believe that they won't honor this request, but I don't care enough to mail them a CD.

Now, to be fair, I don't think that Autodesk should give away their expertise -- namely decades of work on their solid modeling and CAD software -- for free.  However, I do find it curious that they want to impose ownership on the physical output that was created using their software.  In my opinion this type of restriction is not in the spirit of the open source licenses that Autodesk used to build 123D.  And further, is it legal?  Could Adobe put a claim on artwork you've made with Illustrator?  Could Google put such a claim on a book you're written using Google Docs?

Legality aside, it would have been a better move, in my opinion, to not impose restrictions on the output of the free version of 123D, but then give the users good reasons to go for a paid version.  Maybe even give users the full version for a month to try it out?

We are talking about a software for makers.  Software for hobbyists, for tinkerers.  Make it powerful, but not powerful enough to generate prints and build cars with.  Adobe experimented with this concept with Adobe Photoshop Elements, a stripped down version of the professional-grade Photoshop.  For $60 you could get Elements that would do almost everything most hobbyists needed.  For $600 or more you could get the full-blown Photoshop.  Today, even Adobe has jumped on the software-by-subscription bandwagon, giving you all sorts of cloud-based services for a monthly fee.

The trick here is, it's almost Christmas.  And I think there will be a lot of 3D printers under trees this year.  Dremel is jumping into the mix and their printer will even be for sale at Home Depot.  So Autodesk needs to provide users with a way to get their model out of their software and into the physical world.  So, they do allow you to export your model to .stl format from the free version of 123D, but I'm not sure how they would prevent you from uploading your work to Shapeways and putting it up for sale in the Shapeways store.  Nevertheless, their license says you can't do that.

Here are the software licenses I mentioned earlier.  I've deleted all the lines that didn't contain "portion.*related.*" to end up with this list.  There are also some commercial licenses in here as well as some licenses I can't identify, and some portions that haven't given any credit.  If you see a mistake here, leave a comment and I'll correct it.

PackageLicenseLicense Holder
Qt MFC Migration Framework v 2.8GPL 2.1Nokia Corporation
ASIX2/C v1.6.0Apache 2.0Apache Software Foundation
hash.cFree w/ conditionsBjorn Reese and Daniel Veillard
list.cFree w/ conditionsGary Pennington and Daniel Veillard
trio filesFree w/ conditionsBjorn Reese and Daniel Stenberg
libiconv v1.9.2GPL 2.1Free Software Foundation, Inc.
Qt v 4.7.2GPL 2.1Nokia Corporation
OpenSSLProprietary?OpenSSL Project
"cryptographic software"SSLeay? Free w/ conditionsEric Young, Tim Hudson
Qt Cryptopgraphic Architecture v2.0.2GPL 2.1Justin Karneges, Brad Hards
OpenSSL Plugin to Qt Cryptographic Architecture v 2.0.0 beta 3GPL 2.1Justin Karneges, Brad Hards
QOAuth v1.0GPL 2.1Dominik Kapusta
expatFree w/ conditionsThai Open Source Software Center Ltd. and Clark Cooper
Threading Building BlocksClosed?Intel
FIPS 180-2 SHA-224/256/384/512Free w/ conditionsOlivier Gay
Paul Hsieh Super Fast HashFree w/ conditionsPaul Hsieh
MurmurHashFree w/ conditionsMurmurHash2, 64 bit version, by Austin Appleby
zlibFree w/ conditionsJean-loup Gailly and Mark Adler
InstallShieldClosed?Acresso Software Inc. and/or InstallShield Co. Inc.
"source code provided by NVIDIA ARC GmbH"Closed?NVIDIA ARC GmbH
"files related to libxml"Free w/ conditionsDaniel Veillard
"portions related to libtiff"Free w/ conditionsSam Leffler and Silicon Graphics, Inc.
sparsehashFree w/ conditionsGoogle, Inc.
libxerces-c v 2.7.0Apache 2.0Apache Software Foundation
OpenEXR v 1.6.0Free w/ conditionsIndustrial Light & Magic
"portions relating to Adobe Photoshop CS4 software"Closed?Thomas Knoll, Adobe Systems, Inc.
libpng v 0.97Free w/ conditionsVarious
JPEG software?Thomas G. Lane, Independent JPEG Group
TIFFFree w/ conditionsSam Leffler, Silicon Graphics, Inc.
LuaPlusFree w/
"portions"?International TechneGroup
Info-ZIPFree w/ conditionsInfo-ZIP (multiple indivdiuals named)
OpenSSL v 1.0.0dFree w/ conditionsOpen SSL Project, Eric Young
liboauth v 0.9.4Free w/ conditionsRobin Gareus
SCons v 2.0.1Free w/ conditionsSCons Foundation
Epydoc v 3.0Free w/ condiionsEdward Loper
Xerces v 3.1.1Apache 2.0? No credit given
Boost Software License v 1.0Free w/ Conditions? No credit given
"Portions"?Python Software Foundation
"Portions relating to Open SSL"Free w/ ConditionsOpenSSL Project
"Portions relating to WINE"GPL 2.1Wine project authors