Автоматическая загрузка (ftp) видеофайла после завершения кодирования

Я работаю в прямом эфире и каждый день снимаю сотни коротких видео. Что я хотел бы сделать, так это использовать какое-нибудь приложение для установки папки просмотра, и как только я нажму кнопку «Стоп» на кодировщике и файл будет готов, он автоматически загрузится в корневой каталог на указанном ftp-сайте.

Я пытался использовать winscp, autover и многие другие, но постоянно сталкивался с несколькими проблемами: 1) Если я устанавливаю каталог просмотра, и файл начинает кодироваться, размер файла меняется каждую секунду, поэтому приложение в основном пытается сделать новая загрузка каждую 1 секунду в файле, который даже не завершен. Так что это не работает. И 2) У ftp есть задание cron, которое извлекает файл из корня после завершения загрузки, поэтому он исчезает с удаленного сервера, поэтому некоторые приложения определяют это как изменение и пытаются повторно загрузить все прошлые видео.

Я ищу приложение, которое я могу указать на папку и сказать: «Не загружайте старые файлы, размер которых не меняется, не пытайтесь синхронизировать каталоги, просто подождите, пока появятся новые файлы». , и продолжайте проверять их размер каждые 5 секунд, после того, как пройдет 5 секунд и размер не изменится, загрузите на этот ftp."

Но пока я вычеркиваюсь. Любая помощь будет оценена по достоинству.

Мои машинки для стрижки — Windows 7, но я также использую Windows 8.1/10.

Какую ОС вы используете?
с помощью Windows. У меня машинки для обрезки Win7, но я также использую другие ноутбуки с 8.1/10. Я отредактирую это в оригинальном посте.

Ответы (1)

Возможно, кто-то предложит приложение, которое непосредственно соответствует вашим потребностям, но вот временное решение — немного запутанное, но должно работать.

  1. Создайте две папки A и B.
  2. Установите папку A в качестве папки назначения в кодировщике.
  3. Примените суффикс ко всем генерируемым выходным файлам, что-нибудь безобидное, например, ENC, например, Clip2015-09-25-23232-ENC.mov — этот шаг предполагает, что в папке могут быть другие файлы, не подлежащие действию. Пропустите, если не так.
  4. Настройте периодически запускаемое пакетное задание, первая команда которого — переименовать все файлы с суффиксом, например, добавив префикс или другой суффикс. И чья вторая команда - переместить все файлы с новым префиксом в папку B
  5. Пока кодировщик работает с файлом, он блокируется, поэтому переименовываются только завершенные файлы. И только они будут перемещены в B.
  6. Используйте любое из вышеупомянутых FTP-приложений для просмотра папки B и передачи файлов.
Это отличное предложение! Мысли: 3. Каждая папка должна содержать ТОЛЬКО видеофайлы, больше ничего. 5. Если файл заблокирован (что имеет смысл), как можно идентифицировать это состояние? И почему автозагрузка приложений не идентифицирует это? Существуют ли какие-либо приложения без написания сценария, который может идентифицировать это состояние? Причина, по которой я спрашиваю, заключается в том, что я хотел бы иметь готовое решение, которое я мог бы разослать другим сотрудникам, не требуя, чтобы они знали, как изменять сценарии. -- В целом, переход из одной папки в другую - отличная идея.
Блокировка не позволяет другим приложениям/процессам изменять или удалять файл, но не читать его, поэтому локальная или удаленная копия все равно будет работать. Трюк с переименованием работает, потому что он изменяет файл и, следовательно, требует, чтобы кодировщик работал с ним.
Ваша задача требует, чтобы приложение, определяющее состояние блокировки, передало список в приложение для передачи файлов, в частности, набор разблокированных файлов папки. Таким образом, хотя поиск выдает множество приложений, которые определяют, заблокирован ли файл и кто его заблокировал, не видно ни одного, которое могло бы взаимодействовать с приложением FTP или выполнять операцию перемещения. Скрипт видимо нужен.
В дополнение к ответу @Mulvya: чтобы не рассчитывать на невозможность переименования файла, вы можете проверить его значение «последнее изменение». Если разница между текущим временем и временем «последнего изменения» больше на какое-то значение, то переместите его в папку B.