logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Audio::Mixer - Perl extension for Sound Mixer control

Author

       Sergey Gribov, sergey@sergey.com

Description

       Library to query / set various sound mixer parameters.

       This is just a very simple Perl interface which allows one to set various sound mixer parameters. The
       most important probably 'vol' (volume). The list of all mixer parameters can be obtained using
       get_mixer_params() function.

       All values (lcval, rcval) are numbers in 0-100 range.

Functions

       get_cval(cntrl) - Get parameter value Parameters:
           cntrl - name of parameter Returns:
           in array context: (lcval, rcval), where:
             lcval - left channel value
             rcval - right channel value
           in scalar context returns value of get_param_val() (see below)

       set_cval(cntrl, lcval, rcval) - Set parameter value Parameters:
           cntrl - name of parameter
           lcval - left channel value
           rcval - right channel value (optional, if not supplied
             will be equal to lcval) Returns: 0 if Ok, -1 if failed

       set_source(cntrl) - set record source Parameters:
           cntrl - name of channel to record from Returns: 0 if Ok, -1 if failed

       get_source(cntrl) - get record source Returns:
           name of channel to record from

       set_mixer_dev(fname) - Set mixer device name (optional),
           /dev/mixer is used by default
           fname - device name Returns: 0 if Ok

       init_mixer() - Initialize mixer (open it)
           set_cval() / get_cval() opens / closes the mixer each
           time they called unless init_mixer() called before.
           In case if init_mixer() called before all other
           functions will use already opened device instead of
           opening it each time.

       close_mixer() - Close device.
           Should be called only if init_mixer() was used.

       get_mixer_params() - Get list of mixer parameters Returns: list of parameters names.

       LOW LEVEL FUNCTIONS:

       get_param_val(cntrl) - Get parameter value Parameter:
           cntrl - name of parameter Returns:
           integer value, which will be constructed as follows:
             lower byte (x & 0xff) - value of the left channel
               (or whole value)
             next byte  (x & 0xff00) - value of the right channel
             third byte (x & 0xff0000) - flags (if x & 0x10000 then       2 channels exist)
           or -1 in case of failure.

       set_param_val(cntrl, lcval, rcval) - Set parameter value.
           Here all parameters are mandatory (in contrast to set_cval()).  Parameters:
           cntrl - name of parameter
           lcval - left channel value
           rcval - right channel value Returns: 0 if Ok, -1 if failed

License

       Copyright (c) 2001 Sergey Gribov. All rights reserved.  This program is free software; you can
       redistribute it and/or modify it under the same terms as Perl itself.

Name

       Audio::Mixer - Perl extension for Sound Mixer control

See Also

perl(1).

perl v5.40.0                                       2024-10-20                                         Mixer(3pm)

Synopsis

         use Audio::Mixer;
         $volume = Audio::Mixer::get_cval('vol');
         if (Audio::Mixer::set_cval('vol', 50, 40)) {
           die("Can't set volume...");
         }

See Also