/* * Class: org_tritonus_lowlevel_alsa_AlsaMixerElement * Method: hasPlaybackVolumeJoined * Signature: ()Z */ JNIEXPORT jboolean JNICALL Java_org_tritonus_lowlevel_alsa_AlsaMixerElement_hasPlaybackVolumeJoined (JNIEnv* env, jobject obj) { snd_mixer_elem_t* handle; int nReturn; if (debug_flag) { (void) fprintf(debug_file, "Java_org_tritonus_lowlevel_alsa_AlsaMixerElement_hasPlaybackVolumeJoined(): begin\n"); } handle = getHandle(env, obj); nReturn = snd_mixer_selem_has_playback_volume_joined(handle); if (debug_flag) { (void) fprintf(debug_file, "Java_org_tritonus_lowlevel_alsa_AlsaMixerElement_hasPlaybackVolumeJoined(): end\n"); } return (jboolean) nReturn; }
static int set_normalized_volume_all(snd_mixer_elem_t *elem, double volume, int dir, enum ctl_dir ctl_dir) { snd_mixer_selem_channel_id_t chn; int err; for (chn = 0; chn < 32; chn++) { if (!snd_mixer_selem_has_playback_channel(elem, chn)) continue; err = set_normalized_volume(elem, chn, volume, dir, ctl_dir); if (err < 0) return err; if (chn == 0 && snd_mixer_selem_has_playback_volume_joined(elem)) return 0; } return 0; }