Wim Taymans
8bf0b7b4db
a2dp: delay codec init to after acquire
...
Some codecs need the MTU as a parameter so wait until we acquire
with creating the codec context.
Make some method to enumerate the parameters from the transport
config and use that for the EnumFormat param.
2020-12-03 18:05:57 +01:00
Wim Taymans
67694a1491
a2dp-ldac: free handle on error
2020-12-03 11:18:27 +01:00
Wim Taymans
908e3f3d1f
bluez5: only register available A2DP encoder/decoder
2020-12-03 11:09:13 +01:00
Wim Taymans
dd8573a5c2
bluez5: add ldac codec
2020-12-03 10:16:14 +01:00
Wim Taymans
3363544d05
bluez5: use start_decode to skip the header
2020-12-02 17:01:22 +01:00
Wim Taymans
57886c1198
spa: add audio.position support in null sink
2020-12-02 12:59:50 +01:00
Wim Taymans
4c486c7ae3
spa: remove media.class from null-audio-sink
...
We can use it with othe media.class values as well
2020-12-02 11:47:08 +01:00
Wim Taymans
73e0bb255a
props: add container property to PROP_INFO
...
So we can mark a property should be inside a container.
Use this info in pw_stream to construct properties.
2020-12-01 12:58:18 +01:00
Wim Taymans
d098c2ba86
acp: add option to disable hardware mixer
...
See #426
2020-12-01 10:43:39 +01:00
Wim Taymans
75a4cff450
improve debug
2020-11-29 16:38:36 +01:00
Wim Taymans
b8300c663b
improve some errors
...
Silence some -ENOENT warnings, they can happen when the object we
are introspecting is destroyed
2020-11-29 16:22:50 +01:00
Wim Taymans
a417ffcd38
alsa: add timerfd based playback example
2020-11-27 10:30:54 +01:00
Wim Taymans
119678e8d1
Revert "alsa: sync to latest acp"
...
This reverts commit f611e34456 .
There is something wrong with this
2020-11-26 12:40:44 +01:00
Wim Taymans
f611e34456
alsa: sync to latest acp
2020-11-26 11:16:31 +01:00
Wim Taymans
4d62899375
acp: sync versions
2020-11-26 10:42:26 +01:00
Wim Taymans
d77c563ae8
null-audio-sink: return fixed values for rate/channels when set
2020-11-26 10:21:36 +01:00
Wim Taymans
ddfb310087
alsa-pcm: improve recover from suspended state debug
2020-11-26 09:24:57 +01:00
Wim Taymans
c3138a9bac
spa: make null-sink rate and channels configurable
2020-11-25 21:05:21 +01:00
Wim Taymans
b055b9de25
alsa: Make sure we handle errors in close
...
When a device is removed, close() will error. Warn about this but
continue closing our other things including marking the device
as closed so that we don't try to close it again later.
Fixes #413
2020-11-25 12:37:51 +01:00
Wim Taymans
a482e2e6e2
libcamera: delete the camera on error
...
Fixes #403
2020-11-24 09:25:07 +01:00
Wim Taymans
95e2ec9f72
channelmix: always copy the target channelmap
2020-11-23 20:17:38 +01:00
Elliott Sales de Andrade
6224068586
Fix some possible leaks.
2020-11-23 15:36:08 +00:00
Wim Taymans
231c3c8b8e
channelmix: add channelmap in properties
2020-11-23 15:33:11 +01:00
Wim Taymans
abaf63dfe6
acp: put channelmap in properties
2020-11-23 15:31:51 +01:00
Wim Taymans
af3f18b489
acp: add channel layout and map channels
2020-11-23 15:31:10 +01:00
Wim Taymans
04aa5472d3
journal: make it possible to set level from info
2020-11-18 17:42:47 +01:00
Wim Taymans
8c0f27c016
audioadapter: emit xrun when source can't produce data
2020-11-17 17:18:14 +01:00
Wim Taymans
79fb95bf90
stream: implement Flush
...
Flush out pending samples in the resampler
Set the io area status to _OK so that buffers are recycled and
new buffers produced.
2020-11-17 17:15:26 +01:00
Wim Taymans
573e2afd5e
bluez5: fix compilation of fallback Hsphfpd backend
2020-11-16 20:27:55 +01:00
Frédéric Danis
6308c5d806
bluez5: backend-hsphfpd: Add mSBC support
...
mSBC can be enabled by passing "bluez5.msbc-support=true" parameter to
pipewire-media-session.
mSBC is automatically selected if remote device supports it.
2020-11-16 18:15:39 +01:00
Frédéric Danis
7d28b51713
bluez5: Add mSBC support to sco-source
...
This has been tested with a UART Bluetoth chipset, on a Raspberry Pi 3.
It may work with USB Bluetoot chipset/dongle.
2020-11-16 18:15:39 +01:00
Frédéric Danis
1759aa834f
bluez5: Add mSBC support to sco-sink
...
This has been tested with a UART Bluetoth chipset, on a Raspberry Pi 3.
It doesn't seem to work with USB Bluetooth chipset/dongle.
2020-11-16 18:15:39 +01:00
Wim Taymans
0d9cc9e36e
loop: always place the invoke item in the queue
...
Always place the invoke item in the queue and then either signal the
other thread or flush the queue when not already flushing.
2020-11-16 15:16:20 +01:00
Wim Taymans
b8b2ce6ba9
loop: always wake up blocking items
...
We should always wake up the blocking items if we scheduled the
item.
2020-11-13 16:50:23 +01:00
Wim Taymans
31216c09c4
bluez5: fix memleak
2020-11-09 16:48:44 +01:00
Wim Taymans
42dd52c7fe
acp: clean up card object
...
Fixes #369
2020-11-09 15:01:07 +01:00
Sergey Bugaev
c101ff2057
support: add a journald logger implementation
...
Closes https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/358
Signed-off-by: Sergey Bugaev <bugaevc@gmail.com>
2020-11-06 15:51:24 +00:00
Wim Taymans
5a98a9b1cd
alsa: reload alsa configuration
...
Fixes #332
2020-11-05 10:00:25 +01:00
Wim Taymans
17e3087397
bluez5: fix some whitespace and indent
2020-11-05 09:46:11 +01:00
Wim Taymans
395a30b5d6
a2dp: fix sign of out_decoded
2020-11-02 09:16:59 +01:00
Grzegorz Uriasz
c1530ba171
Use RegisterApplication in bluez5 for A2DP if possible
2020-11-02 09:14:37 +01:00
George Kiagiadakis
5c749cf7c3
alsa-acp: bind the acp log func to the spa_log object directly
...
When the acp-device impl struct is passed to the log func, it is
possible that when this device is removed, another device using acp
is going to crash while logging a message
2020-11-02 08:10:29 +00:00
Wim Taymans
0320eca79e
pulse-server: add port_type and availability-group
2020-10-28 12:18:26 +01:00
Wim Taymans
8116da41b9
acp: use properties for port type and available group
2020-10-28 11:48:24 +01:00
Wim Taymans
6eaf8d6921
spa: remove property, we don't implement a getter
2020-10-28 10:51:08 +01:00
Wim Taymans
f3dda8e57b
pulse: Use the right conversion functions for volumes
...
PulseAudio uses cubic volumes and PipeWire uses linear volumes
so use the right conversion functions from one to the other.
2020-10-22 19:34:47 +02:00
Jan Grulich
743cf58fb7
Define SPA_FALLTHROUGH to make fall-through annotations work for all compilers
...
This is needed for example for Clang compiler which uses different
annotations than GCC. It will make WebRTC to happily use PipeWire
since the spa library is header-only and WebRTC defaults to use
Clang with -Wimplicit-fallthrough.
2020-10-22 13:31:19 +02:00
Wim Taymans
c1ea63fa7a
alsa-pcm: try to recover in all cases
...
Even if we can't get the current status, still try to recover the
device.
See #347
2020-10-22 09:16:45 +02:00
Frédéric Danis
48c64f9084
bluez5: backend-hsphfpd: Fix PCM agent name
...
The audio agent gets or provides data in the format requested between host
and chipset.
The HSP and HFP profile request PCM data to be sent to the chipset which
will encode/decode them in CVSD format.
This audio agent format may be re-used later for another air codec hw
encoded.
So, rename the audio agent to be more explicit.
2020-10-20 19:10:21 +00:00
Wim Taymans
77b91823f3
a2dp: mark a2dp-source as stream and autoconnect
2020-10-19 18:53:18 +02:00