* [ptxdist] [PATCH 1/2] opus: version bump 1.4 -> 1.5.1
@ 2024-03-08 11:57 Philipp Zabel
2024-03-08 11:57 ` [ptxdist] [PATCH 2/2] opus: switch to meson build system Philipp Zabel
2024-03-15 6:19 ` [ptxdist] [PATCH 1/2] opus: version bump 1.4 -> 1.5.1 Michael Olbrich
0 siblings, 2 replies; 4+ messages in thread
From: Philipp Zabel @ 2024-03-08 11:57 UTC (permalink / raw)
To: ptxdist; +Cc: Philipp Zabel
https://opus-codec.org/demo/opus-1.5/
New features optional, enabling DRED, deep PLC, and OSCE increases
the library size by a few MiB.
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
---
rules/opus.in | 20 ++++++++++++++++++--
rules/opus.make | 11 +++++++++--
2 files changed, 27 insertions(+), 4 deletions(-)
diff --git a/rules/opus.in b/rules/opus.in
index 7412eb76a538..3b8e6444cd3e 100644
--- a/rules/opus.in
+++ b/rules/opus.in
@@ -1,7 +1,23 @@
## SECTION=multimedia_libs
-config OPUS
+menuconfig OPUS
tristate
- prompt "opus"
+ prompt "opus "
help
Opus is a totally open, royalty-free, highly versatile audio codec.
+
+if OPUS
+
+config OPUS_DRED
+ bool
+ prompt "enable deep redundancy (DRED)"
+
+config OPUS_DEEP_PLC
+ bool
+ prompt "enable deep packet loss concealment (PLC)"
+
+config OPUS_OSCE
+ bool
+ prompt "enable opus speech coding enhancement (OSCE)"
+
+endif
diff --git a/rules/opus.make b/rules/opus.make
index 4dd2f9d9b653..ea1f04837cf1 100644
--- a/rules/opus.make
+++ b/rules/opus.make
@@ -14,8 +14,8 @@ PACKAGES-$(PTXCONF_OPUS) += opus
#
# Paths and names
#
-OPUS_VERSION := 1.4
-OPUS_MD5 := 0d89c15268c5c5984f583d7997d2a148
+OPUS_VERSION := 1.5.1
+OPUS_MD5 := 06c0e626ea3ad72f7b006e9130c8b15d
OPUS := opus-$(OPUS_VERSION)
OPUS_SUFFIX := tar.gz
OPUS_URL := http://downloads.xiph.org/releases/opus/$(OPUS).$(OPUS_SUFFIX)
@@ -38,6 +38,9 @@ OPUS_CONF_OPT := \
--disable-fixed-point-debug \
--enable-float-api \
--disable-custom-modes \
+ --$(call ptx/endis, PTXCONF_OPUS_DRED)-dred \
+ --$(call ptx/endis, PTXCONF_OPUS_DEEP_PLC)-deep-plc \
+ --disable-lossgen \
--enable-float-approx \
--enable-asm \
--enable-rtcd \
@@ -47,6 +50,10 @@ OPUS_CONF_OPT := \
--disable-fuzzing \
--disable-check-asm \
--disable-doc \
+ --disable-dot-product \
+ --disable-dnn-debug-float \
+ --disable-osce-training-data \
+ --$(call ptx/endis, PTXCONF_OPUS_OSCE)-osce \
--disable-extra-programs \
--enable-rfc8251
--
2.39.2
^ permalink raw reply [flat|nested] 4+ messages in thread
* [ptxdist] [PATCH 2/2] opus: switch to meson build system
2024-03-08 11:57 [ptxdist] [PATCH 1/2] opus: version bump 1.4 -> 1.5.1 Philipp Zabel
@ 2024-03-08 11:57 ` Philipp Zabel
2024-03-15 6:19 ` [ptxdist] [PATCH 1/2] opus: version bump 1.4 -> 1.5.1 Michael Olbrich
1 sibling, 0 replies; 4+ messages in thread
From: Philipp Zabel @ 2024-03-08 11:57 UTC (permalink / raw)
To: ptxdist; +Cc: Philipp Zabel
Enable the asm option only together with fixed-point.
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
---
rules/opus.in | 1 +
rules/opus.make | 50 ++++++++++++++++++++++---------------------------
2 files changed, 23 insertions(+), 28 deletions(-)
diff --git a/rules/opus.in b/rules/opus.in
index 3b8e6444cd3e..6751e17cfe24 100644
--- a/rules/opus.in
+++ b/rules/opus.in
@@ -3,6 +3,7 @@
menuconfig OPUS
tristate
prompt "opus "
+ select HOST_MESON
help
Opus is a totally open, royalty-free, highly versatile audio codec.
diff --git a/rules/opus.make b/rules/opus.make
index ea1f04837cf1..0feb0ebc401b 100644
--- a/rules/opus.make
+++ b/rules/opus.make
@@ -27,35 +27,29 @@ OPUS_LICENSE := BSD-3-Clause
# Prepare
# ----------------------------------------------------------------------------
-#
-# autoconf
-#
-OPUS_CONF_TOOL := autoconf
+OPUS_CONF_TOOL := meson
OPUS_CONF_OPT := \
- $(CROSS_AUTOCONF_USR) \
- --disable-static \
- --$(call ptx/disen, PTXCONF_HAS_HARDFLOAT)-fixed-point \
- --disable-fixed-point-debug \
- --enable-float-api \
- --disable-custom-modes \
- --$(call ptx/endis, PTXCONF_OPUS_DRED)-dred \
- --$(call ptx/endis, PTXCONF_OPUS_DEEP_PLC)-deep-plc \
- --disable-lossgen \
- --enable-float-approx \
- --enable-asm \
- --enable-rtcd \
- --enable-intrinsics \
- --disable-assertions \
- --enable-hardening \
- --disable-fuzzing \
- --disable-check-asm \
- --disable-doc \
- --disable-dot-product \
- --disable-dnn-debug-float \
- --disable-osce-training-data \
- --$(call ptx/endis, PTXCONF_OPUS_OSCE)-osce \
- --disable-extra-programs \
- --enable-rfc8251
+ $(CROSS_MESON_USR) \
+ -Dasm=$(call ptx/disen, PTXCONF_HAS_HARDFLOAT)d \
+ -Dassertions=false \
+ -Dcheck-asm=false \
+ -Dcustom-modes=false \
+ -Ddocdir=doc/opus \
+ -Ddocs=disabled \
+ -Denable-deep-plc=$(call ptx/truefalse, PTXCONF_OPUS_DEEP_PLC) \
+ -Denable-dnn-debug-float=false \
+ -Denable-dred=$(call ptx/truefalse, PTXCONF_OPUS_DRED) \
+ -Denable-osce=$(call ptx/truefalse, PTXCONF_OPUS_OSCE) \
+ -Dextra-programs=disabled \
+ -Dfixed-point=$(call ptx/falsetrue, PTXCONF_HAS_HARDFLOAT) \
+ -Dfixed-point-debug=false \
+ -Dfloat-api=true \
+ -Dfloat-approx=true \
+ -Dfuzzing=false \
+ -Dhardening=true \
+ -Dintrinsics=enabled \
+ -Drtcd=enabled \
+ -Dtests=disabled
# ----------------------------------------------------------------------------
# Target-Install
--
2.39.2
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [ptxdist] [PATCH 1/2] opus: version bump 1.4 -> 1.5.1
2024-03-08 11:57 [ptxdist] [PATCH 1/2] opus: version bump 1.4 -> 1.5.1 Philipp Zabel
2024-03-08 11:57 ` [ptxdist] [PATCH 2/2] opus: switch to meson build system Philipp Zabel
@ 2024-03-15 6:19 ` Michael Olbrich
2024-03-15 12:00 ` Philipp Zabel
1 sibling, 1 reply; 4+ messages in thread
From: Michael Olbrich @ 2024-03-15 6:19 UTC (permalink / raw)
To: Philipp Zabel; +Cc: ptxdist
On Fri, Mar 08, 2024 at 12:57:55PM +0100, Philipp Zabel wrote:
> https://opus-codec.org/demo/opus-1.5/
>
> New features optional, enabling DRED, deep PLC, and OSCE increases
> the library size by a few MiB.
>
> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
> ---
> rules/opus.in | 20 ++++++++++++++++++--
> rules/opus.make | 11 +++++++++--
> 2 files changed, 27 insertions(+), 4 deletions(-)
>
> diff --git a/rules/opus.in b/rules/opus.in
> index 7412eb76a538..3b8e6444cd3e 100644
> --- a/rules/opus.in
> +++ b/rules/opus.in
> @@ -1,7 +1,23 @@
> ## SECTION=multimedia_libs
>
> -config OPUS
> +menuconfig OPUS
> tristate
> - prompt "opus"
> + prompt "opus "
> help
> Opus is a totally open, royalty-free, highly versatile audio codec.
> +
> +if OPUS
> +
> +config OPUS_DRED
> + bool
> + prompt "enable deep redundancy (DRED)"
> +
> +config OPUS_DEEP_PLC
> + bool
> + prompt "enable deep packet loss concealment (PLC)"
> +
> +config OPUS_OSCE
> + bool
> + prompt "enable opus speech coding enhancement (OSCE)"
What's the reason for making these optional? I'd prefer to just hardcode
whatever everybody else is doing unless there is a good reason to make
these optional. And in that case, the options need a help text to help
decide what to choose. I wouldn't know what to do by just looking at these
options.
Michael
> +
> +endif
> diff --git a/rules/opus.make b/rules/opus.make
> index 4dd2f9d9b653..ea1f04837cf1 100644
> --- a/rules/opus.make
> +++ b/rules/opus.make
> @@ -14,8 +14,8 @@ PACKAGES-$(PTXCONF_OPUS) += opus
> #
> # Paths and names
> #
> -OPUS_VERSION := 1.4
> -OPUS_MD5 := 0d89c15268c5c5984f583d7997d2a148
> +OPUS_VERSION := 1.5.1
> +OPUS_MD5 := 06c0e626ea3ad72f7b006e9130c8b15d
> OPUS := opus-$(OPUS_VERSION)
> OPUS_SUFFIX := tar.gz
> OPUS_URL := http://downloads.xiph.org/releases/opus/$(OPUS).$(OPUS_SUFFIX)
> @@ -38,6 +38,9 @@ OPUS_CONF_OPT := \
> --disable-fixed-point-debug \
> --enable-float-api \
> --disable-custom-modes \
> + --$(call ptx/endis, PTXCONF_OPUS_DRED)-dred \
> + --$(call ptx/endis, PTXCONF_OPUS_DEEP_PLC)-deep-plc \
> + --disable-lossgen \
> --enable-float-approx \
> --enable-asm \
> --enable-rtcd \
> @@ -47,6 +50,10 @@ OPUS_CONF_OPT := \
> --disable-fuzzing \
> --disable-check-asm \
> --disable-doc \
> + --disable-dot-product \
> + --disable-dnn-debug-float \
> + --disable-osce-training-data \
> + --$(call ptx/endis, PTXCONF_OPUS_OSCE)-osce \
> --disable-extra-programs \
> --enable-rfc8251
>
> --
> 2.39.2
>
>
>
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [ptxdist] [PATCH 1/2] opus: version bump 1.4 -> 1.5.1
2024-03-15 6:19 ` [ptxdist] [PATCH 1/2] opus: version bump 1.4 -> 1.5.1 Michael Olbrich
@ 2024-03-15 12:00 ` Philipp Zabel
0 siblings, 0 replies; 4+ messages in thread
From: Philipp Zabel @ 2024-03-15 12:00 UTC (permalink / raw)
To: ptxdist
On Fri, Mar 15, 2024 at 07:19:24AM +0100, Michael Olbrich wrote:
> On Fri, Mar 08, 2024 at 12:57:55PM +0100, Philipp Zabel wrote:
> > https://opus-codec.org/demo/opus-1.5/
> >
> > New features optional, enabling DRED, deep PLC, and OSCE increases
> > the library size by a few MiB.
> >
> > Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
> > ---
> > rules/opus.in | 20 ++++++++++++++++++--
> > rules/opus.make | 11 +++++++++--
> > 2 files changed, 27 insertions(+), 4 deletions(-)
> >
> > diff --git a/rules/opus.in b/rules/opus.in
> > index 7412eb76a538..3b8e6444cd3e 100644
> > --- a/rules/opus.in
> > +++ b/rules/opus.in
> > @@ -1,7 +1,23 @@
> > ## SECTION=multimedia_libs
> >
> > -config OPUS
> > +menuconfig OPUS
> > tristate
> > - prompt "opus"
> > + prompt "opus "
> > help
> > Opus is a totally open, royalty-free, highly versatile audio codec.
> > +
> > +if OPUS
> > +
> > +config OPUS_DRED
> > + bool
> > + prompt "enable deep redundancy (DRED)"
> > +
> > +config OPUS_DEEP_PLC
> > + bool
> > + prompt "enable deep packet loss concealment (PLC)"
> > +
> > +config OPUS_OSCE
> > + bool
> > + prompt "enable opus speech coding enhancement (OSCE)"
>
> What's the reason for making these optional? I'd prefer to just hardcode
> whatever everybody else is doing unless there is a good reason to make
> these optional. And in that case, the options need a help text to help
> decide what to choose. I wouldn't know what to do by just looking at these
> options.
Enabling the new ML features increases the library size by about 5 MiB
(2 MiB for DRED + 1 MiB for deep PLC, and 1 MiB 1.6 MiB for OSCE, according
to the blog post).
DRED and deep PLC are supposed to improve voice quality under packet loss,
OSCE at low bitrates.
regards
Philipp
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-03-15 12:01 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-08 11:57 [ptxdist] [PATCH 1/2] opus: version bump 1.4 -> 1.5.1 Philipp Zabel
2024-03-08 11:57 ` [ptxdist] [PATCH 2/2] opus: switch to meson build system Philipp Zabel
2024-03-15 6:19 ` [ptxdist] [PATCH 1/2] opus: version bump 1.4 -> 1.5.1 Michael Olbrich
2024-03-15 12:00 ` Philipp Zabel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox