Merge pull request #168012 from schmittlauch/pulseaudio-advanced-bluetooth-codecs
This commit is contained in:
commit
7a89f668fa
7 changed files with 32 additions and 16 deletions
|
@ -55,6 +55,11 @@ trim_trailing_whitespace = unset
|
|||
[*.lock]
|
||||
indent_size = unset
|
||||
|
||||
# trailing whitespace is an actual syntax element of classic Markdown/
|
||||
# CommonMark to enforce a line break
|
||||
[*.md]
|
||||
trim_trailing_whitespace = unset
|
||||
|
||||
[eggs.nix]
|
||||
trim_trailing_whitespace = unset
|
||||
|
||||
|
|
|
@ -74,6 +74,10 @@
|
|||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<literallayout>Pulseaudio has been upgraded to version 15.0 and now optionally <link xlink:href="https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/15.0/#supportforldacandaptxbluetoothcodecsplussbcxqsbcwithhigher-qualityparameters">supports additional Bluetooth audio codecs</link> like aptX or LDAC, with codec switching support being available in <literal>pavucontrol</literal>. This feature is disabled by default but can be enabled by using <literal>hardware.pulseaudio.package = pkgs.pulseaudioFull;</literal>.
|
||||
Existing 3rd party modules that provided similar functionality, like <literal>pulseaudio-modules-bt</literal> or <literal>pulseaudio-hsphfpd</literal> are deprecated and have been removed.</literallayout>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The new
|
||||
<link xlink:href="https://nixos.org/manual/nixpkgs/stable/#sec-postgresqlTestHook"><literal>postgresqlTestHook</literal></link>
|
||||
|
|
|
@ -27,6 +27,9 @@ In addition to numerous new and upgraded packages, this release has the followin
|
|||
|
||||
- Systemd has been upgraded to the version 250.
|
||||
|
||||
- Pulseaudio has been upgraded to version 15.0 and now optionally [supports additional Bluetooth audio codecs](https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/15.0/#supportforldacandaptxbluetoothcodecsplussbcxqsbcwithhigher-qualityparameters) like aptX or LDAC, with codec switching support being available in `pavucontrol`. This feature is disabled by default but can be enabled by using `hardware.pulseaudio.package = pkgs.pulseaudioFull;`.
|
||||
Existing 3rd party modules that provided similar functionality, like `pulseaudio-modules-bt` or `pulseaudio-hsphfpd` are deprecated and have been removed.
|
||||
|
||||
- The new [`postgresqlTestHook`](https://nixos.org/manual/nixpkgs/stable/#sec-postgresqlTestHook) runs a PostgreSQL server for the duration of package checks.
|
||||
|
||||
- [`kops`](https://kops.sigs.k8s.io) defaults to 1.22.4, which will enable [Instance Metadata Service Version 2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html) and require tokens on new clusters with Kubernetes 1.22. This will increase security by default, but may break some types of workloads. See the [release notes](https://kops.sigs.k8s.io/releases/1.22-notes/) for details.
|
||||
|
|
|
@ -84,6 +84,7 @@
|
|||
, libxml2
|
||||
, srt
|
||||
, vo-aacenc
|
||||
, libfreeaptx
|
||||
, VideoToolbox
|
||||
, AudioToolbox
|
||||
, AVFoundation
|
||||
|
@ -170,6 +171,7 @@ stdenv.mkDerivation rec {
|
|||
libintl
|
||||
srt
|
||||
vo-aacenc
|
||||
libfreeaptx
|
||||
] ++ lib.optionals enableZbar [
|
||||
zbar
|
||||
] ++ lib.optionals faacSupport [
|
||||
|
@ -261,7 +263,7 @@ stdenv.mkDerivation rec {
|
|||
"-Disac=disabled" # depends on `webrtc-audio-coding-1` not compatible with 0.3
|
||||
"-Dgs=disabled" # depends on `google-cloud-cpp`
|
||||
"-Donnx=disabled" # depends on `libonnxruntime` not packaged in nixpkgs as of writing
|
||||
"-Dopenaptx=disabled" # depends on older version of `libopenaptx` due to licensing conflict https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2235
|
||||
"-Dopenaptx=enabled" # since gstreamer-1.20.1 `libfreeaptx` is supported for circumventing the dubious license conflict with `libopenaptx`
|
||||
]
|
||||
++ lib.optionals (!stdenv.isLinux) [
|
||||
"-Dva=disabled" # see comment on `libva` in `buildInputs`
|
||||
|
|
|
@ -4,7 +4,8 @@
|
|||
, avahi, libjack2, libasyncns, lirc, dbus
|
||||
, sbc, bluez5, udev, openssl, fftwFloat
|
||||
, soxr, speexdsp, systemd, webrtc-audio-processing
|
||||
, check, meson, ninja, m4
|
||||
, gst_all_1
|
||||
, check, meson, ninja, m4, wrapGAppsHook
|
||||
|
||||
, x11Support ? false
|
||||
|
||||
|
@ -19,6 +20,7 @@
|
|||
, airtunesSupport ? false
|
||||
|
||||
, bluetoothSupport ? true
|
||||
, advancedBluetoothCodecs ? false
|
||||
|
||||
, remoteControlSupport ? false
|
||||
|
||||
|
@ -48,7 +50,9 @@ stdenv.mkDerivation rec {
|
|||
outputs = [ "out" "dev" ];
|
||||
|
||||
nativeBuildInputs = [ pkg-config meson ninja makeWrapper perlPackages.perl perlPackages.XMLParser m4 ]
|
||||
++ lib.optionals stdenv.isLinux [ glib ];
|
||||
++ lib.optionals stdenv.isLinux [ glib ]
|
||||
# gstreamer plugin discovery requires wrapping
|
||||
++ lib.optional (bluetoothSupport && advancedBluetoothCodecs) wrapGAppsHook;
|
||||
|
||||
propagatedBuildInputs =
|
||||
lib.optionals stdenv.isLinux [ libcap ];
|
||||
|
@ -65,6 +69,8 @@ stdenv.mkDerivation rec {
|
|||
++ lib.optionals stdenv.isLinux [ alsa-lib udev ]
|
||||
++ lib.optional airtunesSupport openssl
|
||||
++ lib.optionals bluetoothSupport [ bluez5 sbc ]
|
||||
# aptX and LDAC codecs are in gst-plugins-bad so far, rtpldacpay is in -good
|
||||
++ lib.optionals (bluetoothSupport && advancedBluetoothCodecs) (builtins.attrValues { inherit (gst_all_1) gst-plugins-bad gst-plugins-good gst-plugins-base gstreamer; })
|
||||
++ lib.optional remoteControlSupport lirc
|
||||
++ lib.optional zeroconfSupport avahi
|
||||
);
|
||||
|
@ -74,7 +80,8 @@ stdenv.mkDerivation rec {
|
|||
"-Dasyncns=${if !libOnly then "enabled" else "disabled"}"
|
||||
"-Davahi=${if zeroconfSupport then "enabled" else "disabled"}"
|
||||
"-Dbluez5=${if !libOnly then "enabled" else "disabled"}"
|
||||
"-Dbluez5-gstreamer=disabled"
|
||||
# advanced bluetooth audio codecs are provided by gstreamer
|
||||
"-Dbluez5-gstreamer=${if (!libOnly && bluetoothSupport && advancedBluetoothCodecs) then "enabled" else "disabled"}"
|
||||
"-Ddatabase=simple"
|
||||
"-Ddoxygen=false"
|
||||
"-Delogind=disabled"
|
||||
|
|
|
@ -655,6 +655,7 @@ mapAliases ({
|
|||
libmsgpack = throw "'libmsgpack' has been renamed to/replaced by 'msgpack'"; # Converted to throw 2022-02-22
|
||||
libosmpbf = throw "libosmpbf was removed because it is no longer required by osrm-backend";
|
||||
libpng_apng = throw "libpng_apng has been removed, because it is equivalent to libpng"; # Added 2021-03-21
|
||||
libpulseaudio-vanilla = libpulseaudio; # Added 2022-04-20
|
||||
libqmatrixclient = throw "libqmatrixclient was renamed to libquotient"; # Added 2020-04-09
|
||||
libqrencode = throw "'libqrencode' has been renamed to/replaced by 'qrencode'"; # Converted to throw 2022-02-22
|
||||
librdf = lrdf; # Added 2020-03-22
|
||||
|
|
|
@ -21947,9 +21947,9 @@ with pkgs;
|
|||
|
||||
hsphfpd = callPackage ../servers/pulseaudio/hsphfpd.nix { };
|
||||
|
||||
pulseaudio = callPackage ../servers/pulseaudio ({
|
||||
pulseaudio = callPackage ../servers/pulseaudio {
|
||||
inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit Cocoa;
|
||||
});
|
||||
};
|
||||
|
||||
qpaeq = libsForQt5.callPackage ../servers/pulseaudio/qpaeq.nix { };
|
||||
|
||||
|
@ -21958,26 +21958,20 @@ with pkgs;
|
|||
jackaudioSupport = true;
|
||||
airtunesSupport = true;
|
||||
bluetoothSupport = true;
|
||||
advancedBluetoothCodecs = true;
|
||||
remoteControlSupport = true;
|
||||
zeroconfSupport = true;
|
||||
};
|
||||
|
||||
# libpulse implementations
|
||||
libpulseaudio-vanilla = pulseaudio.override {
|
||||
libpulseaudio = pulseaudio.override {
|
||||
libOnly = true;
|
||||
};
|
||||
|
||||
apulse = callPackage ../misc/apulse { };
|
||||
|
||||
libpressureaudio = callPackage ../misc/apulse/pressureaudio.nix {
|
||||
libpulseaudio = libpulseaudio-vanilla; # headers only
|
||||
};
|
||||
libpressureaudio = callPackage ../misc/apulse/pressureaudio.nix { };
|
||||
|
||||
libcardiacarrest = callPackage ../misc/libcardiacarrest {
|
||||
libpulseaudio = libpulseaudio-vanilla; # meta only
|
||||
};
|
||||
|
||||
libpulseaudio = libpulseaudio-vanilla;
|
||||
libcardiacarrest = callPackage ../misc/libcardiacarrest { };
|
||||
|
||||
easyeffects = callPackage ../applications/audio/easyeffects { };
|
||||
|
||||
|
|
Loading…
Reference in a new issue