* Rework the seqmidi aliases.
- The 1st alias is now the Jack1 MIDI port name with alsa_midi prefix.
- This 2nd alias is basically the same as the 1st alias with the
alsa_midi prefix stripped, so that devices are listed under the ALSA
names.
Also fixed the "capture" and "playback" port type names which were the
wrong way round.
* Rework the rawmidi alias.
Like in alsa_seqmidi.c, the 1st alias is now the Jack1 MIDI port name
with alsa_midi prefix.
* Rework pretty-name metadata.
The rawmidi and seqmidi pretty-name metadata now uses the same Jack1
port name as the 1st alias, without the alsa_midi: prefix.
* apply changes without whitespace
* remove neon intrinsics and fix indentation
* update float_32 macro and fix misspellings
* check msbits to determine number of bits in alsa driver
* add better error messages and support for SND_PCM_FORMAT_S32_BE
* log when sample format is not equal to bits
Co-authored-by: Claudio Cabral <clca@bang-olufsen.dk>
Co-authored-by: Claudio Cabral <cl@udio.co>
FUTEX_WAIT may be interrupted by a signal and return EINTR. If a client
process takes a signal while on the futex, the jack client may error out
with no way to recover despite the signal being safe. Instead, retry if
errno is set to EINTR.
SYS_futex is expected from system C library.
in glibc (/usr/include/bits/syscall.h defines it in terms of of NR_futex)
rv32 is using 64bit time_t from get go unlike other 32bit architectures
in glibc, therefore it wont have NR_futex defined but just NR_futex_time64
this aliases it to NR_futex so that SYS_futex is then defined for rv32
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Change-Id: I3d79e5f2516d8709b70dc700e5c9a04534619661
Signed-off-by: Adam Miartus <amiartus@de.adit-jv.com>
(cherry picked from commit 7a7d3b3524)
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
This is always an audible issue. Therefore print the coresponding
error message also in non verbose mode.
Signed-off-by: Adam Miartus <external.Adam.Miartus@de.bosch.com>
(cherry picked from commit 5b8c373318)
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
Change-Id: I5e1380776f76814409f198a4ad874d4ae46007e3
poll may be interrupted due to signal, in that case print
error log
Change-Id: I1b2b2543a4b056b50af7617efc80fe517bddaaae
Signed-off-by: Adam Miartus <external.Adam.Miartus@de.bosch.com>
(cherry picked from commit 20883aa404)
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
should be set in milliseconds
Signed-off-by: Adam Miartus <external.Adam.Miartus@de.bosch.com>
(cherry picked from commit 17031895de)
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
Change-Id: I3d32e4602c1bdf15474b14496173727aa130c924
Change-Id: I45e1ccf2e1b955db187eb72127a536fe5eb0b81e
Signed-off-by: Adam Miartus <external.Adam.Miartus@de.bosch.com>
(cherry picked from commit 865cad2003)
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
On ALSA poll time out, retry polling after executing the recovery.
Retry max limit is set with MAX_RETRY_COUNT.
Signed-off-by: Laxmi Devi <Laxmi.Devi@in.bosch.com>
Currently only poll_result is checked for < 0 before doing the further
processing, and not for timeout. After this movement the revents is checked
only if the poll doesn't timeout.
Signed-off-by: Laxmi Devi <Laxmi.Devi@in.bosch.com>
Currently even on XRUN, the xrun recovery is not executed as the
need_playback or need_capture flag is still true and so it goes
and waits on poll again.
Signed-off-by: Laxmi Devi <Laxmi.Devi@in.bosch.com>
* Set MIDI port pretty names on macOS
* Set MIDI port pretty names on Windows
* Set MIDI port pretty names on Linux/alsarawmidi
* Update alsarawmidi port naming to match CoreMIDI and WinMME
* Rename PortSetPrettyNameProperty to PortSetDeviceName
* Set hardware property to MIDI port names
* Fix generation of client uuid
Signed-off-by: falkTX <falktx@falktx.com>
* Remove all client properties when removed; Cleanup a few things
Signed-off-by: falkTX <falktx@falktx.com>
* Make all uuid function arguments use jack_uuid_t type; Fix warnings
Signed-off-by: falkTX <falktx@falktx.com>
* Rework uuids to never be int, more cleanup
Signed-off-by: falkTX <falktx@falktx.com>
* Revert "oss_driver: Use float to S32 conversion if requested"
This reverts commit c5a0f5ea1c.
* Revert "alsa_in/out: Use float to S32 conversion if requested"
This reverts commit 148c8d8e6a.
* Revert "alsa_driver: Use float to S32 conversion if requested"
This reverts commit d017e1fffe.
* Revert "memops: Provide function for float to S32 conversion"
This reverts commit bb99e09b99.
* Revert "memops: Align S24LE and S32LE to float conversion"
This reverts commit b4ea23df6a.
* Revert "memops: Provide function for S32 to float conversion"
This reverts commit 244fc27e29.
* Revert "memops: Align float to S24LE and S32LE conversion"
This reverts commit 4455fe020c.
* Revert "memops: Remove not used conversion macros"
This reverts commit a82f3f2fb4.
* Revert "memops: Use right-aligned S24LE to float conversion"
This reverts commit e753254313.
* Revert "memops: Use right-aligned float to S24LE conversion"
This reverts commit 831163e516.
The FreeBoB project was renamed to FFADO in 2007.
All users should use the FFADO backend by now (2019).
Backend name to be removed: "freebob"
Alternative backend to use: "firewire"
Please check the jackd manpage for details about "firewire" backend.
This commit is part of legacy cleanup.
closes issue #365.
sample_move_d32u24_sS() converts into samples like 0x00****** but S32
format expects samples like 0x********. Therefore it will not use the
full volume range when also using sample_move_d32u24_sS() for S32.
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
This reverts commit dde9f29a8e.
The commit introduced the following compiler error:
[100/255] Compiling posix/JackNetUnixSocket.cpp
../posix/JackNetUnixSocket.cpp: In member function 'int Jack::JackNetUnixSocket::NewSocket()':
../posix/JackNetUnixSocket.cpp:126:32: error: 'tos' was not declared in this scope
socklen_t len = sizeof(tos);
for all devices.
This is required for example for some adaptive sample rate converters
which are executed on top of JACK. These SRCs are using the time stamp to
calculate the buffer fill level between playback application and sound
card.
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>