Ogłoś godzinę w tej godzinie?

10

Na Macu jest funkcja, która pozwala na ustne informowanie komputera o godzinie, czy w Ubuntu jest coś podobnego? Czy jest to pakiet, który już to robi, czy muszę skonfigurować coś takiego, sayaby odczytać godzinę? A jeśli tak, to jak mam to zrobić? Używam Ubuntu GNOME 15.04 z GNOME 3.16.


źródło
datewypisuje to w tekście. może mógłbyś przepuścić to przez program zamiany tekstu na mowę?
Promille
@Wildcard: Chociaż musiałbym znacznie przyciąć i zmienić wyjście tego polecenia, ponieważ mówi zbyt wiele, wszystko, czego potrzebuję i chcę na godzinę, to coś w stylu ( [time]zastąpione godziną):It is now [time] O'clock
Zobacz moją odpowiedź, mam nadzieję, że może to pomóc. Możesz również dodać coś w stylu „Teraz jest ...”, zanim ogłosi czas zsed
Promille
Wow, to brzmi denerwująco.
Wyścigi lekkości na orbicie
@LightnessRacesinOrbit: Tak, robi się tak ...: D

Odpowiedzi:

20

Możesz użyć swojego crontab

  1. Utwórz mały skrypt

    mkdir -p ~/bin
    nano ~/bin/say_hour
    

    dodaj kod poniżej

    #!/usr/bin/env bash
    my_date=$(date +'%H:%M:%S')
    padsp espeak "$my_date"
    

    i ustawić prawa do plików wykonywalnych

    chmod +x ~/bin/say_hour
    
  2. Edytuj swój crontab przez

    crontab -e
    

    i dodaj konfigurację poniżej

    0 * * * * bin/say_hour
    

Możesz zastąpić espeaklinię jedną z poniższych możliwości

sudo apt-get install espeak
espeak $(date +"%H:%M:%S")
espeak $(date +%T)

# Adjust speed with `-s`, in words per minute, default is 160
espeak -s 10 $(date +"%H:%M:%S")

lub

sudo apt-get install festival
date +"%H:%M:%S" | festival --tts
date +%T | festival --tts

lub

sudo apt-get install speech-dispatcher
spd-say $(date +"%H:%M:%S")
spd-say $(date +%T)

# Adjust speed with  (-100 .. 0 .. 100)
spd-say -r -50 $(date +%T)

  • %I - format godzinowy (01..12)
  • %H - godzina w formacie (00..23)
  • %M - minuta (00..59)
  • %S - drugi (00..60)
  • %T- HH:MM:SSw formacie 24

Więcej opcji za pomocą man date, man espeak, man festivaliman spd-say

AB
źródło
To nie działa, chce tylko wkładu i daje mi jeden z nich > .
@AB nice =) ... Czy można regulować prędkość?
Ravan
1
wow @AB działa :) +1
Ravan
Czy możesz również podać w swojej odpowiedzi, jak uruchomić go na godzinę, być może z zadaniem crona, o czym wiem i jak one działają, ale nigdy tak naprawdę nie ustawiłem go ręcznie.
W rzeczywistości mam pod biurkiem Raspberry Pi, który robi dokładnie to (i wiele więcej). Działa nie pełny Festiwal, ale Festiwal Światła ( flite). Mówi godzinę o pełnej godzinie i (gg: mm) za każdym razem, gdy wysyłam mu pakiet Wake-on-Lan. Ustawiłem go tak, aby mówił nieco wolniej ( set Duration_stretch=1.3), aby uzyskać przyjemniejszy ton głosu.
Jos
5

Daje to czas na mowę (dzięki kos za lepszą składnię):

Pierwsza instalacja say, która znajduje się w gnustep-gui-runtime:

sudo apt-get install gnustep-gui-runtime

Następnie uruchom.

Tryb 24-godzinny:

say "$(date +%R)"

Tryb 12-godzinny

say "$(date +%I:%M%p)"
Promille
źródło
Czy możesz również podać w swojej odpowiedzi, jak uruchomić go na godzinę, być może z zadaniem crona, o czym wiem i jak one działają, ale nigdy tak naprawdę nie ustawiłem go ręcznie.
Przepraszam, nie wiem jak to zrobić @ParanoidPanda. Jeśli ktoś to zrobi, może to opublikować jako komentarz, a ja umieszczę go w moim poście
Promille,
@Wildcard: AB umieścił go w swojej odpowiedzi, więc prawdopodobnie możesz po prostu wziąć go stamtąd lub przeczytać, co skomentował. :)
@ParanoidPanda AB ma zaakceptowaną odpowiedź, więc to nie jest tak ważne
Promille