ffmpeg вызывается через командный файл PHP exec

Я использую ffmpeg для извлечения изображений из видеофайла с помощью метода PHP shell_exec. Это все нормально, за исключением того, что если образ уже существует, то ffmpeg не перезапишет его даже с параметром -y в команде ffmpeg. Я думаю, что это как-то связано с shell_exec, потому что, если я запускаю летучую мышь, щелкнув по ней, с пакетным файлом все в порядке. У кого-нибудь когда-нибудь была эта проблема? Любой вклад был бы очень признателен. возможно, мне следует просто использовать оператор del, чтобы удалить изображение, если оно исчезнет до того, как ffmpeg сможет запуститься. Введите, пожалуйста.

--спокойные шахматы


person calmchess    schedule 28.04.2013    source источник


Ответы (2)


Это похоже на проблему с разрешением для меня.

Просто выполните быструю проверку через терминал, чтобы проверить разрешение старого файла (ls -l). Убедитесь, что у вас (пользователь: apache) есть доступ для записи ко всем рассматриваемым файлам через php.

person Sumoanand    schedule 28.04.2013
comment
не проблема с разрешениями. Я использую IIS 8, если я удалю файл вручную, тогда проблем не будет. неприятная ошибка - person calmchess; 29.04.2013
comment
хорошо, я обнаружил проблему, мой командный файл копирует видеофайл до того, как он извлечет изображение, но копируемый файл поврежден. У меня такое чувство, что я не жду, пока видеофайл будет создан, прежде чем я попытаюсь его скопировать, поэтому он повреждается . - person calmchess; 29.04.2013
comment
вот этот командный файл, который я использую [код] копировать C:\Program Files\Adobe\Adobe Media Server 5\applications\video_chat\streams\room0\stream00.flv C:\webserver\dev\book\images\stream00. flv cd C:\webserver\dev\book\images C:\Windows\system32\ffmpeg.exe -i stream00.flv -f image2 -s 258x176 -vframes 1 stream0.jpg [/code] - person calmchess; 29.04.2013
comment
исправил это, закрыв поток перед запуском ffmpeg - так много потраченных впустую часов. Я люблю эту работу! - person calmchess; 29.04.2013
comment
Приятно знать, что вы, наконец, исправили это. Нет ничего лучше, чем решить проблему самостоятельно, потому что обучение в ходе этого процесса окупается в долгосрочной перспективе. - person Sumoanand; 29.04.2013

исправил это, закрыв поток перед запуском ffmpeg - так много потраченных впустую часов. Я люблю эту работу!

person calmchess    schedule 29.04.2013