From: Takashi Sakamoto <o-takashi@sakamocchi.jp>
To: m.armsby@gmx.de
Cc: alsa-devel@alsa-project.org
Subject: Re: ALSAfirewire broken
Date: Thu, 24 Jul 2025 23:38:13 +0900 [thread overview]
Message-ID: <20250724143813.GA23616@workstation.local> (raw)
In-Reply-To: <224C5A41-DCED-4FA2-BE82-898F257DA2E9@gmx.de>
Hi,
Thanks for your report and I'm sorry for your inconveniences.
On Thu, Jul 24, 2025 at 12:37:48PM +0200, M. Armsby wrote:
> 1.
> Firewire Midi was working fine with kernel 5.10 with Reaper. Then obviously a lot changed with the Firewire Stack.
>
> The midi output from Reaper has not changed according to it's developer - Justin. The problem is direct ALSA-Midi.
>
> We tested the midi app from www.alsa-project.org/alsa-doc/alsa-lib/_2test_2rawmidi_8c-example.html#a0 yesterday and it freezes Debian and just breaks Arch with kernel 6.15
>
>
> Thread at Reaper Bugs forum:
>
> https://forum.cockos.com/showthread.php?t=300278
>
> Has low level ALSA-Midi API changed?
As long as briefly testing with the 'test/rawmidi.c' in alsa-lib and my
Tascam FireOne (handled by snd-oxfw) in Ubuntu 25.04 (6.14.0-24-generic),
I face no issue addressed in the above thread.
I think it depends on the type of device (and driver). Would I ask you
the devices you used when facing the issue? I would regenerate the issue
with the same device.
Additionally, it is preferable to share the purpose of your kernel
configuration, especially to linux-realtime or so.
(I realized that test/rawmidi.c in alsa-lib includes a bug that read(2)
system call in internal snd_rawmidi_hw_tread() does not return even if
receiving SIGINT signal. The careless installation of signal handler
may causes the bug...)
> 2.
> If using Pipewire-Jack with ALSAfirewire the Reaper midi output works fine but unfortunately Pipewire adds 90ms delay when playing back through any Firewire interface compared with an onboard soundcard.
>
>
> The pipewire dev Wim Tayman, says it's ALSAfirewire fault but I proved it is not - see thread:
>
> https://gitlab.freedesktop.org/pipewire/pipewire/-/issues?show=eyJpaWQiOiI0Nzg1IiwiZnVsbF9wYXRoIjoicGlwZXdpcmUvcGlwZXdpcmUiLCJpZCI6MTM0OTgyfQ%3D%3D
>
> The ALSA recording and playback is confirmed by my tests to be working under 10ms RTT with Echo, Motu and Bebop interfaces.
>
>
> Is this problem related to first?
> Low level communication error?
The 90ms delay is reasonable..., depending on the PCM buffer
configuration.
At present, all of drivers in ALSA firewire stack works with such delay
due to queued initial packet. Therefore PipeWire computes the delay
as expected. We would need to reeinvent the packet streaming engine if
reducing the delay.
Thanks
Takashi Sakamoto
next prev parent reply other threads:[~2025-07-24 14:39 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-24 10:37 ALSAfirewire broken M. Armsby
2025-07-24 14:38 ` Takashi Sakamoto [this message]
2025-07-30 19:36 ` ALSAfirewire broken / Pipewire 90ms delay M. Armsby
2025-08-10 13:35 ` M. Armsby
2025-09-02 7:59 ` M. Armsby
2025-09-03 1:11 ` M. Armsby
2025-09-03 8:47 ` Jaroslav Kysela
2025-09-03 11:15 ` Takashi Sakamoto
2025-09-03 12:19 ` Jaroslav Kysela
2025-09-04 13:18 ` Takashi Sakamoto
2025-09-04 13:32 ` Jaroslav Kysela
2025-09-04 20:44 ` Takashi Sakamoto
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250724143813.GA23616@workstation.local \
--to=o-takashi@sakamocchi.jp \
--cc=alsa-devel@alsa-project.org \
--cc=m.armsby@gmx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.