Damien Elmes
b9ee7f49d8
don't wait as long for player to stop
2020-01-23 17:27:07 +10:00
Damien Elmes
d2336f3829
iconFromRef() compat
2020-01-23 17:27:07 +10:00
Damien Elmes
de3fe320c0
look through negated conditionals instead of just ignoring them
...
https://anki.tenderapp.com/discussions/ankidesktop/38220-bug-in-2119-regarding-computation-of-req
2020-01-23 17:27:07 +10:00
Damien Elmes
5a79bc69b8
fix audio displaying console window on Windows
2020-01-23 17:27:07 +10:00
Damien Elmes
982aca0c99
fix white flash on webview load
2020-01-23 17:27:07 +10:00
Damien Elmes
7dcbc7efec
basic night mode support
...
Forces the Fusion theme when running night mode, so we don't need
to work around platform themes that don't respond to the defined
palette.
Feedback/suggestions on the chosen colours welcome - _vars.scss is the
file to change if you want to experiment with adjustments.
2020-01-23 17:27:07 +10:00
Damien Elmes
44f2f16546
move css files to scss
2020-01-23 17:27:07 +10:00
Damien Elmes
8b6cce52e1
Merge pull request #425 from yhoiseth/msgfmt-command-not-found
...
Prevent "msgfmt: command not found" error
2020-01-23 17:23:21 +10:00
Damien Elmes
30bac29682
Merge pull request #426 from yhoiseth/remote-server-run-types
...
RemoteServer._run type hints
2020-01-23 17:22:58 +10:00
Yngve Høiseth
50a69fd55e
Add missing contributor
2020-01-22 23:34:14 +01:00
Yngve Høiseth
82fdce32f2
Type hint RemoteServer._run
2020-01-22 23:33:37 +01:00
Yngve Høiseth
017ff97852
Add missing contributor
2020-01-22 23:10:27 +01:00
Yngve Høiseth
e1e08ae985
Prevent "msgfmt: command not found" error
2020-01-22 22:53:06 +01:00
Damien Elmes
95b497ccf0
handle spaces in voices, add platform prefix
2020-01-22 17:50:08 +10:00
Damien Elmes
3f3a8fc4ab
move ignore statements for python 3.7
...
sigh :-(
https://github.com/python/mypy/issues/3251#issuecomment-490298556
2020-01-22 16:54:18 +10:00
Damien Elmes
cc02e95049
fix pylib checks failing when aqt unavailable
2020-01-22 16:11:40 +10:00
Damien Elmes
0ad6e8b58e
make pylint happy
2020-01-22 15:37:58 +10:00
Damien Elmes
cfa0f65311
add a hook for when playback begins
2020-01-22 14:41:32 +10:00
Damien Elmes
6af7933084
make .command() behave the same way for mplayer and mpv
2020-01-22 14:11:25 +10:00
Damien Elmes
be3393fcb4
simplify taskman, and add .run_on_main()
2020-01-22 14:09:51 +10:00
Damien Elmes
8236f800ae
add pause and seek forward/back shortcuts to review screen
2020-01-22 12:50:33 +10:00
Damien Elmes
d54f719558
add a webview_did_receive_js_message hook
2020-01-22 11:06:12 +10:00
Damien Elmes
a5db36e208
add optional result_callback arg to pycmd() definition
2020-01-22 10:28:45 +10:00
Damien Elmes
b870abd2d4
include card ordinal in clayout
2020-01-22 10:28:10 +10:00
Damien Elmes
f92bb55c25
add option in prefs to hide replay audio buttons
2020-01-21 21:00:17 +10:00
Damien Elmes
fd95336933
mypy fixes
2020-01-21 20:42:06 +10:00
Damien Elmes
19b3a15146
formatting fixes
2020-01-21 20:39:25 +10:00
Damien Elmes
37d2a4d43c
add a helper for caching generated files
2020-01-21 20:35:23 +10:00
Damien Elmes
b00a9010be
when matching voices, need to check language matches too
2020-01-21 20:35:00 +10:00
Damien Elmes
ccd7150136
fix mpv args
...
https://anki.tenderapp.com/discussions/ankidesktop/38186-mpvprocesserror-unable-to-start-process
2020-01-21 19:29:50 +10:00
Damien Elmes
5351a5f396
compare only on rank, as voices may be subclassed
2020-01-21 18:33:14 +10:00
Damien Elmes
84711f8fe2
add Windows TTS support
2020-01-21 17:34:47 +10:00
Damien Elmes
7b3d701ad5
add replay buttons to reviewing screen
2020-01-21 14:47:03 +10:00
Damien Elmes
4fb227ca4c
added flag_av_tags() for replay button support
2020-01-21 14:44:27 +10:00
Damien Elmes
7504ef6857
make sure we don't mutate list passed to play_from_tags()
2020-01-21 14:43:33 +10:00
Damien Elmes
98802c9c9a
deal with spaces in macOS voices like "Bad News"
2020-01-21 13:38:37 +10:00
Damien Elmes
2ac86ac400
add file-based TTS say implementation as well
2020-01-21 13:21:43 +10:00
Damien Elmes
c713683f63
add rank handling to TTS; parse TTS args in get_av_tags()
2020-01-21 12:41:37 +10:00
Damien Elmes
66e277e44b
more TTS and sound work
...
- use provided language and voices when playing on Mac
- fix hang in waiting for termination
- allow players to return a rank for a given tag,
which will allow for the best matching player to be chosen
depending on the context (eg, prioritize one player for videos,
one tts player for certain voices, etc)
2020-01-21 11:34:25 +10:00
Damien Elmes
d4d16d35a8
spawn a new slave mode mplayer for each file
...
This solves a few problems:
- We no longer need to write temporary files to disk, as files
passed on the command line with non-Latin text can be read by mplayer.
- We no longer need to deal with mplayer processes left around in
the background that have failed to terminate.
- We don't need to deal with the added complexity that comes with
polling mplayer's status output to determine when the file has finished
playing.
Also add seek_relative(), toggle_pause() and shutdown() as optional
methods on AVPlayer.
2020-01-21 08:55:15 +10:00
Damien Elmes
01f3fd06d6
support interrupting say; fix race in simple player
2020-01-21 07:28:19 +10:00
Damien Elmes
1beae4f858
pass task manager in instead of creating a new one
2020-01-21 06:49:09 +10:00
Damien Elmes
0b5e22253b
add .stop() to mpv
2020-01-21 06:45:32 +10:00
Damien Elmes
a6e6ffae06
get mpv slave mode working with new API
...
Also move the mpv-specific hooks into AVPlayer
2020-01-20 22:01:38 +10:00
Damien Elmes
d9c240afa2
minor tidyup to sound.py
2020-01-20 21:03:22 +10:00
Damien Elmes
7900f68051
don't need allSounds/stripSounds in qt's sound.py
2020-01-20 20:13:01 +10:00
Damien Elmes
02ec3f149c
update qt/ to use the new API
2020-01-20 20:10:38 +10:00
Damien Elmes
caac4527e9
add a proof of concept TTS implementation on Mac
2020-01-20 20:08:19 +10:00
Damien Elmes
707ac587ec
rework the audio player API and add a simpler player implementation
...
- the new API operates on AVTags so it can support TTS as well as
audio files
- added a simple "run for each file" implementation for mpv and mplayer.
- will need to test handling of unicode filenames on Windows
- the old mpv and mplayer code is currently not active
2020-01-20 20:07:11 +10:00
Damien Elmes
5084438a0b
we can depend on pyaudio being available now that the code is in qt/
2020-01-20 19:21:24 +10:00