Задать вопрос
@grtakfo

Как с помощью бота на TeleBot конвертировать обычное видео и отправлять его тому же пользователю уже как видеосообщение (video_note )?

Попробовал несколькими методами, при использовании каждого бот присылает обычное видео.

Метод 1:
@bot.message_handler(commands=['start'])
def handle_video(message):
    bot.reply_to(message, f"Привет, отправь мне видео и я сделаю из него кружочек!")


@bot.message_handler(content_types=['video'])
def handle_video(message):
    try:
        video_id = message.video.file_id

        # Отправка видео в виде видео-заметки
        bot.send_video_note(message.chat.id, video_id)

    except Exception as e:
        bot.reply_to(message, f"Произошла ошибка: {e}")

bot.polling()


Метод 2:

@bot.message_handler(commands=['start'])
def handle_video(message):
    bot.reply_to(message, f"Привет, отправь мне видео и я сделаю из него кружочек!")

@bot.message_handler(content_types=['video'])
def handle_video(message):
    try:
        video_id = message.video.file_id
        file_info = bot.get_file(video_id)
        downloaded_file = bot.download_file(file_info.file_path)

        with open('input_video.mp4', 'wb') as new_file:
            new_file.write(downloaded_file)

        # Загрузка видео и обрезка до квадратного формата (например, 1:1)
        video = VideoFileClip('input_video.mp4')
        width, height = video.size
        min_dimension = min(width, height)
        square_video = video.crop(x_center=width / 2, y_center=height / 2, width=min_dimension, height=min_dimension)

        # Сохранение обрезанного видео
        square_video.write_videofile('output_video.mp4')

        # Отправка обрезанного видео как обычное видеосообщение
        with open('output_video.mp4', 'rb') as video_file:
            bot.send_video_note(message.chat.id, video_file)

    except Exception as e:
        bot.reply_to(message, f"Произошла ошибка: {e}.")

bot.polling()
  • Вопрос задан
  • 564 просмотра
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Devman
    Чат-боты на Python
    2 месяца
    Далее
  • Skillfactory
    Профессия Fullstack-разработчик на Python
    14 месяцев
    Далее
  • AndroidSprint
    Kotlin основы: ИИ-ментор 24/7 + персональный наставник
    2 месяца
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 75 000 ₽
ITK academy Нижний Новгород
от 75 000 до 125 000 ₽
JustBusiness Санкт-Петербург
от 130 000 до 150 000 ₽