Exemple #1
0
static int snd_opl4_seq_event_input(struct snd_seq_event *ev, int direct,
                                    void *private_data, int atomic, int hop)
{
    struct snd_opl4 *opl4 = private_data;

    snd_midi_process_event(&opl4_ops, ev, opl4->chset);
    return 0;
}
static int snd_opl3_oss_event_input(struct snd_seq_event *ev, int direct,
				    void *private_data, int atomic, int hop)
{
	struct snd_opl3 *opl3 = private_data;

	if (ev->type != SNDRV_SEQ_EVENT_OSS)
		snd_midi_process_event(&opl3_ops, ev, opl3->oss_chset);
	return 0;
}
Exemple #3
0
/*
 * input sequencer event
 */
int
snd_emux_event_input(snd_seq_event_t *ev, int direct, void *private_data,
		     int atomic, int hop)
{
	snd_emux_port_t *port;

	port = private_data;
	snd_assert(port != NULL && ev != NULL, return -EINVAL);

	snd_midi_process_event(&emux_ops, ev, &port->chset);

	return 0;
}
Exemple #4
0
/*
 * input sequencer event
 */
int
snd_emux_event_input(struct snd_seq_event *ev, int direct, void *private_data,
		     int atomic, int hop)
{
	struct snd_emux_port *port;

	port = private_data;
	if (snd_BUG_ON(!port || !ev))
		return -EINVAL;

	snd_midi_process_event(&emux_ops, ev, &port->chset);

	return 0;
}
Exemple #5
0
static int snd_opl3_synth_event_input(struct snd_seq_event * ev, int direct,
				      void *private_data, int atomic, int hop)
{
	struct snd_opl3 *opl3 = private_data;

	if (ev->type >= SNDRV_SEQ_EVENT_INSTR_BEGIN &&
	    ev->type <= SNDRV_SEQ_EVENT_INSTR_CHANGE) {
		if (direct) {
			snd_seq_instr_event(&opl3->fm_ops, opl3->ilist, ev,
					    opl3->seq_client, atomic, hop);
		}
	} else {
		snd_midi_process_event(&opl3_ops, ev, opl3->chset);
	}
	return 0;
}