[PS CC2022] Пакетная обработка с импортом видео.

Так как создается дубликат документа, то исходный документ остаётся открытым. Т.е. в экшен после операции экспорта добавьте команду закрытия активного документа.

Случайный набор цифр - это текущее время в миллисекундах. Я для простоты добавил, чтобы при каждом экспорте имя было уникальным (так как имя активного файла нельзя просто взять и поменять). Можно что-то другое приписывать.
Вот смотрите экшен . Когда я его записывала файл скпировался с этим именем и видео с ним сохранилось. И когда запускаю экшен, то он копирует псд с новым именем , но видео файл всеровно сохраняет с тем же именем что во время записи самого экшена. Т.е. он игнорит копию и ее имя новое(
1723453116841.png
1723453132335.png
1723453093402.png
 

Не по теме:


Нет желания вникать в тему, просто хочу напомнить, что в Win есть возможность переименовать/перенести файл после сохранения :)

Да, конечно. Но тут возни больше: нужно а) понять в какую папку идет экспорт (т.е. либо заскриптовать сам экспорт чтобы папка была какая нужно, либо дать возможность указать папку в которую пользователю) б) понять какой именно файл переименовывать после экспорта (т.е. опять либо прописывать экспорт в скрипте чтобы поймать результат, либо мониторить имя активного документа отдельным скриптом, либо сканировать папку в поиске самого нового файла после экспорта)
 
  • Спасибо
Реакции: Rammaschka
Вот смотрите экшен . Когда я его записывала файл скпировался с этим именем и видео с ним сохранилось. И когда запускаю экшен, то он копирует псд с новым именем , но видео файл всеровно сохраняет с тем же именем что во время записи самого экшена. Т.е. он игнорит копию и ее имя новое(
Хм, весело. Вчера мне Фотошоп не давал менять имя файла при экспорте, сегодня дает. Видимо как-то от настроек таймлайна зависит.

Разверните команду экспорта или скиньте скрин окна экспорта - забью эти настройки в скрипт, будем менять саму команду экспорта. Без дублирования файла.
 
  • Спасибо
Реакции: Rammaschka
Хм, весело. Вчера мне Фотошоп не давал менять имя файла при экспорте, сегодня дает. Видимо как-то от настроек таймлайна зависит.

Разверните команду экспорта или скиньте скрин окна экспорта - забью эти настройки в скрипт, будем менять саму команду экспорта. Без дублирования файла.
Вот он прям тут имя пишет и пофиг ему на копию.
1723454586772.png
вот
 
  • Спасибо
Реакции: Rammaschka
Экшн в скрипт засунуть и сделать универсально :) С выбором куда, префиксов и т.д. '))' Делов-то :)
Делов то в том, что я первый раз в жизни в фш скрипты использую) понятия не имею в логику записи . Так что в этом беда.
 
Это не беда, а решаемая проблема :) От Вас надо сам экшн, пару тестовых файлов и описание логики работы. И договориться кто и за сколько Вам это сделает (могут и бесплатно, это не сложно, просто выложите все что я выше написал сюда) :)
 
  • Спасибо
Реакции: Rammaschka
У вас там 3D модель? С удивлением обнаружил, что в последней версии Фотошопа убрали все менюшки связанные с 3D (да, давно говорили что уберут, но всё равно неожиданно). Убираете команду дублирования документа и заменяете команду экспорта скриптом:
JavaScript:
var s2t = stringIDToTypeID,
directory = new Folder("E:/_Output"), // путь к каталогу экспорта
ameFormatName = "H.264", // возможные значения аналогичны всплывающему списку Format - H.264, DPX, QuickTime
amePresetName = "3_Low Quality.epr", // пресеты в каталоге Adobe Photoshop 2024\Presets\Video\Adobe Media Encoder\H264\
width = 1000,
height = 1000,
frameRate = 24,
manage = true,
allFrames = true;
(d = new ActionDescriptor()).putPath(s2t("directory"), directory);
d.putString(s2t("name"), decodeURI(activeDocument.name).replace(/\..+$/, '') + ' ' + (new Date).getTime());
d.putString(s2t("ameFormatName"), ameFormatName);
d.putString(s2t("amePresetName"), amePresetName);
d.putInteger(s2t("width"), width);
d.putInteger(s2t("height"), height);
d.putDouble(s2t("frameRate"), frameRate);
d.putEnumerated(s2t("pixelAspectRatio"), s2t("pixelAspectRatio"), s2t("document"));
d.putEnumerated(s2t("fieldOrder"), s2t("videoField"), s2t("preset"));
d.putBoolean(s2t("manage"), manage);
d.putBoolean(s2t("allFrames"), allFrames);
d.putEnumerated(s2t("renderAlpha"), s2t("alphaRendering"), s2t("none"));
(d1 = new ActionDescriptor()).putObject(s2t("using"), s2t("videoExport"), d);
executeAction(s2t("export"), d1, DialogModes.NO);

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

а, ну и в коде в переменной directory пропишите нужный вам путь к папке (в пути к каталогу замените виндовые слэши на двойные \\ или вместо обратного слэша \ используйте обратный / ), т.е. на это он ругнется
Код:
c:\Users\Dmitry\Desktop
а на это
Код:
c:/Users/Dmitry/Desktop
или это
Код:
c:\\Users\\Dmitry\\Desktop
нет
 
Последнее редактирование:
  • Огонь
Реакции: Rammaschka
Это не беда, а решаемая проблема :) От Вас надо сам экшн, пару тестовых файлов и описание логики работы. И договориться кто и за сколько Вам это сделает (могут и бесплатно, это не сложно, просто выложите все что я выше написал сюда) :)д

У вас там 3D модель? С удивлением обнаружил, что в последней версии Фотошопа убрали все менюшки связанные с 3D (да, давно говорили что уберут, но всё равно неожиданно). Убираете команду дублирования документа и заменяете команду экспорта скриптом:
JavaScript:
var s2t = stringIDToTypeID,
directory = new Folder("E:/_Output"), // путь к каталогу экспорта
ameFormatName = "H.264", // возможные значения аналогичны всплывающему списку Format - H.264, DPX, QuickTime
amePresetName = "3_Low Quality.epr", // пресеты в каталоге Adobe Photoshop 2024\Presets\Video\Adobe Media Encoder\H264\
width = 1000,
height = 1000,
frameRate = 24,
manage = true,
allFrames = true;
(d = new ActionDescriptor()).putPath(s2t("directory"), directory);
d.putString(s2t("name"), decodeURI(activeDocument.name).replace(/\..+$/, '') + ' ' + (new Date).getTime());
d.putString(s2t("ameFormatName"), ameFormatName);
d.putString(s2t("amePresetName"), amePresetName);
d.putInteger(s2t("width"), width);
d.putInteger(s2t("height"), height);
d.putDouble(s2t("frameRate"), frameRate);
d.putEnumerated(s2t("pixelAspectRatio"), s2t("pixelAspectRatio"), s2t("document"));
d.putEnumerated(s2t("fieldOrder"), s2t("videoField"), s2t("preset"));
d.putBoolean(s2t("manage"), manage);
d.putBoolean(s2t("allFrames"), allFrames);
d.putEnumerated(s2t("renderAlpha"), s2t("alphaRendering"), s2t("none"));
(d1 = new ActionDescriptor()).putObject(s2t("using"), s2t("videoExport"), d);
executeAction(s2t("export"), d1, DialogModes.NO);

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

а, ну и в коде в переменной directory пропишите нужный вам путь к папке (в пути к каталогу замените виндовые слэши на двойные \\ или вместо обратного слэша \ используйте обратный / ), т.е. на это он ругнется
Код:
c:\Users\Dmitry\Desktop
а на это
Код:
c:/Users/Dmitry/Desktop
или это
Код:
c:\\Users\\Dmitry\\Desktop
нет
Нет, там рендеринг кружки с Blendera видео файл.
Выдал ошибку в последней строке. хм
1723457092887.png
в
 
У вас там 3D модель? С удивлением обнаружил, что в последней версии Фотошопа убрали все менюшки связанные с 3D (да, давно говорили что уберут, но всё равно неожиданно). Убираете команду дублирования документа и заменяете команду экспорта скриптом:
JavaScript:
var s2t = stringIDToTypeID,
directory = new Folder("E:/_Output"), // путь к каталогу экспорта
ameFormatName = "H.264", // возможные значения аналогичны всплывающему списку Format - H.264, DPX, QuickTime
amePresetName = "3_Low Quality.epr", // пресеты в каталоге Adobe Photoshop 2024\Presets\Video\Adobe Media Encoder\H264\
width = 1000,
height = 1000,
frameRate = 24,
manage = true,
allFrames = true;
(d = new ActionDescriptor()).putPath(s2t("directory"), directory);
d.putString(s2t("name"), decodeURI(activeDocument.name).replace(/\..+$/, '') + ' ' + (new Date).getTime());
d.putString(s2t("ameFormatName"), ameFormatName);
d.putString(s2t("amePresetName"), amePresetName);
d.putInteger(s2t("width"), width);
d.putInteger(s2t("height"), height);
d.putDouble(s2t("frameRate"), frameRate);
d.putEnumerated(s2t("pixelAspectRatio"), s2t("pixelAspectRatio"), s2t("document"));
d.putEnumerated(s2t("fieldOrder"), s2t("videoField"), s2t("preset"));
d.putBoolean(s2t("manage"), manage);
d.putBoolean(s2t("allFrames"), allFrames);
d.putEnumerated(s2t("renderAlpha"), s2t("alphaRendering"), s2t("none"));
(d1 = new ActionDescriptor()).putObject(s2t("using"), s2t("videoExport"), d);
executeAction(s2t("export"), d1, DialogModes.NO);

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

а, ну и в коде в переменной directory пропишите нужный вам путь к папке (в пути к каталогу замените виндовые слэши на двойные \\ или вместо обратного слэша \ используйте обратный / ), т.е. на это он ругнется
Код:
c:\Users\Dmitry\Desktop
а на это
Код:
c:/Users/Dmitry/Desktop
или это
Код:
c:\\Users\\Dmitry\\Desktop
нет
А нет, вру. Все сработало! (я лопуха дала)
низкий поклон. счастья здоровья жены/мужа богатой)))
 
Последняя строка скрипта - это, собственно, команда "выполнить". Всё что выше - параметры. Т.е. ошибка в последней строке значит "мне что-то в параметрах действия не нравится".

Замените последнюю строку (или добавьте перед ней):
Код:
(a = new ActionDescriptor()).putObject(s2t('object'), s2t('object'), d);
alert(executeAction(s2t('convertJSONdescriptor'), a).getString(s2t('json')));
и выложите скрин того что напишет в фотошопе

UPD: Пока писал, увидел, что уже нет необходимости.

Если часто нужно менять параметры экспорта, то, в принципе, несложно написать скрипт который будет ловить параметры экспорта, заменять в них имя файла и отправлять обратно в Фотошоп. В данный момент параметры экспорта фиксированные (как у вас в экшене, кроме последних двух. Их в моем Фотошопе нет).
Screenshot 2024-08-12 131456.png
 
Последнее редактирование:
  • Спасибо
Реакции: Rammaschka