Wim Taymans
379cbeaa5d
pw-cat: fix option for playback
...
Fixes #665
2021-02-02 15:17:38 +01:00
Wim Taymans
84eed9ef6f
pw-cat: use none as default latency for record
...
Don't force the record latency to the large latency we use for playback
(100ms) but set it to none, which means use defaults.
2021-01-08 16:30:57 +01:00
Gabriel Ebner
7bdcfb6383
pw-cat: report delay
2020-12-23 19:13:29 +00:00
Wim Taymans
97ec1ce209
pw-cat: handle stream error
...
Exit when the stream is in error
See #430
2020-12-01 09:39:16 +01:00
Wim Taymans
b3aa346063
handle core error better
...
Use the PW_ID_CORE constant
Quit the mainloop when server disconnected in the tools
See #395
2020-11-20 12:29:51 +01:00
Wim Taymans
bb8bd3d76d
pw-cat: don't put empty strings in metadata
2020-10-21 11:03:36 +02:00
Wim Taymans
4818795d31
pw-cat: set media.filename
2020-10-20 17:16:33 +02:00
Wim Taymans
74eaf5a2ca
pw-cat: parse metadata and make a nice media.name if possible
2020-10-20 17:11:00 +02:00
Wim Taymans
0c04481ba7
metadata: improve default sink/source
...
Only check defaults when subject is PW_ID_CORE
Handle NULL keys: remove the defaults
2020-08-18 17:56:05 +02:00
Emmanuel Gil Peyrot
14fdf07e8f
Run codespell on the entire codebase
...
This tool detects and fixes common English spelling mistakes, with
generally very few mistakes.
Here is the command I used to generate this commit. There were a few
changes that had to be done manually, and of course adding the ignore
file:
```shell
codespell -I .codespell-ignore -x .codespell-ignore -w
```
I didn’t add it to the CI, but this would be a good place for it.
2020-08-17 17:16:31 +00:00
Wim Taymans
a3350d44eb
pw-cat: use metadata to tag default device
2020-08-10 17:45:45 +02:00
Wim Taymans
cb14b41537
pw-cat: enable rtkit
2020-08-05 17:46:51 +02:00
Wim Taymans
f20aa405cb
pw-cat: fallback to default channel map in record
...
If not otherwise specified, use the default channelmap when recording.
2020-07-22 17:26:14 +02:00
Wim Taymans
022705d813
pw-cat: fix leak in channel parsing
2020-07-22 11:26:06 +02:00
Wim Taymans
2955182e4e
use spa_debug_type_short_name() when we can
2020-07-22 11:22:11 +02:00
Wim Taymans
baf3b0a27e
pw-cat: zero out info
2020-06-03 12:06:14 +02:00
Wim Taymans
203c89daaf
pw-cat: cleanup registry proxy
2020-06-02 18:16:58 +02:00
Wim Taymans
5b9e82c4e8
pw-cat: add pw-midiplay and pw-midirecord aliases
2020-05-01 11:35:51 +02:00
Wim Taymans
b09caaadc0
midifile: make it possible to specify output file
2020-04-14 20:12:23 +02:00
Wim Taymans
b87c0a9270
clean up options
...
make sure we can use -v for verbose mode
2020-04-02 14:34:02 +02:00
Wim Taymans
b3d0aa6f8c
pw-cat: allow latency=none
2020-03-26 11:34:59 +01:00
Wim Taymans
54eef8bb9d
pw-cat: write midi bytes directly.
2020-03-06 16:47:02 +01:00
Wim Taymans
33102abe4d
pw-cat: dump midi events in vebose mode
2020-03-01 20:39:46 +01:00
Wim Taymans
2982b9511e
pw-cat: simplify midi reading and writing
2020-02-28 20:35:28 +01:00
Wim Taymans
a3582f0e0f
pw-cat: add midi recording
2020-02-27 15:37:12 +01:00
Wim Taymans
b7dbf4bbc1
pw-cat: rework midifile a little
...
Move the code to read and write midi into the midifile helper
and simplify things a bit.
2020-02-27 12:42:21 +01:00
Wim Taymans
9bec2e5d8a
pw-cat: improve midi errors
...
EINVAL for invalid events and file
ENOENT for unknown event
2020-02-24 10:20:33 +01:00
Wim Taymans
b33bd68bac
improve error messages
...
Log an error when we send an error to the client so that we don't need
to log and error anymore.
Improve the error messages when we can
Move some warnings and errors to debug
2020-02-21 15:02:55 +01:00
Wim Taymans
8b874a9514
pw-cat: handle midi EOF better
...
Return 0 when there are no more events, 1 when we have an event and
< 0 for errors. Use this to correctly push the last set of events on
EOS and then return 0 and stop without an error.
2020-02-21 11:19:35 +01:00
Wim Taymans
11086f23ea
pod: add and use reserve_bytes helper
2020-02-19 11:02:00 +01:00
Wim Taymans
7df66cd6ad
pw-cat: keep our own time
...
Don't try to use the time from the io_position, it is updated in
the RT thread and might be slightly wrong for our purposes.
2020-02-19 10:19:59 +01:00
Wim Taymans
ddcb08a98a
pw-cat: read midi file from memory
...
mmap the midi file and read from memory. Simplifies some things and
allows us to potentially parse from the RT thread later.
2020-02-19 09:58:47 +01:00
Wim Taymans
b6a6d1f0bb
pw-cat: fix tempo changes
...
Use time in seconds as event timestamp.
Apply tempo from the new events, keep track of elapsed time and
time since tempo change to get the right time.
Skip metadata midi in pw-cat.
2020-02-18 16:13:35 +01:00
Wim Taymans
fe616e38d8
pw-cat: add midi support
2020-02-18 13:38:26 +01:00
Wim Taymans
319df9fce9
pw-cat: add option to set resampler quality
2020-02-14 20:34:08 +01:00
Wim Taymans
0a26c478f7
pw-cat: small cleaups
...
Set endianness correctly
Move setup of output file format outside of sample format function.
2020-02-13 09:51:25 +01:00
Wim Taymans
5e71a01e8d
pw-cat: fix setup of defaults
...
In record mode, setup the parameters before we open.
2020-02-13 08:59:41 +01:00
Wim Taymans
fe85a3b817
pw-cat: refactor a bit
...
Try to keep the sndfile code in one place
2020-02-12 17:57:42 +01:00
Wim Taymans
df65e0bcd3
pw-cat: fix remote name option
2020-02-12 13:39:47 +01:00
Wim Taymans
b2dfa83052
pw-cat: print channelmap in verbose mode
2020-02-06 16:50:59 +01:00
Wim Taymans
8abbf653e6
pw-cat: Use default channel layout when nothing given
...
Make channel layout definitions a little more useful. We can now
assign them to a layout_info struct or in the raw_info.
Make some default channel layouts for use in pw-cat
2020-02-04 15:54:57 +01:00
Wim Taymans
1cce9a69c8
pw-cat: add channel-map option and option to delay connect
...
If the target node is set to 0, remove the autoconnect flag. This makes
the session manager disable stream autoconnect and some other program
needs to connect the stream to a sink or node.
Use the channelmap from the file, if available.
Add option to specify/override the channel map for playback.
2020-02-04 11:45:45 +01:00
Wim Taymans
b5b3bfbe84
pw-cat: Don't set RT_PROCESS flag
...
The soundfile function calls are not safe to call from the real-time
thread so don't do that.
2020-01-28 10:35:29 +01:00
Wim Taymans
d43b98e1a4
pw-cat: print errno on errors
2020-01-28 10:35:07 +01:00
Wim Taymans
525ca21ece
pw-cat: fix pw-play and pw-record names
2020-01-28 10:33:48 +01:00
Wim Taymans
37396096df
pw-cat: fill in the media-name property
2020-01-27 16:54:19 +01:00
Wim Taymans
116b13b1e2
pw-cat: relax some more checks
...
Don't really care about the format, let sndfile convert and decode
for us to the nearest supported format or else to f32. Fixes support
for ogg.
2020-01-27 16:38:35 +01:00
Wim Taymans
e1e93e5a88
pw-cat: fix s24 formats
...
Treat s24 format as s32 and let sndfile convert for us. This is
needed because using the raw read bypasses decoding in some cases.
This makes 24 bits flac work.
2020-01-27 15:47:13 +01:00
Wim Taymans
c047bab910
rename pipewire tools
...
Use the pw- prefix for all pipewire tools. This makes the
commands shorter but also avoids conflicts with password
and patchwork tools (pwcli is taken, pwconv is maybe we someday
can make).
pipewire-monitor -> pw-mon
pipewire-cli -> pw-cli
pipewire-dot -> pw-dot
pwcat -> pw-cat
2020-01-27 15:42:59 +01:00