Author Topic: GPL Source Code  (Read 242 times)

Ceriand

  • Newbie
  • *
  • Posts: 4
    • View Profile
GPL Source Code
« on: July 01, 2017, 07:23:12 AM »
Does anyone know where the part of the source that are GPL'ed are available anywhere yet for earlybird owner who have their cameras?

tesla500

  • Krontech
  • Newbie
  • *****
  • Posts: 48
    • View Profile
    • krontech.ca
Re: GPL Source Code
« Reply #1 on: July 01, 2017, 12:36:37 PM »
Still working on that. The current dev environment VM has some TI packages installed that are under NDA, so we need to rebuild the entire dev environment from scratch on a new VM. None of the NDA code is actually used in the camera, but I'd installed it during development to check it out. We've all been so busy getting ready for production, there's been no time to build a releasable VM yet. Sorry for taking so long. Check back after all the cameras have shipped to backers.
« Last Edit: July 01, 2017, 12:38:20 PM by tesla500 »

Simon

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: GPL Source Code
« Reply #2 on: July 01, 2017, 05:06:21 PM »
Does anyone know where the part of the source that are GPL'ed are available anywhere yet for earlybird owner who have their cameras?

I hope it won't be GPL, but rather MIT - where did you read that, Ceriand?

Ceriand

  • Newbie
  • *
  • Posts: 4
    • View Profile
Re: GPL Source Code
« Reply #3 on: July 02, 2017, 02:38:01 PM »
The Linux kernel, and the bootloader, u-boot, as well as various packages in user-space (busybox, gstreamer, etc) are GPL. The actual camera app remains to be seen.

Simon

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: GPL Source Code
« Reply #4 on: July 02, 2017, 11:40:04 PM »
Oh, I didn't read your post properly. Sorry about that.

Electra

  • Newbie
  • *
  • Posts: 24
    • View Profile
Re: GPL Source Code
« Reply #5 on: July 03, 2017, 10:58:09 AM »
I am curious what the future plans are for things like the FPGA code and other deep parts of the camera.
While I'm assuming they won't be released while the camera is in production, will, at end of life, everything needed to make it go be made available?

My own preference would be GPL as much as possible to make any changes to the camera app or other work available back to the community and if you want to do something commercial with it, dual licence it off David. GPL will also not prevent you from writing your own apps for the camera under whatever licence you wish.

However, it's not my camera, these are only my own views and even being as open as it is, is already awesome. :)

Simon

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: GPL Source Code
« Reply #6 on: July 04, 2017, 07:41:05 AM »
For trivial mods that would take just as long to copy as to write from scratch - GPL no problem.

But for any app with serious IP, GPL discourages sharing with the community due to having to share the source code. That same IP I could be using in another commercial product, filing a patent for, or simply don't wish unscrupulous companies to discretely use in commercial products.

Apps with serious IP also have the capability of people specifically buying the camera because of the app.  Many of those apps won't happen if the source has to shared. Apps won't be freely offered if a MIT license or like has to be purchased.

Electra

  • Newbie
  • *
  • Posts: 24
    • View Profile
Re: GPL Source Code
« Reply #7 on: July 04, 2017, 08:06:39 PM »
I should have made myself clear.  I wasn't against allowing MIT licensed code, just keeping the core camera framework/app GPL.
After all, the OS and system libs are already GPLed and there is an argument to be made that this was one factor that made the camera possible.  :)

https://www.gnu.org/licenses/gpl-faq.en.html#LinkingOverControlledInterface
Adding a clause like that would allow someone to write their own control app and interface it to the rest of the camera and not share it according to the terms of the MIT liciance they are welcome.
HOWEVER if they want to make improvements to the main camera app, should be shared and others should be able to improve apon those changes.  After all, David, and eventually others will put a lot of work into it and I don't like the idea of someone benefiting from his work but not giving back.

Another option might be the LGPL to keep the main app and camera libraries open but allowing proprietary programs to connect and interact.

Again, disclaimer. My opinions only, ultimately it's David's decision as we don't know the final vision for HIS camera/company.

Simon

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: GPL Source Code
« Reply #8 on: July 05, 2017, 02:26:03 AM »
Yes, it goes without saying it's David's ultimate decision. Posts are always opinions - we're only here discussing considerations, and also learning in the process.

Anyone choosing to run a slowmotion youtube channel or blog is commercially benefiting from David's work if successful. They have paid $2500+ for David's work and are heavily advertising the camera, so much so David forwent the $2500+ for a bunch. So giving back I don't feel applies. Other sorts of commercial work - it's all a case by case thing.

A quick scan through Qt's licensing suggests David will have a Qt commercial license, so although some Qt libraries or third-party libraries will be GPL/LGPL, the actual app won't be GPL/LGPL.

LGPL still requires one to give access to the library and usage. Great for protection of algorithms, but still I wouldn't wish some commercial entity to freely use my work.

Similarly I totally agree with David not exposing his serious IP unless it's under appropriately secured and priced.
« Last Edit: July 05, 2017, 06:57:13 AM by Simon »

Electra

  • Newbie
  • *
  • Posts: 24
    • View Profile
Re: GPL Source Code
« Reply #9 on: July 05, 2017, 05:34:36 AM »
The disclaimer is only here so I don't come across as arrogant know-it-all, I'm trying to argue a point, not trying to come across as an asshat. I sometimes fail at making the distinction clear.

This also depends on what you plan to do. If the core camera libs and main app is LGPL, you can write your own app(I hate that word, what was wrong with 'program'/'application':), to control the camera what whatever level is provided and if David has provided an API(And hopefully he will!  'libkron' maybe?:), interface with the main camera control interface all without releasing any of your code.

As far as I can tell, from the point of LGPL is that the license ends at the API/library boundary. From the license:  "A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License."

So you can write your own programs that do anything from completely take control over the camera to a simple trigger library add-on and keep your code to yourself. The ONLY code you will have to release is any changes made to David or the OS/it's libs/programs, then I believe it would be, at the very least, good manners to release those improvements back for others to enjoy.

How many other cameras have this level of openness? And of those how many are high speed? I don't like the idea of it being open and then someone making improvements to the main software without paying it forward by sharing. Add-ons sure! Separate control programs? Sure! Core improvements? No. If you want to keep your code to yourself, make your own camera, or contact David for a special licence.

Someone who receives this camera after the promotional ones are under no obligation to even mention that they use it and many won't, so I don't consider that a valid argument.
No, I'm trying to argue that this camera would have been much less practical without the GPL and LGPL code running the OS. And while under no obligation, it would be nice if the camera was as open as piratical on top of that so others could build upon that work and give back themselves in the same tradition.

This is why I'm also hoping that when the camera hits end of life in however many years that takes, everything is opened so existing cameras can continue to be improved and worked on. But that is another point entirely.

And... that was way too long and rambling. Sorry, hopefully at least a few points are clear.

Simon

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: GPL Source Code
« Reply #10 on: July 06, 2017, 05:15:40 AM »
Of all the open source projects I've been involved in, and that's a lot, I can't say I've ever come across someone keeping core improvements to themselves. It's of course in everyone's interest to advance the product. So I think you're imagining something that just doesn't happen.

There are plenty of cameras with this openness - including slow motion - the iPhone 6 & 7 the most notable with thousands of open, closed, free and paid apps modifying the camera. The Chronos simply gives the opportunity to write software on a camera with higher frame rates and/or resolutions. I definitely wouldn't have purchased it without access to the app development environment.

I'm talking substantial specialist apps in the camera when I talk about retaining source code; complicated image processing algorithms say for analyzing cell division or sports analysis, not simple apps like a color histogram which have no IP behind them, take a few hours to knock up and have general appeal.
« Last Edit: July 09, 2017, 05:26:44 PM by Simon »

Electra

  • Newbie
  • *
  • Posts: 24
    • View Profile
Re: GPL Source Code
« Reply #11 on: July 06, 2017, 08:29:19 AM »
I'd love to be proven wrong, I've seen people both fork off and refuse to give back changes as well as very open and giving people. Planning for the worst, expecting the best.

I guess it depends on how the camera's internals are done. I mostly fail to see, unless I'm radically wrong about how the LGPL works(And the people who I talk to about this are all out of the country or out of contact for the next few weeks!), how having the camera's main software and libs under LGPL stops you from writing a big program that connects to everything through those APIs, from using the MIT license or even keeping your code to yourself completely.
After all, I'm running some very closed software(VMWare and Chrome with it's DRM libs to name two) on a very open OS(Debian) with no licence issues.

The only two 'serious' open camera projects I know of is https://www.apertus.org/ and https://www.elphel.com/
I'm going to assume that Chronos will allow a much deeper and comprehensive level of access than the limited interface set that the iphone provides. :)

But I could be quite, quite wrong!
At this point, I believe anything further from me would come across as suborn and argumentative, plus I don't trust myself to know all the facts either, so for now I'm happy to wait and see what the results are and until then, I can't wait to play with my new toy! :)