Извлекать входной файл динамически в командный файл для выполнения операций с ним - PullRequest
0 голосов
/ 25 марта 2019

Я создал , который использует для извлечения кадров видео в .jpg.

ffmpeg -i sample.mp4  -r 5 E:\frames\createdFrames%%d.jpg

Он работает совершенно нормально и создает нужные кадры, однако я хочу дать пример видео динамически, то есть передать его при выполнении командного файла.

Как я могу передать входной файл динамически?

Если возможно, также обсудите, как динамически хранить файл, то есть передать каталог, в котором я хочу сохранить файл, когда выполняется пакет.

1 Ответ

0 голосов
/ 25 марта 2019
@echo off
setlocal
set "infile=%~1"
set "outdir=%~2"
if not defined infile set /p "infile=Input file: " || exit /b 1
if not defined outdir set /p "outdir=Output dir: " || exit /b 2
if not exist "%outdir%" md "%outdir%" || exit /b 3
ffmpeg -i "%infile%" -r 5 "%outdir%\createdFrames%%d.jpg"

Может передавать аргументы в пакетный файл, например, batch.bat sample.mp4 E:\frames

Если аргумент не передается, приглашение ввода запрашивает входной файл.Если не определено, выйдет.То же самое происходит с вводом выходного каталога.

Выходной каталог создается при необходимости и закрывается при сбое.

Если все в порядке, запускается команда ffmpeg.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...