All of lore.kernel.org
 help / color / mirror / Atom feed
From: Clemens Ladisch <clemens@ladisch.de>
To: Josh Lehan <alsa@krellan.com>, Sergey <sergemp@mail.ru>,
	alsa-devel@alsa-project.org
Subject: Re: [PATCH - alsa-utils 5/5] The amidicat program itself, better late than never
Date: Wed, 09 Jul 2014 09:54:10 +0200	[thread overview]
Message-ID: <53BCF522.2080609@ladisch.de> (raw)
In-Reply-To: <53BCD277.3040908@krellan.com>

Josh Lehan wrote:
> Somehow, the aseqdump program overcomes this limitation, though!  I need
> to figure out how it does that.  I think it has something to do with how
> the connection is made: simultaneously acting as both a direct
> connection and a subscription connection at the same time.

Have a look at how aseqdump decides what PORT_CAP bits to set.

> Also, what about ALSA permissions that amidicat itself advertises?  To
> make a long story short, I think I have this backwards.

These bits specify what _other_ clients can do with the port.

> Multiple copies of aseqdump can be
> ran at the same time, and everything still works (ALSA correctly
> multiplexes the output of vkeybd to all interested subscribers).
>
> However, this doesn't work for amidicat, and that's a bug.  When
> amidicat is running, ALSA blocks delivery of vkeybd events to the
> aseqdump clients.  When amidicat exits, this blockage clears, and all
> the blocked events are suddenly delivered to aseqdump (that's why you
> get the flood of output in aseqdump when amidicat exits).  Obviously,
> amidicat is doing something wrong, and confusing ALSA.

Does the thread actually read the delivered events from the kernel
buffer?

> Also, try "amidicat --list", which will give you output similar to
> "aplaymidi -l" but include more devices (unlike aplaymidi, amidicat does
> no filtering, it shows you everything, even including itself in the list).

It should list only those ports it can use, i.e., connect from/to.


Regards,
Clemens

  reply	other threads:[~2014-07-09  7:54 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-30  8:54 [PATCH - alsa-utils 0/5] The amidicat program as a patch Josh Lehan
2014-06-30  8:54 ` [PATCH - alsa-utils 1/5] Adding amidicat subdirectory to SUBDIRS Josh Lehan
2014-06-30 11:32   ` Clemens Ladisch
2014-07-01  7:30     ` Josh Lehan
2014-06-30  8:55 ` [PATCH - alsa-utils 2/5] Add amidicat Makefile to AC_OUTPUT list Josh Lehan
2014-06-30  8:55 ` [PATCH - alsa-utils 3/5] Makefile for amidicat, includes manual page Josh Lehan
2014-06-30  8:55 ` [PATCH - alsa-utils 4/5] Documentation manual page for amidicat Josh Lehan
2014-06-30 11:32   ` Clemens Ladisch
2014-07-01  7:34     ` Josh Lehan
2014-06-30  8:55 ` [PATCH - alsa-utils 5/5] The amidicat program itself, better late than never Josh Lehan
2014-06-30 11:33   ` Clemens Ladisch
2014-07-01  8:10     ` Josh Lehan
2014-07-08 23:55   ` Sergey
2014-07-09  5:26     ` Josh Lehan
2014-07-09  7:54       ` Clemens Ladisch [this message]
2014-07-09 23:36         ` Josh Lehan
2014-07-10  6:53           ` Clemens Ladisch

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=53BCF522.2080609@ladisch.de \
    --to=clemens@ladisch.de \
    --cc=alsa-devel@alsa-project.org \
    --cc=alsa@krellan.com \
    --cc=sergemp@mail.ru \
    /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.