LeXorium
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Еще раз, подобострастное "здравствуйте" гуру командной строки. Еще одна задачка, которая ставит меня в тупик. Есть вот такая связка батников: Код: :start.bat for %%y in (*.avi) do ( MKDIR "screenshots" echo.Import^("E:\!!!Scans\common\common.avs"^) echo.DoIt^("%%~dpy%%y","%%~dpyscreenshots\"^) ) > "%%~ny.avs" for %%y in (*.avs) do ( C:\PROGRA~1\MPLAYE~1\MPUI.exe "%%y" ) | Код: :comman.avs function DoIt(string filename,string path) { avisource(filename) killaudio() SelectRangeEvery(5400,1) ConvertToRGB24() ImageWriter(path,type="jpeg") return last } | По идее, эта связка должна делать для каждого найденного avi-файла скриптик avs и запуская на воспроизведение, пплейером делать скриншоты, складывая их в папку screenshots. Но, этого не происходит, потому, что MPUI.exe надо скормить полный путь, а получается только название файла avs, без пути. Для этог плейера это оказалось критично, mpclassic играл без проблем в той связке, но не заканчивал работу самостоятельно после каждого файла. А теперь, внимание вопрос: 1. Сделать так, чтобы скрипт работал во всех низлежащих подпапках, а в идеале, начальную папку можно было выбрать. 2. Чтобы в процессе работы на каждый avi-файл делался avs-скрипт, и в той же папке директорию screenshots куда срабатывал полученный скрипт. После успешного окончания которого, avs-файл бы удалялся. Заранее спасибо. |