guan-0.0.99
This commit is contained in:
		| @@ -1,7 +1,7 @@ | |||||||
| [metadata] | [metadata] | ||||||
| # replace with your username: | # replace with your username: | ||||||
| name = guan | name = guan | ||||||
| version = 0.0.98 | version = 0.0.99 | ||||||
| author = guanjihuan | author = guanjihuan | ||||||
| author_email = guanjihuan@163.com | author_email = guanjihuan@163.com | ||||||
| description = An open source python package | description = An open source python package | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
|  |  | ||||||
| # With this package, you can calculate band structures, density of states, quantum transport and topological invariant of tight-binding models by invoking the functions you need. Other frequently used functions are also integrated in this package, such as file reading/writing, figure plotting, data processing. | # With this package, you can calculate band structures, density of states, quantum transport and topological invariant of tight-binding models by invoking the functions you need. Other frequently used functions are also integrated in this package, such as file reading/writing, figure plotting, data processing. | ||||||
|  |  | ||||||
| # The current version is guan-0.0.98, updated on June 29, 2022. | # The current version is guan-0.0.99, updated on July 06, 2022. | ||||||
|  |  | ||||||
| # Installation: pip install --upgrade guan | # Installation: pip install --upgrade guan | ||||||
|  |  | ||||||
| @@ -333,6 +333,8 @@ guan.txt_to_audio(txt_path, rate=125, voice=1, read=1, save=0, print_text=0) | |||||||
|  |  | ||||||
| guan.pdf_to_audio(pdf_path, rate=125, voice=1, read=1, save=0, print_text=0) | guan.pdf_to_audio(pdf_path, rate=125, voice=1, read=1, save=0, print_text=0) | ||||||
|  |  | ||||||
|  | guan.compress_mp3(mp3_path, output_filename='a.mp3', bitrate='16k') | ||||||
|  |  | ||||||
| guan.play_academic_words(reverse=0, random_on=0, bre_or_ame='ame', show_translation=1, show_link=1, translation_time=2, rest_time=1) | guan.play_academic_words(reverse=0, random_on=0, bre_or_ame='ame', show_translation=1, show_link=1, translation_time=2, rest_time=1) | ||||||
|  |  | ||||||
| guan.play_element_words(random_on=0, show_translation=1, show_link=1, translation_time=2, rest_time=1) | guan.play_element_words(random_on=0, show_translation=1, show_link=1, translation_time=2, rest_time=1) | ||||||
| @@ -2356,7 +2358,7 @@ def pdf_to_text(pdf_path): | |||||||
|  |  | ||||||
| ## audio | ## audio | ||||||
|  |  | ||||||
| def str_to_audio(str='hello world', rate=125, voice=1, read=1, save=0, print_text=0): | def str_to_audio(str='hello world', filename='str', rate=125, voice=1, read=1, save=0, compress=0, bitrate='16k', print_text=0): | ||||||
|     import pyttsx3 |     import pyttsx3 | ||||||
|     if print_text==1: |     if print_text==1: | ||||||
|         print(str) |         print(str) | ||||||
| @@ -2365,14 +2367,19 @@ def str_to_audio(str='hello world', rate=125, voice=1, read=1, save=0, print_tex | |||||||
|     engine.setProperty('voice', voices[voice].id) |     engine.setProperty('voice', voices[voice].id) | ||||||
|     engine.setProperty("rate", rate) |     engine.setProperty("rate", rate) | ||||||
|     if save==1: |     if save==1: | ||||||
|         engine.save_to_file(str, 'str.mp3') |         engine.save_to_file(str, filename+'.mp3') | ||||||
|         engine.runAndWait() |         engine.runAndWait() | ||||||
|         print('MP3 file saved!') |         print('MP3 file saved!') | ||||||
|  |         if compress==1: | ||||||
|  |             import os | ||||||
|  |             os.rename(filename+'.mp3', 'temp.mp3') | ||||||
|  |             compress_mp3('temp.mp3', output_filename=filename+'.mp3', bitrate=bitrate) | ||||||
|  |             os.remove('temp.mp3') | ||||||
|     if read==1: |     if read==1: | ||||||
|         engine.say(str) |         engine.say(str) | ||||||
|         engine.runAndWait() |         engine.runAndWait() | ||||||
|  |  | ||||||
| def txt_to_audio(txt_path, rate=125, voice=1, read=1, save=0, print_text=0): | def txt_to_audio(txt_path, rate=125, voice=1, read=1, save=0, compress=0, bitrate='16k', print_text=0): | ||||||
|     import pyttsx3 |     import pyttsx3 | ||||||
|     f = open(txt_path, 'r', encoding ='utf-8') |     f = open(txt_path, 'r', encoding ='utf-8') | ||||||
|     text = f.read() |     text = f.read() | ||||||
| @@ -2384,15 +2391,20 @@ def txt_to_audio(txt_path, rate=125, voice=1, read=1, save=0, print_text=0): | |||||||
|     engine.setProperty("rate", rate) |     engine.setProperty("rate", rate) | ||||||
|     if save==1: |     if save==1: | ||||||
|         import re |         import re | ||||||
|         file_name = re.split('[/,\\\]', txt_path)[-1][:-4] |         filename = re.split('[/,\\\]', txt_path)[-1][:-4] | ||||||
|         engine.save_to_file(text, file_name+'.mp3') |         engine.save_to_file(text, filename+'.mp3') | ||||||
|         engine.runAndWait() |         engine.runAndWait() | ||||||
|         print('MP3 file saved!') |         print('MP3 file saved!') | ||||||
|  |         if compress==1: | ||||||
|  |             import os | ||||||
|  |             os.rename(filename+'.mp3', 'temp.mp3') | ||||||
|  |             compress_mp3('temp.mp3', output_filename=filename+'.mp3', bitrate=bitrate) | ||||||
|  |             os.remove('temp.mp3') | ||||||
|     if read==1: |     if read==1: | ||||||
|         engine.say(text) |         engine.say(text) | ||||||
|         engine.runAndWait() |         engine.runAndWait() | ||||||
|  |  | ||||||
| def pdf_to_audio(pdf_path, rate=125, voice=1, read=1, save=0, print_text=0): | def pdf_to_audio(pdf_path, rate=125, voice=1, read=1, save=0, compress=0, bitrate='16k', print_text=0): | ||||||
|     import pyttsx3 |     import pyttsx3 | ||||||
|     text = guan.pdf_to_text(pdf_path) |     text = guan.pdf_to_text(pdf_path) | ||||||
|     text = text.replace('\n', ' ') |     text = text.replace('\n', ' ') | ||||||
| @@ -2404,14 +2416,25 @@ def pdf_to_audio(pdf_path, rate=125, voice=1, read=1, save=0, print_text=0): | |||||||
|     engine.setProperty("rate", rate) |     engine.setProperty("rate", rate) | ||||||
|     if save==1: |     if save==1: | ||||||
|         import re |         import re | ||||||
|         file_name = re.split('[/,\\\]', pdf_path)[-1][:-4] |         filename = re.split('[/,\\\]', pdf_path)[-1][:-4] | ||||||
|         engine.save_to_file(text, file_name+'.mp3') |         engine.save_to_file(text, filename+'.mp3') | ||||||
|         engine.runAndWait() |         engine.runAndWait() | ||||||
|         print('MP3 file saved!') |         print('MP3 file saved!') | ||||||
|  |         if compress==1: | ||||||
|  |             import os | ||||||
|  |             os.rename(filename+'.mp3', 'temp.mp3') | ||||||
|  |             compress_mp3('temp.mp3', output_filename=filename+'.mp3', bitrate=bitrate) | ||||||
|  |             os.remove('temp.mp3') | ||||||
|     if read==1: |     if read==1: | ||||||
|         engine.say(text) |         engine.say(text) | ||||||
|         engine.runAndWait() |         engine.runAndWait() | ||||||
|  |  | ||||||
|  | def compress_mp3(mp3_path, output_filename='a.mp3', bitrate='16k'): | ||||||
|  |     # Note: Beside the installation of pydub, you may also need download FFmpeg on http://www.ffmpeg.org/download.html and add the bin path to the environment variable. | ||||||
|  |     from pydub import AudioSegment | ||||||
|  |     sound = AudioSegment.from_mp3(mp3_path) | ||||||
|  |     sound.export(output_filename,format="mp3",bitrate=bitrate) | ||||||
|  |  | ||||||
| ## words | ## words | ||||||
|  |  | ||||||
| def play_academic_words(reverse=0, random_on=0, bre_or_ame='ame', show_translation=1, show_link=1, translation_time=2, rest_time=1): | def play_academic_words(reverse=0, random_on=0, bre_or_ame='ame', show_translation=1, show_link=1, translation_time=2, rest_time=1): | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user