【问题标题】:capture bash script with espeak commands in audio file在音频文件中使用 espeak 命令捕获 bash 脚本
【发布时间】:2022-10-24 21:09:15
【问题描述】:

我有一个使用 espeak 读出文本的脚本。脚本读出一行文本,然后休眠一段预定义的时间,然后再次读取,依此类推。

我想在音频文件中捕获输出。但是使用时:

./script_name.sh -- 标准输出 > 音频

没有音频进入文件。

脚本如下所示:

#!/bin/bash                                     
sleep   19                                      
        espeak  '   14  Pylon                       '
sleep   20                                      
        espeak  '   15  Gateway                     '
sleep   8                                       
        espeak  '   16  Assimilator                     '
sleep   38                                      
        espeak  '   20  Nexus   

我该怎么做才能将 espeak 声音捕获到文件中?

【问题讨论】:

    标签: bash espeak


    【解决方案1】:

    你需要这样做。

    sleep   19                                      
            espeak --stdout '   14  Pylon                       '
    sleep   20                                      
            espeak --stdout '   15  Gateway                     '
    sleep   8                                       
            espeak --stdout '   16  Assimilator                     '
    sleep   38                                      
            espeak --stdout '   20  Nexus   
    

    如果您希望标准输出打印是可选的,您可以执行以下操作:

    if [[ -n "$1" ]] && [[ "$1" == "--stdout" ]]; then
    sleep   19                                      
            espeak --stdout '   14  Pylon                       '
    sleep   20                                      
            espeak --stdout '   15  Gateway                     '
    sleep   8                                       
            espeak --stdout '   16  Assimilator                     '
    sleep   38                                      
            espeak --stdout '   20  Nexus  '
    else 
    sleep   19                                      
            espeak '   14  Pylon                       '
    sleep   20                                      
            espeak  '   15  Gateway                     '
    sleep   8                                       
            espeak  '   16  Assimilator                     '
    sleep   38                                      
            espeak  '   20  Nexus  '
    fi
    
    

    然后,如果您通过 script.sh --stdout 它将起作用。

    【讨论】:

    • 感谢您帮助我 Furkan。它就像你解释的那样工作。 if 语句的好功能。我会试试看。
    猜你喜欢
    • 2018-03-08
    • 2022-12-16
    • 1970-01-01
    • 2018-11-08
    • 1970-01-01
    • 1970-01-01
    • 2023-03-17
    • 2019-10-18
    相关资源
    最近更新 更多