GPL issues with ML post processing software

Started by Thomas Worth, May 15, 2014, 08:12:10 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Phil Rhodes

You may be satisfied, but unfortunately I'm bound to point out that the users might still be confused by the fact that they don't get the same results with various software. So, they're less likely to be satisfied.

You're absolutely right that inconsistency between software is a problem - and yes, it's a problem. It isn't something we should be deliberately creating. I think that standing on ceremony over the licencing terms of a relatively trivial piece of software is a bit silly, if it risks creating that problem.

P


chmee

i really dont understand your point.

if its so ugly simple coding yourself, do that - no gpl-violation. if it does the same - neutralizing vertical patterns - i dont understand argueing about differences in result. the guys here gave tools to make the convert process kind of unique, with all benefits (all the same code) and all drawbacks (could be better) - and on this point you could jump on the bandwagon, supporting the codebase. but no, discussing about other licensing and holding back this crazy unique code.

crazy world.

btw. adobe fi is not interested in supporting mlv/raw from ml. but there could be a big base of coders writing their own importer. oh gosh. no, license-discussion will destroy that hope..
[size=2]phreekz * blog * twitter[/size]

Phil Rhodes

The point - to reiterate - is that it's desirable for all the software to give the same results. Any reimplemented solution would be either one of two things:

- Bit exact with the existing solution, which would inevitably provoke accusations of duplicated code, as well as being a huge waste of time, or

- Not bit exact with the existing solution, which creates the problem I'm proposing should be avoided.

Plus, of course, you'd be more likely to get people working on it if they're actually allowed to use the results.

P

dmilligan

Quote from: Phil Rhodes on May 19, 2014, 05:59:39 PM
might still be confused by the fact that they don't get the same results with various software
You're just grasping at straws now. No user would ever be confused that one particular software gives different results of some other different software. Otherwise, they wouldn't be different!

Quote from: Phil Rhodes on May 19, 2014, 05:59:39 PM
It isn't something we should be deliberately creating.
Then there should be no closed source software at all. That's the only way you could fix this "problem" (which isn't really a problem). Thomas not releasing his code is "deliberately creating" differences in the output of his program and the output of the open source converters out there. In fact it's this very difference that he hopes to monetize. If there was no difference, why would anyone purchase his software? You have essentially just argued against the very point you were arguing for.

The only way one particular image processing software can compete against some other is if it produces different (better) output.

Quote from: Phil Rhodes on May 19, 2014, 06:26:55 PM
Any reimplemented solution would be either one of two things
https://yourlogicalfallacyis.com/black-or-white

Quote from: Phil Rhodes on May 19, 2014, 06:26:55 PM
Plus, of course, you'd be more likely to get people working on it if they're actually allowed to use the results.
No, you'd simply get more people ripping it off to make money off of it and not contributing back. Anyone is more than welcome to use, modify, and distribute this code (shoot, they can even sell it for money!). The only stipulation is that they contribute their changes back.

Audionut

Quote from: Phil Rhodes on May 19, 2014, 05:59:39 PM
I think that standing on ceremony over the licencing terms of a relatively trivial piece of software is a bit silly, if it risks creating that problem.

If code released under more relaxed licensing agreements, is greater then the existing code, then it makes sense that this new code, would be universally adopted.  You yourself, have hinted that the existing code is relatively trivial, and is a likely candidate for improvement.




ML is a development project aimed at providing extended features to Canon EOS cameras.  No more, no less.

The existing code has been developed, as a means of testing the functionality added to the camera.  Anyone with a hint of technical prowess, or common-sense, can understand that it is rather difficult to test features such as raw recording, without a means to view the content.

Second to that, an open source code base is created, where-by, other developers can view the existing code, for a basic understanding of the requirements.

Quotewe gave you a proof of concept that you found useful

Here is where the breakdown appears to be happening.  Some people seem to be of the opinion, that the original author is responsible for a polished end user product.  To be honest, if a1ex was only concerned with raw recording, and more specifically, providing that functionality, as a polished end user product, and/or, the means by which, other users can benefit from his hard work, by profiting.  Had every waking hour, unpaid, to develop polished end user products, then I could probably somewhat agree.

The fact that this particular piece of code is relatively trivial, is completely beside the point.

Quote from: Audionut on May 17, 2014, 02:08:47 AM
If I understand you correctly Thomas, if the vertical line code contained, say, 1,000,000 lines of code, you would agree with the wishes of the developer of that code?

Not to mention, what happens if someone wants to take another piece of trivial code, and use that within a paid application, while violating the GPL?  Should a1ex relent again, and release this code as LGPL also?  What about another piece of code?  And another?  And another?  Heck, why not simply release the entire code base as LGPL?  I mean, think of the users right.  They would benefit greatly from paid application developers being able to use this code, as they see fit.  And that's all that matters, right!


Quote from: a1ex on August 04, 2013, 07:38:08 PM
Well, there's no hard "end goal", it's more like a hobby project where we try to push the cameras beyond their limits, while also sharpening programming skills and sharing knowledge. Everybody here is working on their spare time (and I happen to have a bit more time because my daily job is not a 9 to 5 one). Also, everybody is free to work on whatever he feels like; there's no hard to-do list.

I come from a research background, so I like to experiment with cutting edge techniques. And of course, I like sharing these tools with other people that may find them useful and can improve these things.

For metadata (WB and a ton of other settings), just read the MLV thread, this is work in progress. Synced audio is pretty hard (but not impossible), and I don't have any use for it myself, for example. On the other hand, dual ISO is something I'd use in over 80% of my pics (since I like to shoot in very tricky lighting conditions). I don't shoot professionally, but I shoot some events for friends every now and then (not paid work, just hobby level, and mostly photos and sometimes timelapse).

Anyway. For me, the end goal is not to provide a finished product that everybody can consume. I'd rather see it as an open software platform where others can program their own enhancements and share them with the community (which actually happens to some degree). I prefer it to be a little on the nerdy side and attract knowledgeable people and enthusiasts; after all, ML is a tool for power users.

Phil Rhodes

I think further comment here is almost pointless, as there seems to be more interest in open-source flagwaving than there is in creating useful software - but I digress.

QuoteNo user would ever be confused that one particular software gives different results of some other different software.

Well, they should be! If you don't understand why it's highly desirable - well, essential, if it can possibly be done - for postproduction software to be consistent and to produce identical output from the same input, I can't really help you. Suffice to say - it is desirable, and the modern tendency toward variability in output is a disaster. I can almost see now, from this conversation, why Red won't open their file format! They'd end up in this exact, disastrous situation!

QuoteThomas not releasing his code is "deliberately creating" differences in the output of his program and the output of the open source converters out there.

Well - no - think about it - he's being forced to respin his own solution when one already exists. I've already suggested that a public domain solution should exist, but you folks would have to agree to use it. So... what? What on earth are you on about? This is political rhetoric, not technical discussion, and I've no interest in it.

Quotehttps://yourlogicalfallacyis.com/black-or-white

But any solution absolutely would be either bit exact, or not. Good grief, it really is beneath me to get involved in this sort of college-level debating society bullshit.

QuoteNo, you'd simply get more people ripping it off to make money off of it and not contributing back.

So what? The ffmpeg guys already have this happening on a grand scale, and it's hardly destroyed the project. And you don't have anyone else proposing to work on this code, anyway, so you're losing more than you'd gain.

P

dmilligan

Quote from: Phil Rhodes on May 19, 2014, 06:56:57 PM
Good grief, it really is beneath me to get involved in this sort of college-level debating society bullshit.
Then feel free to leave

Audionut

Quote from: Phil Rhodes on May 19, 2014, 06:56:57 PM
And you don't have anyone else proposing to work on this code, anyway, so you're losing more than you'd gain.

By whose standards, you own, I guess!

chmee

uaaah. sorry. in right this moment someone's losing one more time 30 bucks, because the hopes in the mac-area are that high. but wait, he could do better, but he won't. every time its the balance of giving and taking. by now a1ex gave way too much, and took nearly nothing.

its not up to the ml-community to change the way of thinking. and its not flagwaving - its something you can cope with or not.

regards chmee
[size=2]phreekz * blog * twitter[/size]

Thomas Worth

Quote from: dmilligan on May 19, 2014, 06:47:26 PM
You're just grasping at straws now. No user would ever be confused that one particular software gives different results of some other different software. Otherwise, they wouldn't be different!
Sorry dmilligan, but you're way off base here. There is a reason why the ITU and SMPTE exist. There's a reason why everyone uses the same Rec. 709 coefficients in reconstructing YCbCr video to display on computer monitors. There's a reason Charles Poynton wrote a book about it. It's because users need consistent output, and are upset when they don't get it. Any self-respecting software developer would do their best to generate consistent results in a way that users would expect.

Look guys, it is clear you are uninterested in whether or not Magic Lantern is adopted in professional setting. Fine. I'm accepting the fact that you're not going to help. Chmee brought up the point that Adobe aren't interested in supporting ML. Well gee-whiz, I wonder why?!?!?!

Keep in mind I work with professional post-production people in the center of the universe for film and TV. I am creating tools that appeal to professionals. Professionals get paid for their work. That's why they don't mind paying for RAWMagic. They have needs that were not being met by the GPL tools that are available, so I addressed this. Crucify me if you want, but your software is now being adopted by more and more professionals because the reputation of my company is behind it.

You're welcome.

Audionut

I'm pretty sure the developers are more interest in the development aspect, and development collaboration.  I think I have read that somewhere, once or twice.

But thanks anyway!

Marsu42

Quote from: Thomas Worth on May 19, 2014, 07:24:22 PMChmee brought up the point that Adobe aren't interested in supporting ML. Well gee-whiz, I wonder why?!?!?!

Because the near-monopoly market leader won't adopt software they don't control into their core workflow.

Thomas Worth

Quote from: Audionut on May 19, 2014, 07:27:25 PM
I'm pretty sure the developers are more interest in the development aspect, and development collaboration.  I think I have read that somewhere, once or twice.
You guys have really have done some amazing work. I may have come off a little harsh in my last post, so I just wanted to clarify that. I mean that sincerely. I understand your position, and I'm fine with it. I'll make it work.

chmee

DFM, seems a guy from adobe inner circle - told some things about it (it doesnt fit into your argumentation):

"adobe has other supporters than magiclantern" ;)
http://www.magiclantern.fm/forum/index.php?topic=11174.msg110968#msg110968


reagrds chmee


[size=2]phreekz * blog * twitter[/size]

Thomas Worth

Quote from: chmee on May 19, 2014, 07:50:27 PM
DFM, seems a guy from adobe inner circle - told some things about it (it doesnt fit into your argumentation):
"adobe has other supporters than magiclantern" ;)
http://www.magiclantern.fm/forum/index.php?topic=11174.msg110968#msg110968
They are talking about the Canon C500. "CanonRAW" has nothing to do with Magic Lantern. Adobe probably has plans to expand CinemaDNG support. This will help you, of course, and others who write DNG files that currently don't work properly with Premiere.

Adobe will never support Magic Lantern because there's no control over when and how the file format and post-processing will change. This is all up to Alex, and basically he could just hold Adobe hostage and request they GPL the entire code base for Premiere because he writes a combination of file format and post-processing code that must be used together. Adobe makes deals with RED and Canon under the strict agreement that they will coordinate changes to the file format so users won't be frustrated that the plugins are outdated. Adobe haven't had to worry about this with CinemaDNG because they control it.

This is why I am hesitant to write my own vertical stripes implementation, no matter how trivial. The way the files are written can change at any time based on Alex's mood, which may invalidate any stripes correction based on previous methods. Then I have to figure it all out again, under threat of violating the GPL. I'm not interested in playing the cat-and-mouse game for a measly $30 per copy. And you can be sure Adobe aren't, either.

Audionut

Quote from: Thomas Worth on May 19, 2014, 07:41:45 PM
I may have come off a little harsh in my last post, so I just wanted to clarify that.

We are all passionate.  On this occasion, just not for the same end goal, I guess.   :)

g3gg0

i wonder what you all are discussing about?
if only half of the lines that were written here would been contributed to ML source code, today would be a glorious day.

one last word which is a "closer" for this thread for me:
this new market, that allows you to sell an image converter for 30 bucks, was brought to you by ML team.
there was even no need to reverse engineer anything - as usual for converters - everything was explained down to single bits.
for sure not in the quality you get for commercially available specifications, but good enough.

so as *our* main concern is not making RAW/MLV the worldwide standard for raw video that all tools support, but keeping
Magic Lantern a well known and a healthy project with active developers, we HAVE to say:
"if you use it in your tools, please contribute back"
and we do that by licensing our code under GPL which is exactly what it was designed for.
that our format comes with a ready-to-go GPL based code is not common!
so this is not a show stopper or even a hurdle for any commercial user.

i personally prefer having 1 contributor more to ML over 5 companies that implement the format, because
this contributor improves experience for the large scale main end user base instead only for a few paying customers.

let me refine one of my previous posts:
Quote from: g3gg0 on May 17, 2014, 12:02:31 PM
a) use GPL code and relicense the tool as GPL so ML community has benefit
b) implement it as public domain and improve some things, share to ML
c) implement it on your own, allow ML team to throw a look at it to make them confident
d) implement it on your own

i absolutely understand that a) may be out of scope.
you want to earn money because spent time = money. its totally normal, i want my work also be paid.
(well, not the ML work of course)

b) is a highly welcome solution that helps ML end users if the code is better...
c) is a honorable decision and already done with other tools here
d) well, then we have no other choice than hope you are honorable

i am a bit disappointed that there is so much discussion about our position.
so with all the other disturbing shitstorm going on here, please understand that this is our position.
Help us with datasheets - Help us with register dumps
magic lantern: 1Magic9991E1eWbGvrsx186GovYCXFbppY, server expenses: [email protected]
ONLY donate for things we have done, not for things you expect!

Audionut

Quote from: Thomas Worth on May 19, 2014, 08:19:15 PM
This is why I am hesitant to write my own vertical stripes implementation, no matter how trivial. The way the files are written can change at any time based on Alex's mood, which may invalidate any stripes correction based on previous methods. Then I have to figure it all out again, under threat of violating the GPL. I'm not interested in playing the cat-and-mouse game for a measly $30 per copy. And you can be sure Adobe aren't, either.

What about option a:

Hi g3gg0, I'm interested in taking MLV support to the next level.  Perhaps we can work together, so that I can stay ahead of your development progress, to better support my customers.  Hopefully, together we can ensure that the standards don't change significantly, and perhaps I can suggest better development options, so these standards do no change.  Lets work together to take MLV forward, while supporting our own end goals.

swinxx

Quote from: a1ex
8K?! You would need a 42 megapixel sensor for that ;)

I'm actually thinking to move away from the video side of ML, and let those actually interested in video do the hard work instead. I'd rather focus on the still photo stuff, which is what I actually use.

I might change my mind if the ML community would do these things:

- encourage newcomers to post in the right forum (I've locked the 1.2.3 thread because it was flooded with offtopic questions about RAW/MLV)
- contribute to the user guide and help updating the site (everything besides forum is static HTML/JS, so just edit it locally and propose your changes here)
- help solving this issue instead of just hoping it will be forgotten (it's not funny to do the hard work for free, and then to have third parties getting rich just by selling a fancy GUI, without contributing anything back)

Thanks for your support!

Alex, your inventions are really invaluable to us (the crowd), but please keep in mind that most people like me have no coding skills. I have spend a lot of time in the forum (i hoped that i would understand it more over the time) but the opposite happened.
when it comes to technical coding stuff its simply too complicated. I would of course like to help and i am sure that there are many ml consumers that want to help but come on.. Its better not.. ;)
So perhaps i can translate text (manual) into german.. ;)
Greets and i hope that video is one of those thins you will not stop developing cause this is the biggest improvement and so worth it..
Greets

jimmyD30

I can tell you that I try to give back to the ML community by helping in the forum and taking a little bit of the burden off the developers in that way.

I can appreciate all the VERY HARD WORK done by ML contributors and plan to help in more ways in the future, just kind of spread thin right now.

So, for now I can help with encouraging others to stay on-topic (that is when I'm not off-topic myself :-[)


a1ex

Thanks. What is really demotivating me is when some third party - with skills - chooses to take our hard work, ignores license issues, slaps a fancy GUI and starts selling it here, without contributing back. And gets the community support.

When this happens, I think it's fair to ask that third party to continue the development. Let them get their profits from their own work, not from mine.

jimmyD30

Quote from GNU GPL: http://www.gnu.org/copyleft/gpl.html

"For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights."

Seems like a perfect solution, charge for your software if you like, but apply GPL to your own code too if you used others' code with a GPL.

Walter Schulz

You're quoting and linking GPL v3. AFAIK v3 doesn't apply to ML's GPL but v2.
Your quote is identical in both but v3 and v2 must not be mixed up.
http://www.gnu.org/licenses/gpl-2.0.html

jimmyD30

Thank you!

As an example of this model you can look to Red Hat's Linux distribution. They charge a fee for open source software, this is allowed as the 'Free' refers to "freedom to see and modify the source code ("libre")" not "free of charge ("gratis")" although the software can also be free of charge.

I believe Red Hat justifies their fees by offering support.

swinxx

Alex - you are 100% right - gaining profit from your work is a bad thing.
On the other hand: they are smart and port your commandline tools to consumer level.. And thats a very important step
Perhaps you should change your strategy.. Making a gui could not be so hard for such a smart guy like you. Then nobody would have to buy 2nd hand tools.
All in all - i love mlrawviewer

Greets sw