Python: как изменить громкость звука?
Я использовал winsound.Beep(frequency, duration)
потому что я хотел играть звуки с указанной частотой. Теперь мне нужно изменить громкость этих звуков. Как я могу это сделать? Я пытался получить помощь от pyaudio
но...
1 ответ
Решение
Если вы открыты для внешних библиотек, вы можете использовать pydub
манипулировать аудио (в том числе громкость) легко. Подробнее здесь.
Разные audio
форматы, такие как wav
, mp3
, ogg
, mp4
,wma
и т. д. доступны. Проверьте здесь для более подробной информации.
В основном мы конвертируем audio
для audiosegment
объект, а затем манипулировать им для различных атрибутов, используя pydub
,
pydub
можно установить с помощью:pip install pydub
№ 2.x иpip3 install pydub
# на 3.x
Вот пример:
from pydub import AudioSegment
from pydub.playback import play
song = AudioSegment.from_mp3("your_song.mp3")
# boost volume by 6dB
louder_song = song + 6
# reduce volume by 3dB
quieter_song = song - 3
#Play song
play(louder_song)
#save louder song
louder_song.export("louder_song.mp3", format='mp3')