Почему после отправки голосового сообщения в телеграм оно получается не таким?
У меня есть прога для обработки голоса в тг, когда я отправляю голосовое в бота и он отвечает обработанным голосовым сообщение, оно получается не такое как телеграмовское
from aiogram import Bot, Dispatcher, types
from aiogram.contrib.fsm_storage.memory import MemoryStorage
from aiogram.utils import executor
import librosa
import soundfile as sf
from scipy.signal import butter, lfilter
TOKEN_API = '6014039166:AAHJzJp4m9wtYBY8R7dVk8iNrSH8UpImJuo'
bot = Bot(TOKEN_API)
dp = Dispatcher(bot, storage=MemoryStorage())
async def on_startup(_):
print('Бот запущен')
@dp.message_handler(commands=['start'])
async def start(message: types.Message):
await message.answer('Привет, пришли голосовое для обработки')
@dp.message_handler(content_types=types.ContentType.VOICE)
async def process_voice_message(message: types.Message):
print(1)
file_id = message.voice.file_id
file_info = await bot.get_file(file_id)
file = await bot.download_file(file_info.file_path)
audio, sr = librosa.load(file)
def bandpass_filter(data, lowcut, highcut, fs, order=5):
print(2)
nyquist = 0.5 * fs
low = lowcut / nyquist
high = highcut / nyquist
b, a = butter(order, [low, high], btype='band')
y = lfilter(b, a, data)
return y
filtered_audio = bandpass_filter(audio, 300, 3000, sr)
shifted_audio= librosa.effects.pitch_shift(filtered_audio, sr=sr, n_steps=4)
output_file = 'output_female_like_voice.ogg'
sf.write(output_file, shifted_audio, sr)
with open(output_file, 'rb') as new_gs:
await bot.send_audio(message.from_user.id, new_gs)
if __name__ == '__main__':
executor.start_polling(dp, on_startup=on_startup,skip_updates=True)