|
Компьютерный форум OSzone.net » Цифровые технологии » Видео и аудио: обработка и кодирование » Создание скрипта конвертации видео FFmpeg |
|
Создание скрипта конвертации видео FFmpeg
|
Старожил Сообщения: 220 |
Профиль | Отправить PM | Цитировать Здравствуйте!
Помогите написать скрипт для конвертации видео через утилиту FFmpeg Требования: 1. Скрипт написан в формате cmd/bat 2. Скрипт обрабатывает содержимое каталога и всех подкаталогов, где он лежит 3. Установка переменных через SET: 3.1. расположение исполняемого файла ffmpeg.exe 3.2. указание желаемого битрейда видео 3.3. указание желаемого пресета конвертации (к примеру, ultrafast) 3.4. указание желаемого разрешения при масштабировании (описано далее) 3.5. указание форматов файлов, которые нужно конвертировать 4. Видео: Скрипт ищет файлы (п3.5) и конвертирует в формат MP4, кодек h264 с переменным битрейтом (п.3.2) в 2 прохода. Распознает разрешение видео и если по большей стороне оно больше чем указано в п3.4, масштабирует до указаного с сохранением пропорций. К примеру, указано 1280, а видео 1080х1920 (вертикальное), тогда видео будет сконвертировано в 720х1280. 5. Аудио: Аудио будет сконвертировано в AC-3. Каналы - как у исходного, частота дискретизации - как у исходного, битрейд аудио: если превышает допустимый битрейд для AC-3 640kbit/s, конвертировать в этот битрейд, иначе, оставить как в оригинале. Благодарю! |
|
Отправлено: 14:30, 11-07-2024 |
Ветеран Сообщения: 2711
|
Профиль | Отправить PM | Цитировать это на собеседование тестовая задача чтоль?)
|
Отправлено: 17:16, 11-07-2024 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
fascinating rhythm Сообщения: 6579
|
Профиль | Отправить PM | Цитировать Bio_Hazard, на каком этапе реализации у вас возникли затруднения?
|
------- Отправлено: 17:57, 11-07-2024 | #3 |
Старожил Сообщения: 220
|
Профиль | Отправить PM | Цитировать bredych, та нет. Для личного использования.
DJ Mogarych, на этапе, когда я замучил чат GPT, но он рабочего варианта не скинул. Было пару версий скрипта, но там либо масштабирование не работало, либо не кодировалось вообще. |
Отправлено: 18:07, 11-07-2024 | #4 |
fascinating rhythm Сообщения: 6579
|
Профиль | Отправить PM | Цитировать Это задача не столько сложная, сколько требующая много времени на реализацию из-за большого количества требований.
Почитайте пару статей по ffmpeg, через несколько дней уже сможете реализовать большинство пунктов. |
|
------- Отправлено: 22:08, 11-07-2024 | #5 |
Старожил Сообщения: 220
|
Профиль | Отправить PM | Цитировать UPD
Добил обработку видео, осталось добавить аудио Скрытый текст
@echo off color 0A chcp 65001 setlocal enabledelayedexpansion SET "FFMPEG_PATH=ffmpeg.exe" SET "FORMATS=*.mp4 *.avi *.mkv *.mov *.flv *.wmv" SET "VIDEO_BITRATE=8000k" :: ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow, placebo SET "PRESET=ultrafast" SET "MAX_SIZE=1920" if not exist "%FFMPEG_PATH%" ( echo FFmpeg не найден! pause exit /b ) for %%f in (%FORMATS%) do ( set "input=%%f" set "output_temp=%%~nf_temp.mp4" set "output_final=%%~nf_converted.mp4" for /f "tokens=1,2 delims=x " %%a in ('%ffmpeg_path% -i "%%f" 2^>^&1') do ( set "width=%%a" set "height=%%b" ) if !width! gtr !height! ( set "scale_width=%MAX_SIZE%" set "scale_height=-1" ) else ( set "scale_width=-1" set "scale_height=%MAX_SIZE%" ) "%FFMPEG_PATH%" -i "!input!" -vf "scale=!scale_width!:!scale_height!" -c:v libx264 -b:v !VIDEO_BITRATE! -c:a copy -preset !PRESET! -pass 1 -an -f mp4 NUL "%FFMPEG_PATH%" -i "!input!" -vf "scale=!scale_width!:!scale_height!" -c:v libx264 -b:v !VIDEO_BITRATE! -c:a copy -preset !PRESET! -pass 2 "!output_temp!" move /Y "!output_temp!" "!output_final!" ) endlocal |
Последний раз редактировалось Bio_Hazard, 15-07-2024 в 09:35. Отправлено: 10:04, 12-07-2024 | #6 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
ffmpeg добавление звука в видео с оффсетом | bredych | Видео и аудио: обработка и кодирование | 4 | 18-07-2022 16:21 | |
FFMPEG - Захват видео с веб-камеры в Ubuntu | aimaim | Видео и аудио: обработка и кодирование | 0 | 14-03-2016 15:18 | |
Возможно ли обрезать несколько видео файлов одним кликом, без конвертации? | Amiranchik | Видео и аудио: обработка и кодирование | 8 | 03-10-2015 07:20 | |
VBS/WSH/JS - создание скрипта для создание текстовика с именем учетки | velsati | Скриптовые языки администрирования Windows | 0 | 01-04-2013 16:55 | |
Резка и склейка видео без конвертации | optima22 | Видео и аудио: обработка и кодирование | 18 | 28-01-2008 14:03 |
|