package/tinycompress: new package

tinycompress is a library for compress audio offload in alsa.
It also contains the "cplay" and "crecord" programs.
tinycompress is part of the ALSA project.

https://www.alsa-project.org/

Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
Julien Olivain 2022-10-29 13:53:21 +02:00 committed by Yann E. MORIN
parent 68b68518a8
commit 2f02d159bb
6 changed files with 69 additions and 0 deletions

View File

@ -1685,6 +1685,7 @@ F: package/python-distro/
F: package/python-gnupg/
F: package/python-pyalsa/
F: package/riscv-isa-sim/
F: package/tinycompress/
F: package/zynaddsubfx/
F: support/testing/tests/package/sample_python_distro.py
F: support/testing/tests/package/sample_python_gnupg.py

View File

@ -52,6 +52,7 @@ menu "Audio and video applications"
source "package/pulseaudio/Config.in"
source "package/sox/Config.in"
source "package/squeezelite/Config.in"
source "package/tinycompress/Config.in"
source "package/tovid/Config.in"
source "package/tstools/Config.in"
source "package/twolame/Config.in"

View File

@ -0,0 +1,39 @@
From 7d3b8ac47789545af5a4cd2fc1cf9bcfb91ae3b0 Mon Sep 17 00:00:00 2001
From: Julien Olivain <ju.o@free.fr>
Date: Sat, 29 Oct 2022 12:51:17 +0200
Subject: [PATCH] wave: add <time.h> missing header inclusion
When compiling tinycompress with some libc other than glibc
(e.g. musl libc), compilation fails with the following error:
In file included from wave.c:11:0:
/path/to/gcc/sysroot/usr/include/sound/asound.h:404:18: error: field 'trigger_tstamp' has incomplete type
struct timespec trigger_tstamp; /* time when stream was started/stopped/paused */
[...]
According to POSIX, "struct timespec" is defined in <time.h>. See:
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/time.h.html
This patch fixes this build failure by including <time.h> prior
<sound/asound.h>.
Signed-off-by: Julien Olivain <ju.o@free.fr>
---
src/utils/wave.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/utils/wave.c b/src/utils/wave.c
index a74149a..d17f66a 100644
--- a/src/utils/wave.c
+++ b/src/utils/wave.c
@@ -8,6 +8,7 @@
#include <stdio.h>
#include <stdint.h>
#include <string.h>
+#include <time.h>
#include <sound/asound.h>
#include "tinycompress/tinywave.h"
--
2.38.1

View File

@ -0,0 +1,10 @@
config BR2_PACKAGE_TINYCOMPRESS
bool "tinycompress"
depends on !BR2_STATIC_LIBS # dlfcn.h
help
tinycompress is a library for compress audio offload in alsa.
https://www.alsa-project.org/
comment "tinycompress needs a toolchain w/ dynamic library"
depends on BR2_STATIC_LIBS

View File

@ -0,0 +1,5 @@
# Locally calculated after checking pgp signature
sha256 2f897e5112cd3bca6790b5cecfda6e0662c8bc5ee0fbab972b247a0cc620d66c tinycompress-1.2.8.tar.bz2
# Locally calculated
sha256 912ea37a4435594a3b3c35f04efa4b5b7af2e68a05f5319c16c881711a31e4b7 COPYING

View File

@ -0,0 +1,13 @@
################################################################################
#
# tinycompress
#
################################################################################
TINYCOMPRESS_VERSION = 1.2.8
TINYCOMPRESS_SOURCE = tinycompress-$(TINYCOMPRESS_VERSION).tar.bz2
TINYCOMPRESS_SITE = https://www.alsa-project.org/files/pub/tinycompress
TINYCOMPRESS_LICENSE = BSD-3-Clause and LGPL-2.1
TINYCOMPRESS_LICENSE_FILES = COPYING
$(eval $(autotools-package))