NAME
PulseAudio - An object oriented interface to pacmd.
DESCRIPTION
This is a suite of tools that should make scripting PulseAudio simplier. Please see further docs in PulseAudio::Backend::Utilities, PulseAudio::Sink, PulseAudio::Source.
SYNOPSIS
This module provides an object oriented interface into the Pulse configuration pacmd.
use PulseAudio;
my $pa = PulseAudio->new;
my $pa = PulseAudio->new( pulse_server => '192.168.1.102' );
## We because the absolute location of the key is {properties}{device.bus_path}
my $sink = $pa->get_sinks_by( ['properties', 'device.bus_path'], 'pci-0000:00:1b.0' )
$sink = $pa->get_sink_by_index(5);
$sink = $pa->get_sink_by([qw/properties device.bus_path/], q[pci-0000:00:1b.0] );
$sink->set_sink_volume('50%');
# Execute VLC with the B<PULSE_SINK> environmental variable set the sink's index.
$sink->exec( vlc );
# Set the sinks's volume
$sink->set_sink_volume( 0x10000 ); # Sets volume to max;
$sink->set_sink_volume( 'MAX' ); # Sets volume to max;
METHODS
The get_by methods take an array ref and a value and return the first object. The array-ref corresponds to the depth and location of the value to check against. See the SYNOPSIS for an example.
- get_card_by( $arrayRef, $value )
- get_sink_by( $arrayRef, $value )
- get_source_by( $arrayRef, $value )
- get_source_output_by( $arrayRef, $value )
- get_sink_input_by( $arrayRef, $value )
- get_sample_by( $arrayRef, $value )
- get_client_by( $arrayRef, $value )
- get_module_by( $arrayRef, $value )
Retreiver the default.
Return the specific requested object by unique id (index or name in the case of Samples).
- get_card_by_index( $idx )
- get_sink_by_index( $idx )
- get_source_by_index( $idx )
- get_source_output_by_index( $idx )
- get_sink_input_by_index( $idx )
- get_sample_by_name( $name )
- get_client_by_index( $idx )
- get_module_by_index( $idx )
SEE ALSO
DO READ: Commands (pod/Commands.pod)
- PulseAudio::Backend::Utilities
- PulseAudio::Sink
- PulseAudio::Source
- PulseAudio::SinkInput
- PulseAudio::SourceOutput
- PulseAudio::Module
- PulseAudio::Sample
- PulseAudio::Client
- PulseAudio::Card
SUPPORT
You can find documentation for this module with the perldoc command.
perldoc PulseAudio
You can also look for information at:
RT: CPAN's request tracker (report bugs here)
AnnoCPAN: Annotated CPAN documentation
CPAN Ratings
Search CPAN
LICENSE AND COPYRIGHT
Copyright 2012 Evan Carroll.
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.