Bug 1718540

Summary: Review Request: davs2 - An open-source decoder of AVS2-P2/IEEE1857.4 video coding standard
Product: [Fedora] Fedora Reporter: Simone Caronni <negativo17>
Component: Package ReviewAssignee: Nobody's working on this, feel free to take it <nobody>
Status: CLOSED CANTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: extras-qa, package-review, quantum.analyst, tcallawa, zebob.m
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-09-14 07:24:32 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 182235    

Description Simone Caronni 2019-06-08 12:16:18 UTC
Spec URL: https://slaanesh.fedorapeople.org/davs2.spec
SRPM URL: https://slaanesh.fedorapeople.org/davs2-1.6-1.fc30.src.rpm
Description: davs2 is an open-source decoder of AVS2-P2/IEEE1857.4 video coding standard.
Fedora Account System Username: slaanesh

Comment 1 Simone Caronni 2019-06-08 12:17:01 UTC
$ rpmlint *rpm
davs2.x86_64: W: no-documentation
davs2.x86_64: W: no-manual-page-for-binary davs2
davs2-libs.x86_64: W: no-documentation
davs2-libs.x86_64: E: incorrect-fsf-address /usr/share/licenses/davs2-libs/COPYING

Comment 2 Simone Caronni 2019-06-09 05:54:13 UTC
%ldconfig_scriptlets are in the spec file as I plan to also build for EPEL 7.

Comment 3 Simone Caronni 2019-06-09 07:27:17 UTC
(In reply to Simone Caronni from comment #1)
> $ rpmlint *rpm
> davs2.x86_64: W: no-documentation
> davs2.x86_64: W: no-manual-page-for-binary davs2
> davs2-libs.x86_64: W: no-documentation
> davs2-libs.x86_64: E: incorrect-fsf-address
> /usr/share/licenses/davs2-libs/COPYING

Just noticed that binaries with execstack forcibly disabled do not work. execstack is explicitly enabled on all architectures at configure time (see build/linux/configure):

$ rpmlint *rpm
davs2.x86_64: W: executable-stack /usr/bin/davs2
davs2.x86_64: W: no-documentation
davs2.x86_64: W: no-manual-page-for-binary davs2
davs2-libs.x86_64: W: executable-stack /usr/lib64/libdavs2.so.16
davs2-libs.x86_64: W: no-documentation
davs2-libs.x86_64: E: incorrect-fsf-address /usr/share/licenses/davs2-libs/COPYING
7 packages and 0 specfiles checked; 1 errors, 5 warnings.

Comment 4 Robert-André Mauchin 🐧 2019-06-09 14:27:42 UTC
According to https://en.m.wikipedia.org/wiki/Audio_Video_Standard

this standard is patented:

AVS Patent Pool Management Committee

In the aspect of intellectual property management, AVS established a "Patent Pool" management mechanism, with the management and authorization of the patent pool in charge of “AVS Patent Pool Management Committee”, an independent corporate association founded in September 20, 2004. The committee is also the first "Patent Pool" management institution in China. Relying on the independent corporate association “Beijing Haidian District Digital Audio and Video Standard Promotion Center” registered in the Civil Affairs Bureau of Haidian District of Beijing City, it set up one-stop, low-cost patent authorization principles and management rules [4] for patent technologies included in the standard, as the expert committee and the main business decision-making institution of the promotion center. The royalty for the first generation AVS standard is only charged one-yuan per terminal, and the same mode will be adopted for the second generation, to charge a small amount of royalty only for the terminal, excluding the contents, as well as software services on the Internet. 

I'm not sure this would be eligible to be in Fedora. Asking FE-Legal opinion on this.

Comment 5 Simone Caronni 2019-06-09 17:21:58 UTC
Ok, thanks. Encoder of the same thing is here, I've also added it to fe-legal:

https://bugzilla.redhat.com/show_bug.cgi?id=1718575

Comment 6 Simone Caronni 2019-06-10 07:34:14 UTC
Just wanted to say that both davs2 and xavs2 are in Debian.

Comment 7 Simone Caronni 2019-07-03 05:04:37 UTC
Any news on the legal front for this? More than 3 weeks have passed.

Thanks.

Comment 8 Simone Caronni 2019-08-18 08:39:12 UTC
How can I unblock this? It has been pending legal for 2 months.
I'm not even sure who to ping.

Thanks.

Comment 9 Elliott Sales de Andrade 2019-09-05 09:33:02 UTC
Try the legal.org mailing list.

Comment 10 Robert-André Mauchin 🐧 2019-09-10 22:06:19 UTC
Already asked two or three times to look at this on the mailing list.

Comment 11 Tom "spot" Callaway 2019-09-12 13:12:23 UTC
Based on what material I can see, this package (along with any other AVS or AVS2 encoders/decoders) is not permissible in Fedora.

Looking specifically at this AVS2 implementation, which is licensed under GPLv2, it is worth noting the following license clause:

*****

  7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License.  If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all.  For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.

*****

It would be necessary (at a minimum) to have a GPLv2 compatible patent license in order to resolve this issue. Today, our only option is to refrain entirely from distribution of the Program.

Comment 12 Simone Caronni 2019-09-14 07:24:32 UTC
Thanks. I will close this review and the encoder as well.