Lancer le lecteur depuis un script, et exporter des images ou des films sans fenêtre, sur une ferme de rendu ou dans un crochet du pipeline.
Le programme s'appelle BernardReview.exe sous Windows (C:\Program Files\Bernard Review\bin\) et bernard-review sous Linux. Les exemples ci-dessous écrivent BernardReview ; remplacez-le par le chemin de votre installation.
BernardReview <média ou .bpl> [<média> ...] [--video <fichier>] [--frame N] [--ipc-port N]
--video, est ouvert au démarrage ; plusieurs chemins sont ajoutés à la playlist dans l'ordre. Un média passé en ligne de commande est lu dès qu'il est ouvert : c'est ainsi qu'une association de fichiers ou Ouvrir avec confie un plan au lecteur.--frame N place la tête de lecture sur la position N du premier plan, comptée à partir de 0 (comme la commande seek).--ipc-port N fait écouter le port d'automatisation sur N au lieu de 5556. Deux lecteurs sur une même machine doivent utiliser deux ports différents.--ipc-port), le lecteur démarre en pause.--ipc-port ou --export, ou si Open files in the running player est décoché dans les préférences. Un script qui doit piloter son propre lecteur le lance donc avec --ipc-port.Pour piloter le lecteur une fois lancé, voir API Python et IPC.
--export exécute un export sans ouvrir de fenêtre, puis rend la main. Il prend trois formes.
Des options posées sur un préréglage :
BernardReview --export --preset dailies_prores_lt \
--source "D:/shots/SQ010_SH010_ANIM_v002.mov" \
--output "D:/dailies/SQ010_SH010_ANIM_v002.mov" \
--cc "exposure=0.5" --display-space rec709 \
--burn-in "tl={clip} {version};bl={frame} {timecode};br={date}"
Plusieurs sources, chacune dans son fichier grâce à <clip> :
BernardReview --export --preset jpg_review \
--source A001_C001.R3D --source A001_C002.R3D \
--output "D:/stills/<clip>/" --resize 1920x0 --chroma 444
Un fichier de travail JSON, avec les mêmes champs que la commande export (exemples dans api/export_examples/) :
BernardReview --export job.json
Sans --format, l'extension de la sortie désigne le format : dailies.mov, shot.####.dpx. Pour une séquence, la sortie est un motif #### ou un dossier.
| Option | Valeurs |
|---|---|
--preset NOM | plates_exr_half_zip, plates_exr_float_piz, dpx_10bit, tiff_16bit_viewer, jpg_review, dailies_prores_lt, dailies_dnxhr_sq, master_prores_hq, master_prores_4444, master_dnxhr_444, client_h264, client_h265, nvfx_review, nvfx_lossless, ou un préréglage du studio |
--source CHEMIN (répétable), --output ou -o | Entrées et sortie ; <clip>, <version> et <recipient> dans la sortie |
--format | exr, dpx, tiff, jpg, png, nvfx (NOVA), mov, mp4 |
--codec | prores_proxy, prores_lt, prores_422, prores_hq, prores_4444, dnxhr_lb, dnxhr_sq, dnxhr_hq, dnxhr_hqx, dnxhr_444, h264, h265, mjpeg |
--chroma, --crf, --bitrate, --quality, --bit-depth, --compression | Qualité et compression |
--audio | pcm, aac, none |
--fps, --in, --out, --step, --frame-offset N | Cadence, plage (positions à partir de 0), décalage des numéros incrustés |
--start-number, --padding | Numérotation d'une séquence en sortie |
--resize LxH, --proxy-scale | Taille de sortie (0 garde les proportions), résolution de décodage |
--color | source (pixels tels que décodés) ou custom (les valeurs de --cc) |
--cc "clé=valeur,..." | exposure, gamma, contrast, brightness, saturation, hue, r, g, b, temp, tint... |
--input-space, --display-space | Par exemple acescg, srgb, logc4 ; rec709, p3, rec2020, aces2 |
--layer | Passe d'un EXR multicouche |
--burn-in ["mise en page"], --no-burn-in | Incrustation : tl, tc, tr, bl, bc, br séparés par ; |
--watermark, --watermark-text, --watermark-position, --watermark-opacity, --watermark-size, --no-watermark | Filigrane (MOV, MP4 et JPEG seulement) |
--recipient NOM, --studio NOM | Remplissent {recipient}, {studio} et <recipient> |
--hardware, --no-hardware, --smart-tier, --no-smart-tier | Décodage sur la carte graphique ; décoder à la résolution que la sortie demande |
--annotations, --no-annotations | Graver les dessins (voir plus bas) |
Les options --no- et leurs formes positives priment sur ce qu'un préréglage ou un fichier de travail a fixé.
BernardReview --export --recipe evening_dailies.json \
--source SQ010_SH010_COMP_v003.mov --source SQ010_SH020_COMP_v007.mov \
--recipient "Client A"
La recette apporte tout le reste : chaque sortie est produite pour chaque source, l'une après l'autre. Elle n'accepte que --recipe, --source, --recipient, --studio et --session.
export: frame N/M ; à la fin, une dernière ligne JSON qui résume le travail (sortie, encodeur utilisé, et jobs pour plusieurs sources ou une recette).0 si tout a réussi, 1 pour une ligne de commande ou une recette invalide, 2 si un export a échoué.viewer et clip n'a pas de sens sans fenêtre : elle devient custom, avec les valeurs de --cc.export avec annotations, voir API Python et IPC).BERNARD_RUFFLE_EXPORTER indique son chemin sur une ferme.--format nvfx avec --compression htj2k ou wavelet (avec perte, --quality), lossless ou raw, et --bit-depth 16 ou 32.<recipient> à sa place.Pour aller plus loin : le manuel complet, parties 8.6 à 8.8 et 11 (Help > User Guide dans le lecteur).