C-Nedelcu / talk-to-chatgpt

Talk to ChatGPT AI using your voice and listen to its answers through a voice
GNU Affero General Public License v3.0
1.97k stars 333 forks source link

Skip the code #5

Closed reihun closed 1 year ago

reihun commented 1 year ago

I don't want to hear the code . I want to skip it , just listen description

Manamama commented 1 year ago

Thank you: both versions 1.2 and 1.3 work great on the newest Chrome in Ubuntu.

Some tips about what to include in the Readme for the "GitHub newbies":

Otherwise a great tool which works in a couple of languages, subject to Google's STT and TTS capabilities, of course.

Manamama commented 1 year ago

Update: I have fed the code to ChatGPT and asked it to update with these missing features ;) Modify this code so that there is a settings option for no voice output. Show me the change:

The results are more than promising: __To add a settings option for no voice output, you can add a new variable called CN_NO_VOICE_OUTPUT and set it to false by default. Then, you can modify the CN_SayOutLoud function to check if CN_NO_VOICEOUTPUT is true before speaking the text. If it is true, the function can simply return without calling the speechSynthesis.speak function.

Here is an example of how you can make this change:_ [...] // Determine which word will cause this script to temporarily pause var CN_SAY_THIS_WORD_TO_PAUSE = "pause";

// Set this to true to disable voice output
var CN_NO_VOICE_OUTPUT = true;

and then:

// This function will say the given text out loud using the browser's speech synthesis API function CN_SayOutLoud(text) { if (!text) return;

    // Check if no voice output is enabled
    if (CN_NO_VOICE_OUTPUT) return;

It also even created a Settings menu item after some gentle prompting ;), but something is messed up and it does not toggle:

_// Open settings menu function CNOnSettingsIconClick() { [...]

// 7. No voice output
var checkbox = document.createElement("input");
checkbox.type = "checkbox";
checkbox.id = "TTGPTNoVoiceOutput";
checkbox.checked = CN_NO_VOICE_OUTPUT;

checkbox.addEventListener("change", function(event) {
  CN_NO_VOICE_OUTPUT = event.target.checked;
});

I am tempted to fork it ...

C-Nedelcu commented 1 year ago

Haha that is brilliant. I will follow your suggestions. We need an account for ChatGPT so that it can propose changes itself

C-Nedelcu commented 1 year ago

In V1.4 I am planning:

Manamama commented 1 year ago

Way to go, Nedelcu! Ta for listening to us. For the time being, I had created two buttons, one with your talking 1.3 ver. code, the current one, and the second with my (ok, ChatGPT's: me being no coder) 1.3.1 default silence one.

A further feature request: add wget or like so that it can be fed by voice with live URLs ;)... (FYI, I manually tested this by pasting such content manually, and only 20 sentences or like are really fed into AI ChatGPT' episodic memory alas, despite GPT's self declarations that it can remeber all).

C-Nedelcu commented 1 year ago

Hello @Manamama
Can you tell me more about what you mean for your future request regarding wget? I am not sure I understand what you are trying to achieve? Do you want to feed a message that will be sent to the bot ? While that could be useful, it doesn't really fall into the scope of this project which is just to talk to the bot with voice. Now, there could definitely be a toolbox project to add features to ChatGPT with your ideas and many more.

C-Nedelcu commented 1 year ago

Hello,

I have just published v1.4

I think this means we can close the current issue. Feel free to create a new thread if you have more features to suggest :) I will be working on a Chrome extension soon