歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux服務器 >> 使Linux終端朗讀文字的小技巧分享

使Linux終端朗讀文字的小技巧分享

日期:2017/3/2 16:28:02   编辑:Linux服務器

  對於那些不能文字朗讀的設備,有個小工具可以實現文字說話的轉換器。用各種語言寫一些東西,espeak就可以朗讀給你。

  系統應該默認安裝了Espeak,如果你的系統沒有安裝,你可以使用下列命令來安裝:

  代碼如下:

  # apt-get install espeak (Debian)

  # yum install espeak (CentOS)

  # dnf install espeak (Fedora 22 及其以後)

  你可以讓espeak接受標准輸入的交互輸入並及時轉換成語音朗讀出來。如下:

  代碼如下:

  $ espeak [按回車鍵]

  更詳細的輸出你可以這樣做:

  代碼如下:

  $ espeak --stdout | aplay [按回車鍵][再次回車]

  espeak設置靈活,也可以朗讀文本文件。你可以這樣設置:

  代碼如下:

  $ espeak --stdout /path/to/text/file/file_name.txt | aplay [Hit Enter]

  espeak可以設置朗讀速度。默認速度是160詞每分鐘。使用-s參數來設置。

  設置每分鐘30詞的語速:

  代碼如下:

  $ espeak -s 30 -f /path/to/text/file/file_name.txt | aplay

  設置每分鐘200詞的語速:

  代碼如下:

  $ espeak -s 200 -f /path/to/text/file/file_name.txt | aplay

  你可以使用各種語言,讓espeak如上面說的以你選擇的語言朗讀。使用下列命令來獲得語言列表:

  代碼如下:

  $ espeak --voices

  下面再來分享一段C語言程序中調用espeak的示例:

  C/C++ Code復制內容到剪貼板

  #include // 包括espeak的頭文件

  #include

  #include

  int main(int argc, char **argv)

  {

  char word[] = "吃葡萄不吐葡萄皮";

  espeak_Initialize(AUDIO_OUTPUT_PLAYBACK, 0, NULL, 0); // 初始化

  espeak_SetVoiceByName("zh+f2"); // 設置音源為中文女聲

  espeak_Synth(word, strlen(word) + 1, 0, POS_CHARACTER, 0,

  espeakCHARS_UTF8, NULL, NULL); // 發音

  sleep(3); // 等一段時間,否則程序會立即退出,聽不到發音

  espeak_Terminate(); // 回收資源

  }

Copyright © Linux教程網 All Rights Reserved