Patchwork [07/36] package/celt051: new package

login
register
mail settings
Submitter Yann E. MORIN
Date Aug. 12, 2012, 11:53 p.m.
Message ID <1344815664-28138-7-git-send-email-yann.morin.1998@free.fr>
Download mbox | patch
Permalink /patch/176835/
State RFC
Headers show

Comments

Yann E. MORIN - Aug. 12, 2012, 11:53 p.m.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/multimedia/Config.in         |    1 +
 package/multimedia/celt051/Config.in |   15 +++++++++++++++
 package/multimedia/celt051/celt.mk   |   26 ++++++++++++++++++++++++++
 3 files changed, 42 insertions(+), 0 deletions(-)
 create mode 100644 package/multimedia/celt051/Config.in
 create mode 100644 package/multimedia/celt051/celt.mk
Thomas Petazzoni - Aug. 17, 2012, 11:18 a.m.
Le Mon, 13 Aug 2012 01:53:55 +0200,
"Yann E. MORIN" <yann.morin.1998@free.fr> a écrit :

> --- /dev/null
> +++ b/package/multimedia/celt051/Config.in
> @@ -0,0 +1,15 @@
> +config BR2_PACKAGE_CELT051
> +	bool "celt051"
> +	select BR2_PACKAGE_LIBOGG
> +	help
> +	  The CELT ultra-low delay audio codec

Just curious, for what reason an audio codec is needed as a dependency
of a virtual machine thing? How does it fit in the stack?

> +# Although version newer than 0.5.1.3 exists, we're
> +# stuck with 0.5.1.3 for use by Spice (coming later)

Do you predict this version requirement to be kept for a long period of
time?

Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Yann E. MORIN - Aug. 17, 2012, 1:27 p.m.
Thomas, All,

On Friday 17 August 2012 13:18:18 Thomas Petazzoni wrote:
> Le Mon, 13 Aug 2012 01:53:55 +0200,
> "Yann E. MORIN" <yann.morin.1998@free.fr> a écrit :
> 
> > --- /dev/null
> > +++ b/package/multimedia/celt051/Config.in
> > @@ -0,0 +1,15 @@
> > +config BR2_PACKAGE_CELT051
> > +	bool "celt051"
> > +	select BR2_PACKAGE_LIBOGG
> > +	help
> > +	  The CELT ultra-low delay audio codec
> 
> Just curious, for what reason an audio codec is needed as a dependency
> of a virtual machine thing? How does it fit in the stack?

celt-0.51 is a hard-depdency for Spice to encode the audio.
It's select-ed by BR2_PACKAGE_SPICE in a later patch.

Note that I added all new packages in a row, rather than add them just
prior to the requiring qemu feature. Should I re-order the series to make
the depedencies clearer?

> > +# Although version newer than 0.5.1.3 exists, we're
> > +# stuck with 0.5.1.3 for use by Spice (coming later)
> 
> Do you predict this version requirement to be kept for a long period of
> time?

Spice advertises that celt-051 is the only supported version because
later versions have changed too much and are thus not compatible.

I have absolutely no idea whther Spice will upgrade one day... :-/


> Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

Thanks!

Regards,
Yann E. MORIN.
Thomas Petazzoni - Aug. 17, 2012, 1:50 p.m.
Le Fri, 17 Aug 2012 15:27:29 +0200,
"Yann E. MORIN" <yann.morin.1998@free.fr> a écrit :

> > Just curious, for what reason an audio codec is needed as a dependency
> > of a virtual machine thing? How does it fit in the stack?
> 
> celt-0.51 is a hard-depdency for Spice to encode the audio.
> It's select-ed by BR2_PACKAGE_SPICE in a later patch.
> 
> Note that I added all new packages in a row, rather than add them just
> prior to the requiring qemu feature. Should I re-order the series to make
> the depedencies clearer?

No, I understood perfectly that celt was a dependency of spice. My
question was not Buildroot-specific: I was trying to understand
what Qemu/Spice had to do with an audio encoder.

> > Do you predict this version requirement to be kept for a long period of
> > time?
> 
> Spice advertises that celt-051 is the only supported version because
> later versions have changed too much and are thus not compatible.
> 
> I have absolutely no idea whther Spice will upgrade one day... :-/

Ah, ok, I just realized you named the package celt051 and not celt just
because of that. Ok, good.

Thomas
Yann E. MORIN - Aug. 17, 2012, 2:35 p.m.
Thomas, All,

On Friday 17 August 2012 15:50:47 Thomas Petazzoni wrote:
> Le Fri, 17 Aug 2012 15:27:29 +0200,
> "Yann E. MORIN" <yann.morin.1998@free.fr> a écrit :
> 
> > > Just curious, for what reason an audio codec is needed as a dependency
> > > of a virtual machine thing? How does it fit in the stack?
> > 
> > celt-0.51 is a hard-depdency for Spice to encode the audio.
> > It's select-ed by BR2_PACKAGE_SPICE in a later patch.
> > 
> > Note that I added all new packages in a row, rather than add them just
> > prior to the requiring qemu feature. Should I re-order the series to make
> > the depedencies clearer?
> 
> No, I understood perfectly that celt was a dependency of spice. My
> question was not Buildroot-specific: I was trying to understand
> what Qemu/Spice had to do with an audio encoder.

Spice is a VNC-like solution, but specificaly designed for use by virtual
machine hypervisors. It can transport video and audio alike, and uses celt
to encode/decode the audio for sending over-the-wire.

I don't know why they choose celt instead of ogg or anything else,
except maybe that celt is developped to be really patent-unencumbered.

Regards,
Yann E. MORIN.

Patch

diff --git a/package/multimedia/Config.in b/package/multimedia/Config.in
index afe4a23..b641b51 100644
--- a/package/multimedia/Config.in
+++ b/package/multimedia/Config.in
@@ -2,6 +2,7 @@  menu "Audio and video applications"
 source "package/multimedia/alsa-utils/Config.in"
 source "package/multimedia/aumix/Config.in"
 source "package/multimedia/bellagio/Config.in"
+source "package/multimedia/celt051/Config.in"
 source "package/multimedia/faad2/Config.in"
 source "package/multimedia/flac/Config.in"
 source "package/multimedia/ffmpeg/Config.in"
diff --git a/package/multimedia/celt051/Config.in b/package/multimedia/celt051/Config.in
new file mode 100644
index 0000000..50ed069
--- /dev/null
+++ b/package/multimedia/celt051/Config.in
@@ -0,0 +1,15 @@ 
+config BR2_PACKAGE_CELT051
+	bool "celt051"
+	select BR2_PACKAGE_LIBOGG
+	help
+	  The CELT ultra-low delay audio codec
+	  
+	  The CELT codec is a compression algorithm for audio. Like MP3,
+	  Vorbis, and AAC it is suitable for transmitting music with high
+	  quality. Unlike these formats CELT imposes very little delay on
+	  the signal, even less than is typical for speech centric formats
+	  like Speex, GSM, or G.729.
+	  
+	  Note: this is version 0.5.1.3 of celt.
+	  
+	  http://www.celt-codec.org/
diff --git a/package/multimedia/celt051/celt.mk b/package/multimedia/celt051/celt.mk
new file mode 100644
index 0000000..e5b87c5
--- /dev/null
+++ b/package/multimedia/celt051/celt.mk
@@ -0,0 +1,26 @@ 
+#-----------------------------------------------------------------------------
+# Package description
+
+# Although version newer than 0.5.1.3 exists, we're
+# stuck with 0.5.1.3 for use by Spice (coming later)
+CELT051_VERSION         = 0.5.1.3
+CELT051_SOURCE          = celt-$(CELT051_VERSION).tar.gz
+CELT051_SITE            = http://downloads.xiph.org/releases/celt
+CELT051_LICENSE         = BSD-2c
+CELT051_LICENSE_FILES   = COPYING
+CELT051_INSTALL_STAGING = YES
+CELT051_DEPENDENCIES    = libogg
+
+#----------------------------------------------------------------------------
+# Package build process
+
+
+CELT051_CONF_OPT =                  \
+  --enable-fixed-point              \
+  --disable-fixed-point-debug       \
+  --disable-experimental-postfilter \
+  --disable-static-modes            \
+  --disable-assertions              \
+  --disable-oggtest                 \
+
+$(eval $(autotools-package))