Я новичок в обработке видео.
Я хотел бы понять, как читать следующую инструкцию ffmpeg нижеimport subprocess
L=subprocess.call('ffmpeg -i %s -r 1 -s qvga -t 1 -f image2 %s' % (videoName,frameName), shell=True)
. С помощью этой инструкции, как можно ее адаптировать, чтобы получить все кадры данное видео? Спасибо
Ваша команда ffmpeg полуобфузирована сценарием, поэтому фактическая команда неизвестна, но вот объяснение каждой опции: [ ! d2] -i указывает на вход. -r 1 устанавливает выходную частоту кадров в 1. Это не требуется, если вы хотите вывести одно изображение или хотите вывести все изображения. В этом примере он используется для вывода одного кадра в секунду, который пропускает много кадров. -s qvga устанавливает ширину вывода x height в «qvga», которая является псевдонимом для 320x240. -t 1 устанавливает длительность выхода в 1 секунду. Это не требуется, если вы хотите вывести одно изображение или хотите вывести все изображения. Он часто добавляется пользователями новичков, пытающимися вывести одно изображение, но вместо этого следует использовать -frames:v 1. -f image2 Часто избыточная опция, используемая для установки формата вывода или мультиплексора. Он используется, если ваше имя вывода неоднозначно (возможно, из-за сценариев). В противном случае ffmpeg автоматически выберет правильный мультиплексор для выходов изображения. Я хотел бы понять, как читать следующую инструкцию ffmpeg
Простейшая, неписанная команда для получения всех кадров:
ffmpeg -i input %04d.png
Это выведет 0001.png, 0002.png, 0003.png и т. д. Если вы хотите больше, чем числовую последовательность, вы можете использовать что-то вроде output_%05d.png, что приведет к output_00001.png. [!d12 ]
Для получения дополнительной информации см. документацию FFmpeg: Image Muxer.
Ваша команда ffmpeg полуобфузирована сценарием, поэтому фактическая команда неизвестна, но вот объяснение каждой опции: [ ! d2] -i указывает на вход. -r 1 устанавливает выходную частоту кадров в 1. Это не требуется, если вы хотите вывести одно изображение или хотите вывести все изображения. В этом примере он используется для вывода одного кадра в секунду, который пропускает много кадров. -s qvga устанавливает ширину вывода x height в «qvga», которая является псевдонимом для 320x240. -t 1 устанавливает длительность выхода в 1 секунду. Это не требуется, если вы хотите вывести одно изображение или хотите вывести все изображения. Он часто добавляется пользователями новичков, пытающимися вывести одно изображение, но вместо этого следует использовать -frames:v 1. -f image2 Часто избыточная опция, используемая для установки формата вывода или мультиплексора. Он используется, если ваше имя вывода неоднозначно (возможно, из-за сценариев). В противном случае ffmpeg автоматически выберет правильный мультиплексор для выходов изображения. Я хотел бы понять, как читать следующую инструкцию ffmpeg
Простейшая, неписанная команда для получения всех кадров:
ffmpeg -i input %04d.png
Это выведет 0001.png, 0002.png, 0003.png и т. д. Если вы хотите больше, чем числовую последовательность, вы можете использовать что-то вроде output_%05d.png, что приведет к output_00001.png.
Для получения дополнительной информации см. документацию FFmpeg: Image Muxer.
Ваша команда ffmpeg полуобфузирована сценарием, поэтому фактическая команда неизвестна, но вот объяснение каждой опции: [ ! d2] -i указывает на вход. -r 1 устанавливает выходную частоту кадров в 1. Это не требуется, если вы хотите вывести одно изображение или хотите вывести все изображения. В этом примере он используется для вывода одного кадра в секунду, который пропускает много кадров. -s qvga устанавливает ширину вывода x height в «qvga», которая является псевдонимом для 320x240. -t 1 устанавливает длительность выхода в 1 секунду. Это не требуется, если вы хотите вывести одно изображение или хотите вывести все изображения. Он часто добавляется пользователями новичков, пытающимися вывести одно изображение, но вместо этого следует использовать -frames:v 1. -f image2 Часто избыточная опция, используемая для установки формата вывода или мультиплексора. Он используется, если ваше имя вывода неоднозначно (возможно, из-за сценариев). В противном случае ffmpeg автоматически выберет правильный мультиплексор для выходов изображения. Я хотел бы понять, как читать следующую инструкцию ffmpeg
Простейшая, неписанная команда для получения всех кадров:
ffmpeg -i input %04d.png
Это выведет 0001.png, 0002.png, 0003.png и т. д. Если вы хотите больше, чем числовую последовательность, вы можете использовать что-то вроде output_%05d.png, что приведет к output_00001.png.
Для получения дополнительной информации см. документацию FFmpeg: Image Muxer.
import subprocess
L=subprocess.call('ffmpeg -i %s -r 1 -s qvga -t 1 -f image2 %s' % (videoName,frameName), shell=True)
Информация:
import subprocess: модуль подпроцесса позволяет запускать новые приложения из вашей программы Python. L=subprocess.call(...): Назначить выход метода call() переменной L. ffmpeg -i %s -r 1 -s qvga -t 1 -f image2 %s' % (videoName,frameName), shell=True: команда для запуска здесь ffmpeg -i %s: имя входного файла, полученное из переменной videoName -> input file url -r 1: частота кадров. -s qvga: размер рамки. -f image2: Форматировать формат входного или выходного файла -t 1: при использовании в качестве опции вывода (перед выходным URL) прекратите запись вывода после того, как его продолжительность продолжится. % (videoName,frameName): форматирование строки Python, которое заменит последовательности %s в предыдущей строке элементами в кортеже. shell=True: Используйте определенные функции оболочки, такие как разбиение слов или расширение параметраИспользование:
#!/usr/bin/env python
import subprocess
L=subprocess.call('ffmpeg -r 5 -i out.ogv fmprg_%04d.png', shell=True)
L()
Сделать исполняемым: chmod u+x filename.sh, выполнить с: ./filename.sh Информация:
fmprg_%04d.png: создает изображения с 0000, 0001, 0002, 0004, ... между fmprg_ и .png.
Чтение:
[ f25]
https://pythonspot.com/ru/tag/subprocess/
import subprocess
L=subprocess.call('ffmpeg -i %s -r 1 -s qvga -t 1 -f image2 %s' % (videoName,frameName), shell=True)
Информация:
import subprocess: модуль подпроцесса позволяет запускать новые приложения из вашей программы Python. L=subprocess.call(...): Назначить выход метода call() переменной L. ffmpeg -i %s -r 1 -s qvga -t 1 -f image2 %s' % (videoName,frameName), shell=True: команда для запуска здесь ffmpeg -i %s: имя входного файла, полученное из переменной videoName -> input file url -r 1: частота кадров. -s qvga: размер рамки. -f image2: Форматировать формат входного или выходного файла -t 1: при использовании в качестве опции вывода (перед выходным URL) прекратите запись вывода после того, как его продолжительность продолжится. % (videoName,frameName): форматирование строки Python, которое заменит последовательности %s в предыдущей строке элементами в кортеже. shell=True: Используйте определенные функции оболочки, такие как разбиение слов или расширение параметраИспользование:
#!/usr/bin/env python
import subprocess
L=subprocess.call('ffmpeg -r 5 -i out.ogv fmprg_%04d.png', shell=True)
L()
Сделать исполняемым: chmod u+x filename.sh, выполнить с: ./filename.sh Информация:
fmprg_%04d.png: создает изображения с 0000, 0001, 0002, 0004, ... между fmprg_ и .png.
Чтение:
man ffmpeg
https://pythonspot.com/ru/tag/subprocess/
import subprocess
L=subprocess.call('ffmpeg -i %s -r 1 -s qvga -t 1 -f image2 %s' % (videoName,frameName), shell=True)
Информация:
import subprocess: модуль подпроцесса позволяет запускать новые приложения из вашей программы Python. L=subprocess.call(...): Назначить выход метода call() переменной L. ffmpeg -i %s -r 1 -s qvga -t 1 -f image2 %s' % (videoName,frameName), shell=True: команда для запуска здесь ffmpeg -i %s: имя входного файла, полученное из переменной videoName -> input file url -r 1: частота кадров. -s qvga: размер рамки. -f image2: Форматировать формат входного или выходного файла -t 1: при использовании в качестве опции вывода (перед выходным URL) прекратите запись вывода после того, как его продолжительность продолжится. % (videoName,frameName): форматирование строки Python, которое заменит последовательности %s в предыдущей строке элементами в кортеже. shell=True: Используйте определенные функции оболочки, такие как разбиение слов или расширение параметраИспользование:
#!/usr/bin/env python
import subprocess
L=subprocess.call('ffmpeg -r 5 -i out.ogv fmprg_%04d.png', shell=True)
L()
Сделать исполняемым: chmod u+x filename.sh, выполнить с: ./filename.sh Информация:
fmprg_%04d.png: создает изображения с 0000, 0001, 0002, 0004, ... между fmprg_ и .png.
Чтение:
man ffmpeg
https://pythonspot.com/ru/tag/subprocess/