Duolingo TTS Controls

Provides playback controls for some of the challenges on Duolingo.

什么是Duolingo TTS Controls?

Duolingo TTS Controls是由blmage开发的Chrome扩展程序,该扩展的主要功能是“Provides playback controls for some of the challenges on Duolingo.”。

扩展截图

screenshot
screenshot
screenshot
screenshot

下载Duolingo TTS Controls扩展crx文件

下载Duolingo TTS Controls扩展crx格式的文件,手动将Chrome插件安装到浏览器中,也可以将crx文件分享给朋友,轻松安装Chrome插件。

扩展使用说明

                        For more detailed information, screenshots, or if you have any support request, visit the development page of the extension here:
https://github.com/blmage/duolingo-tts-controls

[Features]

- Adds controls to each sound of the listening / speaking / translation challenges.
- Full controls are available by hovering over the buttons or using the keyboard shortcuts, and feature:
    - a rate (speed) slider,
    - a volume slider,
    - a seek bar,
    - a play/pause button,
    - a stop button,
    - a "pin" button (to define the current position as the new starting position).
- Strives to blend seamlessly in Duolingo's UI, and to be compatible with custom themes such as Darklingo++.

[Keyboard shortcuts]

The selected control panel is identifiable by the keyboard icon that is added next to its buttons.

In order to use the keyboard shortcuts, the selected control panel must be focused by pressing [ Ctrl ].
 
Once focused, the keyboard icon becomes highlighted, and you can use:
    - [ Ctrl ] to focus back the answer input,
    - [ Tab ] to select (and focus) the next control panel,
    - [ < ] / [ > ]  to decrease / increase the playback rate (speed) (or [ Ctrl ] + [ ← ] / [ → ]),
    - [ ↓ ] / [ ↑ ] to decrease / increase the playback volume,
    - [ ← ] / [ → ] to move the position backward / forward,
    - [ 0 ] .. [ 9 ] to set the position at 0 .. 90% of the duration,
    - [ Home ] to set the position at the start,
    - [ End ] to set the position at the end (think of it more or less as a stop button),
    - [ Space ] / [ k ]to play / pause the sound  (or [ Ctrl ] + [ ↑ ]),
    - [ p ] to "pin" the current position (the sound will now start from there each time it is played) (or [ Ctrl ] + [ ↓ ]).

Shortcuts behind parentheses are provided as alternatives for when the main ones are not available.

This can happen for example when a "keyboard-aware" word bank is available for the current challenge.

[Limitations]

- The extension is deeply tied to the inner workings of Duolingo, meaning that significant changes on their side could (temporarily) break it. If that happens, you can either:
    - wait for me to fix it (you can open an issue on the support page if there is none about it yet),
    - if you're a developer, try to fix it yourself, then open a related PR on the development page.
- Due to hard limitations with the underlying technology (sounds are not accessible via Ajax requests, preventing us from using the Web Audio API), the volume can not be raised over 100%.                    

扩展基本信息

名称 Duolingo TTS Controls Duolingo TTS Controls
ID hfgbpmknceenkbljmjlogkmhbpnbiika
官方URL https://chromewebstore.google.com/detail/duolingo-tts-controls/hfgbpmknceenkbljmjlogkmhbpnbiika
简介 Provides playback controls for some of the challenges on Duolingo.
文件大小 69.67 KB
安装次数 470
当前版本 2.5.0
更新时间 2023-10-31
上架时间 2020-07-09
评分 5.00/5 共4次评分
开发者 blmage
电子邮箱 [email protected]
付费类型 free
扩展官网 https://github.com/blmage/duolingo-tts-controls
帮助页面URL https://github.com/blmage/duolingo-tts-controls/issues
支持的语言 en-US
manifest.json
{
    "update_url": "https:\/\/clients2.google.com\/service\/update2\/crx",
    "name": "Duolingo TTS Controls",
    "version": "2.5.0",
    "description": "Provides playback controls for some of the challenges on Duolingo.",
    "permissions": [
        "https:\/\/*.duolingo.com\/"
    ],
    "content_scripts": [
        {
            "matches": [
                "https:\/\/*.duolingo.com\/*"
            ],
            "js": [
                "src\/content.js"
            ],
            "run_at": "document_start"
        }
    ],
    "web_accessible_resources": [
        "src\/observer.js",
        "src\/ui.js",
        "assets\/css\/ui.css"
    ],
    "icons": {
        "16": "icons\/icon_16.png",
        "48": "icons\/icon_48.png",
        "128": "icons\/icon_128.png",
        "256": "icons\/icon_256.png",
        "512": "icons\/icon_512.png"
    },
    "manifest_version": 2
}