[ANNOUNCE] Allwinner releasing CedarX open source

2,186 views
Skip to first unread message

ke...@allwinnertech.com

unread,
May 18, 2015, 8:47:45 PM5/18/15
to linux...@googlegroups.com
Hi All,

We're proud to announce a new code release today for CedarX. Before delving
into the details, I'd like to share some context:

1. As a growing company, we are doing our best to understand the needs of the
open source software community. This is a learning process. We're working
with different people across the Linux development community to better
understand best practices.

2. Open source software development is a collaborative process. It works
because people genuinely want to help others improve and be successful. Some
people are new and others help them learn the ropes over time. We hope that
this same positive feedback process can be applied to GPL.

With that context, here's an update on our CedarX code release (we welcome
constructive feedback!)

1. New code architecture. Driver has been split into several plugins, one
plugin per video format.
2. GPL-complaint. We have scanned and analyzed the code to ensure that there
is no GPL code used or called.
3. Partial CedarX video decoder source code release. MPEG2, MPEG4, MJPEG, and
H264 drivers source code available.

We hope this is helpful to everyone. If not, please let us know how we can
improve. Thanks!


Best Regards,
kevin.z.m


NOTICE: This e-mail and any included attachments are intended only for the sole use of named and intended recipient (s) only. If you are the named and intended recipient, please note that the information contained in this email and its embedded files are confidential and privileged. If you are neither the intended nor named recipient, you are hereby notified that any unauthorized review, use, disclosure, dissemination, distribution, or copying of this communication, or any of its contents, is strictly prohibited. Please reply to the sender and destroy the original message and all your records of this message (whether electronic or otherwise). Furthermore, you should not disclose to any other person, use, copy or disseminate the contents of this e-mail and/or the documents accompanying it.

Andreas Baierl

unread,
May 19, 2015, 3:07:34 AM5/19/15
to kevin....@gmail.com, linux...@googlegroups.com
Hi Kevin,


Am 19.05.2015 um 02:44 schrieb ke...@allwinnertech.com:
Hi All,

We're proud to announce a new code release today for CedarX. Before delving
into the details, I'd like to share some context:

i'm glad to see, that AW tries to make a move in the right direction. Although steps are not finished.

1. As a growing company, we are doing our best to understand the needs of the
open source software community. This is a learning process. We're working
with different people across the Linux development community to better
understand best practices.

2. Open source software development is a collaborative process. It works
because people genuinely want to help others improve and be successful. Some
people are new and others help them learn the ropes over time. We hope that
this same positive feedback process can be applied to GPL.

With that context, here's an update on our CedarX code release (we welcome
constructive feedback!)

1. New code architecture. Driver has been split into several plugins, one
plugin per video format.
2. GPL-complaint. We have scanned and analyzed the code to ensure that there
is no GPL code used or called.
3. Partial CedarX video decoder source code release. MPEG2, MPEG4, MJPEG, and
H264 drivers source code available.

I wonder, if you guys have ever recognized http://linux-sunxi.org/VE_Register_guide or http://linux-sunxi.org/Cedrus from our community wiki.
Most of the registers, that are needed to make the VE (MPEG1/2/4, H264) work without the recent source code drop or the old binaries, are known already - figured out by reverse engineering.
So, i wonder, why there are still missing register descriptions. For example https://github.com/allwinner-zh/media-codec/blob/master/sunxi-cedarx/SOURCE/vdecoder/include/veregister.h#L193 , which are known to deal with the maf deinterlacer.
We hope this is helpful to everyone. If not, please let us know how we can improve. Thanks!

Although it's fine and essential to try to resolve the GPL issues by publishing the source code, another step to help the open source community will be to complete the register documentation, we already know in most parts anyway. In addition, there are missing some schematics about what versions of the VE is used within which SoC and what registers are available or have been altered. The user manuals are in genreal a good resource when someone wants to figure out sth about the registers, but the Video Engine is sadly completely missing there...

Please also read the other thread https://www.mail-archive.com/linux...@googlegroups.com/msg11469.html and think about the statements.

Best Regards,
kevin.z.m

Regards
Andreas

NOTICE: This e-mail and any included attachments are intended only for the sole use of named and intended recipient (s) only. If you are the named and intended recipient, please note that the information contained in this email and its embedded files are confidential and privileged. If you are neither the intended nor named recipient, you are hereby notified that any unauthorized review, use, disclosure, dissemination, distribution, or copying of this communication, or any of its contents, is strictly prohibited. Please reply to the sender and destroy the original message and all your records of this message (whether electronic or otherwise). Furthermore, you should not disclose to any other person, use, copy or disseminate the contents of this e-mail and/or the documents accompanying it. --
You received this message because you are subscribed to the Google Groups "linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Luc Verhaegen

unread,
May 19, 2015, 4:07:42 AM5/19/15
to kevin....@gmail.com, linux...@googlegroups.com
On Tue, May 19, 2015 at 08:44:13AM +0800, ke...@allwinnertech.com wrote:
> Hi All,
>
> We're proud to announce a new code release today for CedarX. Before delving
> into the details, I'd like to share some context:
>
> 1. As a growing company, we are doing our best to understand the needs of the
> open source software community. This is a learning process. We're working
> with different people across the Linux development community to better
> understand best practices.
>
> 2. Open source software development is a collaborative process. It works
> because people genuinely want to help others improve and be successful. Some
> people are new and others help them learn the ropes over time. We hope that
> this same positive feedback process can be applied to GPL.
>
> With that context, here's an update on our CedarX code release (we welcome
> constructive feedback!)
>
> 1. New code architecture. Driver has been split into several plugins, one
> plugin per video format.
> 2. GPL-complaint. We have scanned and analyzed the code to ensure that there
> is no GPL code used or called.
> 3. Partial CedarX video decoder source code release. MPEG2, MPEG4, MJPEG, and
> H264 drivers source code available.
>
> We hope this is helpful to everyone. If not, please let us know how we can
> improve. Thanks!

This is a good first step, not only to try to meet some legal
obligations, but also to support Allwinners customers and the sunxi
community.

But...

The choice of exactly those codecs for a first(?) release, the fact that
you underline the use of a code scanner/analyzer, and then the fact that
Allwinner chose to turn this into a modular design with codecs as
modules... All that seems to hint at Allwinner intending to keep
upcoming modules as binaries. If this happens, not only will that be
another massive marketing setback for Allwinner, but we will push the
legal limits hard and force a full release of the source code of all
binaries that allwinner has released so far. As said countless times
before, the LGPL applies to the whole of the binaries Allwinner released
before, not just those codecs where LGPLed code was used.

Luc Verhaegen.

Manuel Braga

unread,
May 19, 2015, 9:35:00 AM5/19/15
to linux...@googlegroups.com, kevin....@gmail.com
On Tue, 19 May 2015 08:44:13 +0800 "ke...@allwinnertech.com"
<ke...@allwinnertech.com> wrote:
> 3. Partial CedarX video decoder source code release. MPEG2, MPEG4,
> MJPEG, and H264 drivers source code available.

And for the others codecs, what are allwinner plans?
Should we expect for them to also be released, and which and in what
time frame should be this expected to happen?

This would be a very useful information to have, because this would help
us decide if we also have to reverse engineering h265, or only wait for
your release.
As h265 is the next much wished codec to have, is certain it will be
reversed engineered if allwinner takes too long.

Don't forget that, VP8 decoding, h264 encoding, jpeg encoding, was
also successful reversed engineered.
This is only to tell that, it is hardware documentation that we are
interested in, not the software in the form of your cedarx library.




>
> We hope this is helpful to everyone. If not, please let us know how
> we can improve. Thanks!

In the socs datasheets, in the video engine features description, it has
as feature "alpha bending". Can we have more information what is mean by
this.

I tried my guess by poking random isp subengine registers but only we
could find is at the wiki page.
http://linux-sunxi.org/VE_Register_guide#ISP_Engine_Registers

If this is what it appears to be, then this would be very useful for
subtitles/osd, because if the bending can occur in the video engine,
then this is optimal in the performance point of view.

--
Manuel Braga

Sergey Lapin

unread,
May 19, 2015, 9:57:47 AM5/19/15
to kevin....@gmail.com, linux...@googlegroups.com
1. New code architecture. Driver has been split into several plugins, one
plugin per video format.
2. GPL-complaint. We have scanned and analyzed the code to ensure that there
is no GPL code used or called.
3. Partial CedarX video decoder source code release. MPEG2, MPEG4, MJPEG, and
H264 drivers source code available.

Thanks a lot, guys, for your hard work! Ayeee, I'm dancing in circles!

Looking forward for next steps.

We hope this is helpful to everyone. If not, please let us know how we can
improve. Thanks!


Best Regards,
kevin.z.m


NOTICE: This e-mail and any included attachments are intended only for the sole use of named and intended recipient (s) only. If you are the named and intended recipient, please note that the information contained in this email and its embedded files are confidential and privileged. If you are neither the intended nor named recipient, you are hereby notified that any unauthorized review, use, disclosure, dissemination, distribution, or copying of this communication, or any of its contents, is strictly prohibited. Please reply to the sender and destroy the original message and all your records of this message (whether electronic or otherwise). Furthermore, you should not disclose to any other person, use, copy or disseminate the contents of this e-mail and/or the documents accompanying it.

--

Manuel Braga

unread,
May 19, 2015, 10:38:03 AM5/19/15
to linux...@googlegroups.com, kevin....@gmail.com
On Tue, 19 May 2015 08:44:13 +0800 "ke...@allwinnertech.com"
<ke...@allwinnertech.com> wrote:
> 2. Open source software development is a collaborative process. It
> works because people genuinely want to help others improve and be
> successful. Some people are new and others help them learn the ropes
> over time. We hope that this same positive feedback process can be
> applied to GPL.
>

I am sorry, but i find curious the reference here to the GPL license.

In order of "Some people are new and others help them learn the ropes
over time.", i will try to explain.


This, have nothing to do with any particular license.
The GPL license is only the most known and used copyleft license, and
by being so, is the license that is more talked about. And by this, it
happened to be the license(LGPL) involved in ours "license issues".
It would happened with any other license, the problems are the existence
of the "issues" by itself.

The key point here, is that the existence of the "issues" is a
disrespect towards the developers that wrote those same software source
code, and in some cases did without paid and in their free time.

And is not with "license issues" that allwinner or any other will
attract the contribution of open source developers.

--
Manuel Braga

Andrea Venturi

unread,
May 21, 2015, 6:02:47 AM5/21/15
to linux...@googlegroups.com
Hi Kevin,

as a casual "tinkerer" of Allwinner (AW) SOCs, let me tell you i appreciate A LOT AW attitude and commitment for becoming more and more a "proper citizen" in the free software and open source community. This release is a step in a continuous process BUT is surely a step in the right direction. THANX!

i really think AW, since the last few years, has been doing a breakthrough revolution in the so called "internet of things" (IoT) space.. not really because there are new features implemented in its SOCs but because AW is packing SO  MUCH stuff in a cost effective chip that's enabling the next level of pervasive computing.

you are permitting a world of programmable toys that can be effectively used and enable new products; i started playing with A10 some years ago with Tom Cubie's Cubieboard, but i'll cite also Olimex open source boards and Luke Leighton's EOMA86 effort as very interesting developments born thanx to your business proposition; now we are seeing the new H3 sold for 25$ as dev card, Orange PI mini 2, and the next to come Kickstarter campaign for a $9 board named CHIP.. it a staggering progression..

so the SOC is surely beefy, but for it to become cornerstone of new projects for advised people like the ones embodied in the linux-sunxi community, it has to be dependable i.e. you want it to be available and controllable for ever as software development progresses (and as we can see in the open source model, the  snowball becomes avalanche pretty fast).

that's why full disclosure and "datasheets" are more preferred than "code drops" as the latter is just a single representation (in the writer mindset and in the writer context) of a use case,  the former gives everyone the "freedom" to do its own evaluation and choice and development/integration.

coming to Cedarx, i for first believe everything now is going in the right direction toward full disclosure, and that's a GOOD THING. i suppose this is happening because the HW core is more or less exclusive of Allwinner chips.

a really different issue is around the 2D/3D MALI 400MP core that's the last unknown big "black box" of the actual AW bulk lineup (i'll keep the PowerVR stuff out of my way with a 10 feet pole.. :-)

i understand that, as it's a graphic core used in many competitors chips too, it's difficult for any chip house to step in and make a liberal move, surely it's a CORE out of chipmaker control as it's ARM own, then there's also the ARM "attitude" toward open community (well explained by libv mails) that's not helping too, here.

it's something that surely has to be dealt in the future someway; anyway i would really appreciate a public statement from AW official on the matter (AW as a pretty huge ARM customer could make the difference here and get back some good PR recognition on this issue..)

at the end of the day, I understand AW (as all chipmakers) is living a hard time, having to be  competitive EVERY day in this chip  business (where the bulk of sales and revenues is on products like low cost Android tablets where end users are not interested into this kind of "IP issues" and development models..) so it struggles to find the right balance in the mix between hiding the "secret sauce of the kitchen" and sharing info with community who boosts development.

let me tell i believe anyway AW would deserve at least the same public recognition that's going toward Raspi/Broadcom because they are key enablers of the open "makers" ecosystem and this could be a powerful business game changer in the longer term IMHO.

so hat tip to Allwinner and keep up this good work with the growingly open attitude you are showing toward us, the people, your final customers in the end.. 


Il giorno martedì 19 maggio 2015 02:47:45 UTC+2, kevin.z.m.zh ha scritto:
Hi All,

We're proud to announce a new code release today for CedarX. Before delving
into the details, I'd like to share some context:

1. As a growing company, we are doing our best to understand the needs of the
open source software community. This is a learning process. We're working
with different people across the Linux development community to better
understand best practices.

2. Open source software development is a collaborative process. It works
because people genuinely want to help others improve and be successful. Some
people are new and others help them learn the ropes over time. We hope that
this same positive feedback process can be applied to GPL.
...

Luc Verhaegen

unread,
May 21, 2015, 8:50:29 AM5/21/15
to Andrea Venturi, linux...@googlegroups.com
Supposed open source shops like Linaro, Jolla and Mozilla are not going
there. Everyone is afraid of the big bad GPU providing troll in the
corner. So i have little hope that a small fry like Allwinner, who until
recently was happy to hide behind the chinese wall with respect to
copyright violations, would invest any significant business and or
political weight into pushing that troll into the right direction.

> at the end of the day, I understand AW (as all chipmakers) is living a hard
> time, having to be competitive EVERY day in this chip business (where the
> bulk of sales and revenues is on products like low cost Android tablets
> where end users are not interested into this kind of "IP issues" and
> development models..) so it struggles to find the right balance in the mix
> between hiding the "secret sauce of the kitchen" and sharing info with
> community who boosts development.
>
> let me tell i believe anyway AW would deserve at least the same public
> recognition that's going toward Raspi/Broadcom because they are key
> enablers of the open "makers" ecosystem and this could be a powerful
> business game changer in the longer term IMHO.
>
> so hat tip to Allwinner and keep up this good work with the growingly open
> attitude you are showing toward us, the people, your final customers in the
> end..

Yes, and no. Here it is a very obvious legal matter. Allwinner has no
choice but to do this after (L)GPLed code has been discovered, or for
kernel or uboot code.

It would have been nice if we wouldn't have had to revert to the route
of massive marketing damage to convince Allwinner to meet its legal
obligations. Let's just hope that this course of action will now no
longer be needed, and that Allwinner simply delivers upon its
obligations, and perhaps exceeds them, as they only stand to gain from
that.

Luc Verhaegen.

bga...@gmail.com

unread,
May 22, 2015, 4:15:56 AM5/22/15
to linux...@googlegroups.com
On Monday, May 18, 2015 at 7:47:45 PM UTC-5, kevin.z.m.zh wrote:

> 1. As a growing company, we are doing our best to understand the needs of the
> open source software community. This is a learning process. We're working
> with different people across the Linux development community to better
> understand best practices.
>
> 2. Open source software development is a collaborative process. It works
> because people genuinely want to help others improve and be successful. Some
> people are new and others help them learn the ropes over time. We hope that
> this same positive feedback process can be applied to GPL.

To help collaborate with growing companies so they can understand the best practices of the GPL covered code, a complete copy of the license is provided with the code. In the case of the GPLv2, this is a simple document with less than 3,000 words that thousands of growing companies have learned the ropes to honor simply by reading the copy included with the code. Usually when a company reaches 500+ employees, it has grown enough that at least one employee is able to understand the license terms.

If a company chooses instead to state on March 19 a bold faced lie like "the library is just the hardware module implemented in user space, and the code is all writed by Allwinner" then that brings all collaboration to a halt. Taking credit for someone else's work is unethical and usually illegal regardless of the license. This is a concept that most companies that have grown to 500+ employees should also already understand. I have not yet run into any other company that needed help learning the ropes on plagiarism.

The other item you may want to consider when learning the ropes on the GPL is that inclusion of GPL covered code makes the *complete* corresponding work a GPL covered work. So...

* if a binary is distributed with both GPL covered code and MPEG1 support, then the MPEG1 code is part of the complete corresponding source code under the GPL

* if a binary is distributed with both GPL covered code and VP6 support, then the VP6 code is part of the complete corresponding source code under the GPL

* if a binary is distributed with both GPL covered code and XDIV/DIVX support, then the XDIV/DIVX code is part of the complete corresponding source code under the GPL

* if a binary is distributed with both GPL covered code and Soreson support, then the Soreson code is part of the complete corresponding source code under the GPL

* if a binary is distributed with both GPL covered code and VP8 support, then the VP8 code is part of the complete corresponding source code under the GPL

* if a binary is distributed with both GPL covered code and VC1/WMV9 support, then the VC1/WMV9 code is part of the complete corresponding source code under the GPL

> With that context, here's an update on our CedarX code release (we welcome
> constructive feedback!)
>
> 1. New code architecture. Driver has been split into several plugins, one
> plugin per video format.
>
> 2. GPL-complaint. We have scanned and analyzed the code to ensure that there
> is no GPL code used or called.

Back on March 19th, we already heard from Allwinner about when it considers there to be no GPL code used and what is considered to be Allwinner's own code. It turned out that Allwinner is still a growing company (only 500+ employees) and incompetent such that it can't be trusted to understand GPL compliance because it is still learning the ropes. If Allwinner has the skills to scan and analyze code in regards to GPL compliance, it should have used them before putting in writing incorrect statements regarding code ownership. In that context, I recommend to just keep releasing in source code form and we will collaborate on if it is really GPL compliant or not.

> 3. Partial CedarX video decoder source code release. MPEG2, MPEG4, MJPEG, and
> H264 drivers source code available.

It looks like Allwinner is cherry picking instead of providing the complete corresponding source code to the previously already distributed GPL derived work.

> We hope this is helpful to everyone. If not, please let us know how we can
> improve. Thanks!

It will be easier to comment on how helpful this is once the complete corresponding code to the March/April GPL covered binary is provided. Until then, it seems like this is still just a work in progress.

Andreas Baierl

unread,
Jun 1, 2015, 8:02:06 AM6/1/15
to linux...@googlegroups.com, kevin....@gmail.com
Hi Kevin,

any progress or comments from Allwinner on this discussion?

Regards
Andreas

 
Am 19.05.2015 um 02:44 schrieb ke...@allwinnertech.com:
Hi All,

We're proud to announce a new code release today for CedarX. Before delving
into the details, I'd like to share some context:


....

We hope this is helpful to everyone. If not, please let us know how we can
improve. Thanks!


Best Regards,
kevin.z.m


NOTICE: This e-mail and any included attachments are intended only for the sole use of named and intended recipient (s) only. If you are the named and intended recipient, please note that the information contained in this email and its embedded files are confidential and privileged. If you are neither the intended nor named recipient, you are hereby notified that any unauthorized review, use, disclosure, dissemination, distribution, or copying of this communication, or any of its contents, is strictly prohibited. Please reply to the sender and destroy the original message and all your records of this message (whether electronic or otherwise). Furthermore, you should not disclose to any other person, use, copy or disseminate the contents of this e-mail and/or the documents accompanying it. --

Manuel Braga

unread,
Jun 15, 2015, 2:40:47 PM6/15/15
to linux...@googlegroups.com, li...@imkreisrum.de
On Mon, 01 Jun 2015 14:01:52 +0200 Andreas Baierl <li...@imkreisrum.de>
wrote:
> Hi Kevin,
>
> any progress or comments from Allwinner on this discussion?

We are the annoying people that only makes the questions that Allwinner
doesn't want to answer.

So this is understandable.
But we would accept any answer. Really, any answer.


--
Manuel Braga

rainb...@gmail.com

unread,
Jul 13, 2015, 4:10:17 AM7/13/15
to linux...@googlegroups.com
Hi, all:
   does the cedarx runs ok?  i compile the lib as follow:
1. ./bootstrap
2. ./configure --prefix=/home/test/ --host=arm-linux-gnueabihf (im not sure the parameter is ok or not)
3. make && make install

then so file generated, then run demo in sunxi-cedarx/demo/vencoder on A20 board, then tell me segment fault...
it's strange that there is no code to call VEncoderRegister function in Venc_device.c.

Manuel Braga

unread,
Jul 15, 2015, 2:52:08 PM7/15/15
to linux...@googlegroups.com, rainb...@gmail.com
On Sun, 12 Jul 2015 17:41:04 -0700 (PDT) rainb...@gmail.com wrote:
> Hi, all:
> does the cedarx runs ok? i compile the lib as follow:

Hi,
Up to now, i am not aware of any reports of people trying to work with
this new sunxi-cedarx library. (strangely, after so much asking/begging
directly to allwinner to "open-source" the cedarx library)

You are the first (to my knowledge), that is trying to use this
library, meaning that the only answer to the question i can give is,
i don't know if this new cedarx library runs ok.
(i still didn't arrange time to look more in detail and actually try it)


If you happen to get some success, please report back.
Or even better, help the next person(s) avoid the trouble that you are
having by adding your finding to the linux-sunxi wiki?
Maybe in a new page like in http://linux-sunxi.org/sunxi-cedarx



> 1. ./bootstrap
> 2. ./configure --prefix=/home/test/ --host=arm-linux-gnueabihf (im
> not sure the parameter is ok or not)
> 3. make && make install

Did you also tried by compiling natively?
If not, try first this way, before going for cross-compiling.


>
> then so file generated, then run demo in sunxi-cedarx/demo/vencoder
> on A20 board, then tell me segment fault...

Then run under a debugger and see where the segment fault is happening,
if is in open-source part, then it can be fixed because to segment
fault is itself a bug, and should have checks and instead print a error
message, which helps to see what is wrong or missing.

If is in the close-source-plugin, then there isn't much that can be
done, other than maybe, more asking/begging allwinner to release a
new close-source-plugin-binary which with some luck could fix the issue.


> it's strange that there is no code to call VEncoderRegister function
> in Venc_device.c.

Not strange at all, this new open-source cedarx library is dependent in
the use of close-source-plugin-binaries to offer the encoding feature
that you wish to use.
> > ------------------------------
> > Best Regards,
> > kevin.z.m
> >
> >
> > NOTICE: This e-mail and any included attachments are intended only
> > for the sole use of named and intended recipient (s) only. If you
> > are the named and intended recipient, please note that the
> > information contained in this email and its embedded files are
> > confidential and privileged. If you are neither the intended nor
> > named recipient, you are hereby notified that any unauthorized
> > review, use, disclosure, dissemination, distribution, or copying of
> > this communication, or any of its contents, is strictly prohibited.
> > Please reply to the sender and destroy the original message and all
> > your records of this message (whether electronic or otherwise).
> > Furthermore, you should not disclose to any other person, use, copy
> > or disseminate the contents of this e-mail and/or the documents
> > accompanying it.
> >
>

--
Manuel Braga
Reply all
Reply to author
Forward
0 new messages