App-wrapspeak

 view release on metacpan or  search on metacpan

lib/App/wrapspeak.pm  view on Meta::CPAN

package App::wrapspeak;

use Exporter 'import';
@EXPORT_OK = qw(run);

use Modern::Perl;
use IPC::Open3;
use Term::TermKey;
use File::Slurp qw/read_file/;
use Time::HiRes qw( alarm );
use IO::Select;

our $VERSION = '0.1';

=head1 NAME

App::wrapspeak - It speaks for you !

=head1 VERSION

Version 0.1

=head1 SYNOPSIS

This App intends to be a simple wrapper around speech synthesis engines.
Currently, only festival is supported.

By wrapping, it provides pause, rewind and forward functionalities.

=head1 USAGE

wrapspeak.pl text_file_name

=over 4

=item * Space for pause

=item * Any Key resumes while paused.

=item * Left for rewind by 1 sentence.

=item * Right for forward by 1 sentence.

=back

=cut

=head1  SUBS

=head2 run

This is the main subroutine that gets called by the script.

It does the following.

=over 4

=item * Grab all senetences in text.

=item * Open3 a pipe to festival.

=item * Wait, for user to press a key / or for the sentence read by
festival to end.

=item * If use has pressed the Space kye, it waits.
If the user  Left, Right it changes the sentence order.

 view all matches for this distribution
 view release on metacpan -  search on metacpan

( run in 2.018 seconds using v1.00-cache-2.02-grep-82fe00e-cpan-d29e8ade9f55 )