From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Tim Cross Newsgroups: gmane.emacs.devel Subject: Re: Package proposal: greader, an audio emacs reader for blind and dislexic people Date: Thu, 31 Jan 2019 11:54:16 +1100 Message-ID: References: <87tvhpx0fr.fsf@web.de> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="000000000000ec2a400580b67711" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="71751"; mail-complaints-to="usenet@blaine.gmane.org" Cc: Michelangelo Rodriguez , emacs devel To: Michael Heerdegen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jan 31 01:54:41 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1gp0cq-000Iaf-71 for ged-emacs-devel@m.gmane.org; Thu, 31 Jan 2019 01:54:40 +0100 Original-Received: from localhost ([127.0.0.1]:46753 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gp0cp-0006kD-7G for ged-emacs-devel@m.gmane.org; Wed, 30 Jan 2019 19:54:39 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:36794) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gp0ci-0006jw-Ie for emacs-devel@gnu.org; Wed, 30 Jan 2019 19:54:33 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gp0ch-000584-2B for emacs-devel@gnu.org; Wed, 30 Jan 2019 19:54:32 -0500 Original-Received: from mail-ot1-x330.google.com ([2607:f8b0:4864:20::330]:44849) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gp0cg-00057f-OE for emacs-devel@gnu.org; Wed, 30 Jan 2019 19:54:30 -0500 Original-Received: by mail-ot1-x330.google.com with SMTP id g16so1336907otg.11 for ; Wed, 30 Jan 2019 16:54:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=GUOoQUTZjZvL+5+PeKt7tgLG6Gn0ncEZhxkzQ+8M4KU=; b=ZbiPGqBqUuL8wLFWzz5DTRg1/DcgBZSBhZBJauNlwZJiza0/ubB6s/2aRfTLfmmRl/ Iyz/hFYO0xX9VMcoF5f2lUuckmzTYx8z+JrlRi2ezgQUigAkrZbYFXP+OCtjYd35jVCf oe4j7Y5yUgCReXcSmT6ylCvVChj52+V3lytu2i1A9BO46XUEMufIWdizJc755XykAtT/ 6pKpY3KG3UXJILZkcVXSydd0t8+h/QUIdw3exRPsjdxUTbNMx8wqQTZHH98yS83wftr9 cCmCirWJGqt/1eE9bsbuEJvRzS1c2rpuZWK9Gkm+M3/5SwvZ0L0siTO29OBehbn2p1L1 j3+Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=GUOoQUTZjZvL+5+PeKt7tgLG6Gn0ncEZhxkzQ+8M4KU=; b=qW+M0IVchH2JSYl0e+SZAOEXmggmHF+t+5RM5fGqcCrw+oWSjlhrZiS6yYwU263G6F hEx4mRvIy4dGMW62yb+my1vV7kBaUulkNI/ZNM2UYAkh56oQhFX+Ve7mINCGi1XCygGX g16bgjtFIFqJzEdv3y1D2IvO/GuPqxKEPW0vEte/4Zgkz9rGZE5rs7wY4NOZ9WaQTmHt KgR9kR2rVKhWwUtXrTjc9yv8Nrm1UI1/KwhiZNN/Kzk+/FdAsA1oy6XhJIdKKcNhv5ca C9wH3xMrq+a05TMRrFS3UKuE5DDDxgN91ttv/4YcS42PD+sU+bFFB9fU5Ny/LJR7RUgF byMw== X-Gm-Message-State: AJcUukdu0OWRPVh4yYF3JkQu0CZUZdOq5qjCl1Lgfl7/RuR17Stfk/PV GxoQYO2eMj8rHXEixkAqzUtluyjPwq2XbPP+eIk= X-Google-Smtp-Source: ALg8bN7f0bEC4tasvZSDenlN8U2HraadzarL7wmEJCWqAJx8TPynurs92CPnsmMJcCiJqLw1L/l6xFh2mYKpTeTzA+A= X-Received: by 2002:a9d:721e:: with SMTP id u30mr24791654otj.203.1548896067920; Wed, 30 Jan 2019 16:54:27 -0800 (PST) In-Reply-To: <87tvhpx0fr.fsf@web.de> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::330 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:232843 Archived-At: --000000000000ec2a400580b67711 Content-Type: text/plain; charset="UTF-8" Speech-dispatcher is software installed on most Linux systems to provide TTS services (as used by things like Orca and other accessibility tools). It provides a unified interface to many TTS engines, such as espeak, but many others as well. It has nothing to do with Emacs - it is just the backend TTS service you would need (rather than implementing an espeak specific interface). There is a speech-dispatcher lib for emacs which provides the functions necessary for Emacs to send data to speech-dispather. The speechd.el module uses this to send text to the TTS. The advantage of using speech-dispatcher for your TTS service is that it would provide support for many different TTS engines (quality and features differ greatly between TTS engines - as too does support for different languages). The other advantage is that it provides a unified interface for doing things like setting speech rate, volume, pitch, pausing/restarting etc. I *thiink* speech-dispatcher will also work on OSX, but probably not windows. The speechd.el package will provide you with examples of how to take text that is in a buffer and send it to speech-dispatcher to have it read out. The library is small and well written (though suffering a little from 'bit rot', so can probably be improved upon - but the general idea is sound and will likely provide some clear examples. You will also see how you can enhance the speech by adding support for different voices - both speechd.el and Emacspeak use this technique - text is spoken in a different voice based on the font-lock properties of a word. So, you could, for example, have a eww buffer of a web page spoken such that headings are spoken in a different voice to paragraph text etc. This can make the spoken text easier to understand/follow for the listener. While speechd has this in a very basic way, Emacspeak has a far more sophisticated version. speechd.el is not part of core emacs and therefore is not in the GNU ELPA repository. It is GPL'd. With something like the package you are suggesting, you are probably best off developing it as a separate project and once it becomes mature, see what interest there is in having it moved into becoming part of the Emacs project. I suspect this is unlikely as it isn't core Emacs functionality, but you never know. Of course, that doesn't mean it cannot be a GNU project. BTW, you may want to choose a different name from greader - there have been packages in the past called greader, which were interfaces to the old Google Reader RSS interface. On Thu, 31 Jan 2019 at 09:09, Michael Heerdegen wrote: > Tim Cross writes: > > > nIn addition to emacspeak, there is also a package called speechd.el, > > which also does a similar thing, but uses speech-dispatcher. > > But speechd is not part of the Emacs project, right? I see it is > distributed in Melpa, but not in Gnu Elpa. So I guess this is not a > reason to reject the suggested package, or do I miss something? > > Michael. > -- regards, Tim -- Tim Cross --000000000000ec2a400580b67711 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Speech-dispatcher is software installed on most Linux syst= ems to provide TTS services (as used by things like Orca and other accessib= ility tools). It provides a unified interface to many TTS engines, such as = espeak, but many others as well. It has nothing to do with Emacs - it is ju= st the backend TTS service you would need (rather than implementing an espe= ak specific interface). There is a speech-dispatcher lib for emacs which pr= ovides the functions necessary for Emacs to send data to speech-dispather. = The speechd.el module uses this to send text to the TTS.=C2=A0

The advantage of using speech-dispatcher for your TTS service is tha= t it would provide support for many different TTS engines (quality and feat= ures differ greatly between TTS engines - as too does support for different= languages).=C2=A0 The other advantage is that it provides a unified interf= ace for doing things like setting speech rate, volume, pitch, pausing/resta= rting etc. I *thiink* speech-dispatcher will also work on OSX, but probably= not windows.=C2=A0

The speechd.el package will pr= ovide you with examples of how to take text that is in a buffer and send it= to speech-dispatcher to have it read out. The library is small and well wr= itten (though suffering a little from 'bit rot', so can probably be= improved upon - but the general idea is sound and will likely provide some= clear examples. You will also see how you can enhance the speech by adding= support for different voices - both speechd.el and Emacspeak use this tech= nique - text is spoken in a different voice based on the font-lock properti= es of a word. So, you could, for example, have a eww buffer of a web page s= poken such that headings are spoken in a different voice to paragraph text = etc. This can make the spoken text easier to understand/follow for the list= ener. While speechd has this in a very basic way, Emacspeak has a far more = sophisticated version.=C2=A0

speechd.el is not par= t of core emacs and therefore is not in the GNU ELPA repository. It is GPL&= #39;d. With something like the package you are suggesting, you are probably= best off developing it as a separate project and once it becomes mature, s= ee what interest there is in having it moved into becoming part of the Emac= s project. I suspect this is unlikely as it isn't core Emacs functional= ity, but you never know. Of course, that doesn't mean it cannot be a GN= U project.

BTW, you may want to choose a different= name from greader - there have been packages in the past called greader, w= hich were interfaces to the old Google Reader RSS interface.=C2=A0

On = Thu, 31 Jan 2019 at 09:09, Michael Heerdegen <michael_heerdegen@web.de> wrote:
Tim Cross <theophilusx@gmail.com> write= s:

> nIn addition to emacspeak, there is also a package called speechd.el,<= br> > which also does a similar thing, but uses speech-dispatcher.

But speechd is not part of the Emacs project, right?=C2=A0 I see it is
distributed in Melpa, but not in Gnu Elpa.=C2=A0 So I guess this is not a reason to reject the suggested package, or do I miss something?

Michael.


--
regards,

Tim

--
Tim Cross

--000000000000ec2a400580b67711--