readme

package module
v0.1.3-lw Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 10, 2025 License: GPL-3.0 Imports: 6 Imported by: 0

README

drTags ─ Tagger для DaVinci Resolve

drt file [...fileN] [tag1=val1 [...tagN=valN]]
  • Где file...fileN это медиафайлы или файлы .csv от DaVinci Resolve c Description или Keywords в которых указаны тэги или - если файлы и тэги передаются через конвейер | или пусто но не пусто $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS
  • Если в файле 20220626 Концерт\14.csv есть таймлайн 20220626 Концерт 14 Прокофьев Соната для фортепиано №2 ре минор части 1 2 и клип с pcm в 20220626 Концерт\20220626 Концерт 14 Прокофьев Соната для фортепиано №2 ре минор части 1 2.mov то после запуска:
drt 14.csv

появятся файлы:

20220626 Концерт\20220626 Концерт 14 Прокофьев Соната для фортепиано №2 ре минор части 1 2.mp4
20220626 Концерт\20220626 Концерт 14 Прокофьев Соната для фортепиано №2 ре минор части 1 2.flac
20220626 Концерт\20220626 Концерт 14 Прокофьев Соната для фортепиано №2 ре минор части 1 2.mp3

или был клип с flac в 20220626 Концерт 14 Прокофьев Соната для фортепиано №2 ре минор части 1 2.mp4 то после запуска:

drt 14.csv

появятся файлы:

20220626 Концерт\20220626 Концерт 14 Прокофьев Соната для фортепиано №2 ре минор части 1 2.flac
20220626 Концерт\20220626 Концерт 14 Прокофьев Соната для фортепиано №2 ре минор части 1 2.mp3

с тэгами:

TitleSort=20220626 Концерт 14 Прокофьев Соната для фортепиано №2 ре минор части 1 2
Date=20220626
Album=20220626 Концерт
TrackNumber=14
Composer=Прокофьев
Title=Соната для фортепиано №2 ре минор
MovementName=1
MovementName=2
Grouping=Фортепиано
Grouping=Соната для фортепиано
InitialKey=Dm
  • Для знаков при ключе используется английская нотация где cи мажор как B, си-бемоль минор как Bbm, до-диез мажор как C#
  • Часть Title до попадёт в Grouping
  • В Description или Keywords таймлайна для классики можно указать:
  • TitleSort=Это будет источником для тэгов вместо имени таймлайна
  • Title=Соната для фортепиано №2
  • Composer=Сергей Прокофьев
  • Artist=Иван Петров
  • AlbumArtist=Остальные исполнители кроме солиста например оркестр или концертмейстер
  • Conductor=Руководители исполнителей
  • Genre=Classical
  • InvolvedPeople=Остальные люди например Перевертмейстер и группы причастные к выступлению например Ростовская Государственная Консерватория
  • Lyricist=Авторы текста и переводчики
  • Arranger=Авторы переложения или оранжировки
  • Subtitle=Подзаголовок например Патетическая соната. Части таймлайна или TitleSort в `обратных апострофах` или парных «ёлочках» или в (круглых скобках) тоже попадут сюда
  • Work=Авторские публикации как Op.14 или каталоги как BWV2 и прочие
  • Grouping=Группировки по музыкальным формам как Соната для фортепиано или по инстументам как Фортепиано
  • Если тэг один а значений несколько просто повторяй строчки. Так пиши в Keywords или Description:
Artist=Иван Петров
Artist=Пётр Сидоров
  • Или через / в Description:
MovementName=1 Allegro ma non troppo/2 Scherzo Allegro marcato
  • Или с новой строки в Description:
Movement=1 Allegro ma non troppo
2 Scherzo Allegro marcato
  • Если строка не начинается с тэга то это значение к предыдущему тэгу
  • Всё что в таймлайне или в тэге TitleSort идёт после слова часть запишу в MovementName например если укажешь TitleSort=20220626 Концерт 14 Прокофьев Соната для фортепиано №2 ре минор часть 1 Allegro ma non troppo то MovementName=1 Allegro ma non troppo
  • Всё что в таймлайне или в тэге TitleSort идёт после слова части разделю по пробелам и запишу в MovementName. Чтоб в MovementName попало только 2 части объедини их _ например TitleSort=20220626 Концерт 14 Прокофьев Соната для фортепиано №2 ре минор части 1_Allegro_ma_non_troppo 2_Scherzo_Allegro_marcato запишу:
MovementName=1 Allegro ma non troppo
MovementName=2 Scherzo Allegro marcato
  • Также можно поступить и с композитором например указав TitleSort=20220626 Концерт 14 Сергей_Прокофьев Соната для фортепиано №2 ре минор запишу Composer=Сергей Прокофьев
  • Если Comments таймлайна не пуст запишу в тэг Comment.
  • Если в командной строке нет тэгов то их можно ввести в консоле.
  • Если в консольном вводе первая строка не начинается с тэга то это значение к тэгу Comment
  • Завершай консольный ввод пустой строкой. Чтоб ввести пустую строку в Comment введи /
  • Чтоб убрать все значение тэга X введи X=. Чтоб убрать значение всех тэгов введи =
  • Если в видеофайле например a.mov звук:
    • в pcm и ввести == то запишу a.mp4 со звуком в alac, a.flac, a.mp3
    • в alac или flac и ввести == то запишу a.flac и a.mp3
    • иначе запишу a.mp3
  • Если в аудиофайле например a.m4a звук:
    • в pcm в alac или flac и ввести == то запишу a.flac и a.mp3
    • иначе запишу a.mp3 если аудиофайл не a.mp3
  • Если в видеофайле с mpegts например a.ts ввести == то запишу a.ts.mov

drt.lua

  • Из DaVinci Resole с панели Media можно вручную:
    • Эспортировать метаданные в .csv файлы: File~>Export Metadata From~>Selected Media Pool Clips
    • Сохранять таймлайны в .drt файлы: File~>Export~>Timeline
    • Сохранять маркеры таймлайнов в .edl файлы: ПКМ на таймлайне~>Timelines~>Export~>Timelines Margers To EDL
  • Из DaVinci Resole с панели Deliver можно вручную:
    • Эспортировать кадры в .tif или .png файлы.
  • Но с помощью скрипта drt.lua это веселей:
    • Workspace~>Console
    • Workspace~>Scripts~>drt
  • Пусть исходные медиафайлы лежат в каталоге foo/ а таймлайн называется bar. Вот что сделает drt.lua:
    • Экспорт метаданных в foo/bar.csv
    • Если стать на синий маркер то только синие маркеры будут экспортированы.
    • Экспорт кадров помеченных маркером с длительностью 00:00:00:01 в foo/bar.png или foo/bar.tif
    • Экспорт маркеров с длительностью больше 00:00:00:01 в foo/drt/bar.srt или с панели Cut в foo/drt/bar.vtt
    • Экспорт маркеров и MarkIn MarkOut в foo/drt/bar.edl
    • С панели Media всё вышеперечисленное для всех таймлайнов.
    • Резервирование таймлана в foo/drt/bar.drt
    • Резервирование шаблона экспорта с панели Deliver в foo.xml

droplet

  • Кажется у нас с ДуСей получился хороший пример дроплета для Linux, Windows и MacOS. Особенно красивый в Linux.
  • Получился и ЗДАРОВЫЙ пример дроплета для Linux и Windows.
  • Дроплет запускается при отсутствии параметров например drt или через drt.lnk, drTags.desktop, drTags.app. Дроплет не запускается дважды. При каждом дропе откроется новое окно c drt.
  • В MacOS если нет параметров но выделены файлы в Finder вместо дроплета откроется новое окно drt для просмотра и редактирования тэгов файлов выделеных в Finder.
  • Так на MacOS и без дроплета можно в консольном приложении делать типа drag-n-drop.
  • Впрочем drag-n-drop на окно drt работает и без дроплета на всех платформах.
  • В окно drt можно добавлять файлы и без drag-n-drop просто указывая их в кавычках например "foo.flac" "bar.mp3".
  • Чтоб в окне drt очистить список файлов введи "".

Ссылочки

Как получить drTags

go install github.com/abakum/drt/cmd/drt@main

Как установить drTags

Запусти drt ответь Y на предложение install drTags?

Documentation

Index

Constants

This section is empty.

Variables

View Source
var README string

Functions

func Print

func Print()

Types

This section is empty.

Directories

Path Synopsis
cmd
dnd command
sudo apt install libgtk-3-dev go get github.com/gotk3/gotk3@master https://github.com/gotk3/gotk3/issues/343
sudo apt install libgtk-3-dev go get github.com/gotk3/gotk3@master https://github.com/gotk3/gotk3/issues/343
drt command
sudo apt install libgtk-3-dev go get github.com/gotk3/gotk3@master https://github.com/gotk3/gotk3/issues/343
sudo apt install libgtk-3-dev go get github.com/gotk3/gotk3@master https://github.com/gotk3/gotk3/issues/343
fdnd command
sb command
https://resolvedevdoc.readthedocs.io/en/latest/API_basic.html#mediapoolitem
https://resolvedevdoc.readthedocs.io/en/latest/API_basic.html#mediapoolitem
example/markers command
go:build ignore
go:build ignore
example/metadata command
go:build ignore
go:build ignore

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL