From bcdf429ae3f923de2283c142155ab99990e919f3dd08fd41e3447c6d61b48857 Mon Sep 17 00:00:00 2001
From: Takashi Iwai <tiwai@suse.com>
Date: Tue, 20 Apr 2021 13:43:26 +0000
Subject: [PATCH] Accepting request 886766 from
 home:mwilck:branches:multimedia:libs

- Really fix recording OGG with parecord (bsc#1183546)
  parecord-really-fix-recording-OGG.patch

OBS-URL: https://build.opensuse.org/request/show/886766
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/pulseaudio?expand=0&rev=237
---
 parecord-really-fix-recording-OGG.patch | 34 +++++++++++++++++++++++++
 pulseaudio.changes                      |  6 +++++
 pulseaudio.spec                         |  2 ++
 3 files changed, 42 insertions(+)
 create mode 100644 parecord-really-fix-recording-OGG.patch

diff --git a/parecord-really-fix-recording-OGG.patch b/parecord-really-fix-recording-OGG.patch
new file mode 100644
index 0000000..ceb72b7
--- /dev/null
+++ b/parecord-really-fix-recording-OGG.patch
@@ -0,0 +1,34 @@
+From d56d5054f8e7b39376440e80ac7348b52e015de3 Mon Sep 17 00:00:00 2001
+From: Martin Wilck <mwilck@arcor.de>
+Date: Mon, 19 Apr 2021 17:55:28 +0200
+Subject: [PATCH] parecord: really fix recording OGG
+
+432a91ed ("fix "Failed to open audio file" for FLAC and OGG)" claimed
+to fix recording of OGG files with pacat, but it really fixed only
+FLAC. This patch must be added on top to fix OGG, too.
+
+Signed-off-by: Martin Wilck <mwilck@arcor.de>
+---
+ src/utils/pacat.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/utils/pacat.c b/src/utils/pacat.c
+index 31da073bc..39ccaffd0 100644
+--- a/src/utils/pacat.c
++++ b/src/utils/pacat.c
+@@ -1067,9 +1067,12 @@ int main(int argc, char *argv[]) {
+ 	     * Endianness has been set in pa_sndfile_write_sample_spec(), but
+ 	     * libsndfile errors out if endianness is set to anything other than
+ 	     * SF_ENDIAN_FILE for OGG or FLAC. Clear it.
++	     * For OGG, libsndfile accepts only subformat SF_FORMAT_VORBIS.
+ 	     */
+ 	    if (file_format == SF_FORMAT_OGG || file_format == SF_FORMAT_FLAC)
+ 		    sfi.format = (sfi.format & ~SF_FORMAT_ENDMASK) | SF_ENDIAN_FILE;
++	    if (file_format == SF_FORMAT_OGG)
++		    sfi.format = (sfi.format & ~SF_FORMAT_SUBMASK) | SF_FORMAT_VORBIS;
+ 
+         }
+ 
+-- 
+2.26.2
+
diff --git a/pulseaudio.changes b/pulseaudio.changes
index 7dd2cbb..e684166 100644
--- a/pulseaudio.changes
+++ b/pulseaudio.changes
@@ -1,3 +1,9 @@
+-------------------------------------------------------------------
+Mon Apr 19 18:45:11 UTC 2021 - Martin Wilck <mwilck@suse.com>
+
+- Really fix recording OGG with parecord (bsc#1183546)
+  parecord-really-fix-recording-OGG.patch
+
 -------------------------------------------------------------------
 Tue Mar 16 22:03:26 UTC 2021 - Dirk Müller <dmueller@suse.com>
 
diff --git a/pulseaudio.spec b/pulseaudio.spec
index 03cba70..1243fde 100644
--- a/pulseaudio.spec
+++ b/pulseaudio.spec
@@ -53,6 +53,7 @@ Patch5:         qpaeq-shebang.patch
 # PATCH-FIX-OPENSUSE Workaround for old systemd on Leap 15.x
 Patch6:         pulseaudio-old-systemd-workaround.patch
 Patch7:         parecord-fix-Failed-to-open-audio-file-for-FLAC-and-.patch
+Patch8:		parecord-really-fix-recording-OGG.patch
 # HFP support patches (bsc#1167940)
 Patch101:       0001-bluetooth-use-consistent-profile-names.patch
 Patch102:       0002-bluetooth-separate-HSP-and-HFP.patch
@@ -363,6 +364,7 @@ Optional dependency offering zsh completion for various PulseAudio utilities
 %patch6 -p1
 %endif
 %patch7 -p1
+%patch8 -p1
 %patch101 -p1
 %patch102 -p1
 %patch103 -p1