[RUS] Blackmagic Design - DaVinci Resolve Studio 18.5 [Intel/Apple] [K-ed]

Страницы :   Пред.  1, 2, 3, 4
Ответить
 

PieShock

Стаж: 4 года 9 месяцев

Сообщений: 4

PieShock · 10-Июл-24 11:47 (1 год 2 месяца назад)

Вылетает при попытке открыть фьюжен. Хотя с моим ноутбуком чудо, что вообще работает. Макбук про 2014
[Профиль]  [ЛС] 

godzeus

Стаж: 18 лет 10 месяцев

Сообщений: 6


godzeus · 01-Авг-24 07:41 (спустя 21 день)

Ввожу любые цифры, пишет не верный ключ и не активируется, у всех так?
[Профиль]  [ЛС] 

xkc97328

Стаж: 6 лет 5 месяцев

Сообщений: 14


xkc97328 · 08-Авг-24 12:37 (спустя 7 дней, ред. 29-Авг-24 12:30)

renfro писал(а):
86062645Есть какие-нибудь новые новости для 18.6.6?
mykolaienko писал(а):
86118968Приветсвтую! Скажите, есть решения для 18.6.6?

For Resolve 18.6.6 use this:
Код:

perl -pi -e 's/\x31\xd2\xe8\x86\xe3\x03\x00\x85\xc0\x74\x7b/\x31\xd2\xe8\x86\xe3\x03\x00\x85\xc0\x75\x7b/;' -e 's/\x01\x00\x80\x52\x02\x00\x80\xd2\xa9\xf2\x00\x94\x20\x04\x00\x34/\x01\x00\x80\x52\x02\x00\x80\xd2\xa9\xf2\x00\x94\x20\x04\x00\x35/;' /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve && codesign -f -s - /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve
For Resolve 19 Beta 5 use this:
Код:

perl -pi -e 's/\x31\xd2\xe8\xb6\xe8\x03\x00\x85\xc0\x74\x11/\x31\xd2\xe8\xb6\xe8\x03\x00\x85\xc0\x75\x11/;' -e 's/\x01\x00\x80\x52\x02\x00\x80\xd2\x67\xd6\x00\x94\x80\x00\x00\x34/\x01\x00\x80\x52\x02\x00\x80\xd2\x67\xd6\x00\x94\x80\x00\x00\x35/;' /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve && codesign -f -s - /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve
For Resolve 19 Beta 6 use this:
Код:

perl -pi -e 's/\x31\xd2\xe8\x36\xf8\x03\x00\x85\xc0\x74\x11/\x31\xd2\xe8\x36\xf8\x03\x00\x85\xc0\x75\x11/;' -e 's/\x01\x00\x80\x52\x02\x00\x80\xd2\xa1\xd9\x00\x94\x80\x00\x00\x34/\x01\x00\x80\x52\x02\x00\x80\xd2\xa1\xd9\x00\x94\x80\x00\x00\x35/;' /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve && codesign -f -s - /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve
For the official release of Resolve 19.0 use this:
Код:

perl -pi -e 's/\x31\xd2\xe8\x96\xef\x03\x00\x85\xc0\x74\x11/\x31\xd2\xe8\x96\xef\x03\x00\x85\xc0\x75\x11/;' -e 's/\x01\x00\x80\x52\x02\x00\x80\xd2\xac\xd7\x00\x94\x80\x00\x00\x34/\x01\x00\x80\x52\x02\x00\x80\xd2\xac\xd7\x00\x94\x80\x00\x00\x35/;' /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve && codesign -f -s - /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve
[Профиль]  [ЛС] 

1a01w05YfIca5u1f

Стаж: 11 лет 2 месяца

Сообщений: 2


1a01w05YfIca5u1f · 16-Авг-24 22:36 (спустя 8 дней)

xkc97328 писал(а):
86548364
renfro писал(а):
86062645Есть какие-нибудь новые новости для 18.6.6?
mykolaienko писал(а):
86118968Приветсвтую! Скажите, есть решения для 18.6.6?

For Resolve 18.6.6 use this:
Код:

perl -pi -e 's/\x31\xd2\xe8\x86\xe3\x03\x00\x85\xc0\x74\x7b/\x31\xd2\xe8\x86\xe3\x03\x00\x85\xc0\x75\x7b/;' -e 's/\x01\x00\x80\x52\x02\x00\x80\xd2\xa9\xf2\x00\x94\x20\x04\x00\x34/\x01\x00\x80\x52\x02\x00\x80\xd2\xa9\xf2\x00\x94\x20\x04\x00\x35/;' /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve && codesign -f -s - /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve
For Resolve 19 Beta 5 use this:
Код:

perl -pi -e 's/\x31\xd2\xe8\xb6\xe8\x03\x00\x85\xc0\x74\x11/\x31\xd2\xe8\xb6\xe8\x03\x00\x85\xc0\x75\x11/;' -e 's/\x01\x00\x80\x52\x02\x00\x80\xd2\x67\xd6\x00\x94\x80\x00\x00\x34/\x01\x00\x80\x52\x02\x00\x80\xd2\x67\xd6\x00\x94\x80\x00\x00\x35/;' /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve && codesign -f -s - /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve
For Resolve 19 Beta 6 use this:
Код:

perl -pi -e 's/\x31\xd2\xe8\x36\xf8\x03\x00\x85\xc0\x74\x11/\x31\xd2\xe8\x36\xf8\x03\x00\x85\xc0\x75\x11/;' -e 's/\x01\x00\x80\x52\x02\x00\x80\xd2\xa1\xd9\x00\x94\x80\x00\x00\x34/\x01\x00\x80\x52\x02\x00\x80\xd2\xa1\xd9\x00\x94\x80\x00\x00\x35/;' /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve && codesign -f -s - /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve
Спасибо тебе, святой человек. Для 19 бета 6 подошло даже после запуска
[Профиль]  [ЛС] 

galaxen

Стаж: 3 года 3 месяца

Сообщений: 1


galaxen · 27-Сен-24 00:22 (спустя 1 месяц 10 дней, ред. 27-Сен-24 00:22)

I'm getting an error on running:
Код:
codesign -f -s - /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve
The error is:
Код:
/Applications/DaVinci Resolve/DaVinci Resolve.app/Contents/MacOS/Resolve: main executable failed strict validation
Any ideas? I'm installing 19.0 and am running macOS 15.0.
[Профиль]  [ЛС] 

Pristmar

Стаж: 6 лет 8 месяцев

Сообщений: 1


Pristmar · 06-Окт-24 20:35 (спустя 9 дней)

А для 19.0.2 не появилось случайно?
[Профиль]  [ЛС] 

GreenLuker

Стаж: 12 лет 3 месяца

Сообщений: 1


GreenLuker · 17-Окт-24 19:17 (спустя 10 дней)

Davinci предлагает обновиться до версии 19. Если обновиться, то лицензия слетит и надо будет прописывать код заново?
[Профиль]  [ЛС] 

alex-evil

Стаж: 18 лет 10 месяцев

Сообщений: 31


alex-evil · 10-Ноя-24 13:13 (спустя 23 дня, ред. 10-Ноя-24 13:13)

galaxen писал(а):
86759772I'm getting an error on running:
Код:
codesign -f -s - /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve
The error is:
Код:
/Applications/DaVinci Resolve/DaVinci Resolve.app/Contents/MacOS/Resolve: main executable failed strict validation
Any ideas? I'm installing 19.0 and am running macOS 15.0.
Add permissions to your terminal app (where you run perl commands) to manage applications, it's required to patch app properly (Settings -> Privacy & Security -> App Management)
[Профиль]  [ЛС] 

kidnappersouls

Стаж: 17 лет 3 месяца

Сообщений: 87


kidnappersouls · 23-Ноя-24 03:32 (спустя 12 дней)

С 19.1 ещё нет решений?
К 19-й коды подходили, но там в итоге помехи при рендере(
[Профиль]  [ЛС] 

b2296227

Стаж: 14 лет 10 месяцев

Сообщений: 60


b2296227 · 04-Апр-25 04:06 (спустя 4 месяца 11 дней, ред. 07-Апр-25 21:30)

Патч для 19.1.4/20 beta Apple Silicon/Intel
Полос при рендере нет.
Патчи те же, что и у monter group, но различие в файлах не в мегабайты, а в несколько байтов - они зачем-то добавили секции с отладочными символами (видимо, из IDA?) прямо в исполняемый файл. В секции кода отличий у них тоже всего несколько байт.
Но поскольку мне как-то ближе пропатчить официальный релиз и не ставить из сторонних источников, написал скрипт.
скрипт в спойлере
скрытый текст
Код:
#!/bin/bash -ue
set -ueo pipefail
fail() {
    >&2 echo -e "\nError: $1"
    exit 1
}
is_dry_run () {
  if [ ${dry_run+x} ]; then
    return 0
  else
    return 1
  fi
}
have_ggrep () {
  if which ggrep >/dev/null; then
    return 0
  else
    return 1
  fi
}
do_backup() {
    bakfile="$1.bak"
    test -f "$bakfile" || cp -n "$1" "$bakfile"
}
do_patch_file_pattern() {
    file=$1
    pattern=$2
    patch=$3
    patchOffset=$4
    is_dry_run || do_backup "$file"
    escaped_pat=$(echo "$pattern" | sed -e 's/xx/./g' -e 's/\([0-9a-fA-F]\{2\}\)/\\x\1/g' -e 's/ //g')
    ret=0
    if have_ggrep ; then
      grep_cmd=ggrep
      grep_extra_opts="--perl-regexp"
    else
      grep_cmd=grep
      grep_extra_opts=
    fi
    if matches=$(LANG=C "$grep_cmd" -m 2 --only-matching --byte-offset --binary --text $grep_extra_opts --regexp="${escaped_pat}" "${file}");
    then
      match_cnt=$( wc -l <<<"${matches}")
      if [ "${match_cnt}" -ne 1 ]
      then
        fail "File {$file} pattern ${pattern} found ${match_cnt} matches, should be exactly one"
      fi
    else
      errcode=$?
      if [ $errcode -eq 1 ]
      then
        if ! is_dry_run; then
          fail "ggrep: pattern ${pattern} not found in file ${file}"
        else
          echo "Dry run: ignoring error: ggrep: pattern ${pattern} not found in file ${file}"
          return 0
        fi
      else
        fail "ggrep error $?"
      fi
    fi
    offset=$(LANG=C cut -f '1' -d ':' <<<"${matches}")
    if is_dry_run ;then
      printf "Dry run: not patching %s at offset 0x%x\n" "$(basename "$file")" "$[patchOffset + offset]"
    else
      printf "\\x${patch// /\\x}" | dd of="${file}" seek="$[patchOffset + offset]" bs=1 conv=notrunc status=none
    fi
}
get_files_to_patch() {
    path="$1"
    echo "${path}/Contents/MacOS/Resolve"
    echo "${path}/Contents/Libraries/Fusion/libfusionsystem.dylib"
}
check_perms() {
    IFS=$'\n' read -rd '' -a files < <(get_files_to_patch "$1") || true
    for file in "${files[@]}"; do
        echo -n "Checking ${file} write permissions.."
        if [ ! -w "${file}" ]; then
            fail "We don't have write permission to ${file}, please re-run with sudo or change directory permissions"
        fi
        echo OK
    done
}
ensure_license() {
  licfile="/Library/Application Support/Blackmagic Design/DaVinci Resolve/.license/blackmagic.lic"
  licpath=$(dirname "$licfile")
  mkdir -p "$licpath"
  test -f "$licfile" || cat <<EOF >"$licfile"
LICENSE blackmagic davinciresolvestudio 999999 permanent uncounted
  hostid=ANY issuer=CGP customer=CGP issued=28-dec-2023
  akey=0000-0000-0000-0000 _ck=00 sig="00"
EOF
}
do_codesign() {
  pushd "$1"
  codesign --force --sign - --deep . || fail "Error during codesign, make sure your application path ($path) is correct and that you have write permissions"
  popd
}
do_usage() {
  cat <<EOF
Usage: $0 [options] [path_to_DaVinci_Resolve.app]
  Options:
    -n|--dry-run   : Check if patches apply, don't actually patch anything
    -h|--help      : Show this message
  Examples:
    $0
      - Apply patches to application at the default path '/Applications/DaVinci Resolve/DaVinci Resolve.app'
    $0 --dry-run /Applications/DaVinci Resolve 19/DaVinci Resolve.app
      - Check if patches apply to version installed to '/Applications/DaVinci Resolve 19'
EOF
  exit 0
}
do_patch() {
  IFS=$'\n' read -rd '' -a files < <(get_files_to_patch "$1") || true
  resolve="${files[0]}"
  fusion="${files[1]}"
  # Resolve and libfusion
  # patch out call to __rlm_auth_stat
  arm_pat1="a0 03 5f f8 a1 83 5e f8 e3 0f 40 b9"
  intel_pat1="31 c0 89 c2 48 8b 7d f0 48 8b 75 e8 8b 4d cc"
  # Resolve only
  # 2BMDCloudLicenseError(int, int)
  # 1OnBMDCloudLicenseError(int, int)
  # ignore license check results
  arm_pat2="ff 43 01 d1 f6 57 02 a9 f4 4f 03 a9 fd 7b 04 a9 fd 03 01 91 f3 03 00 aa xx xx xx 97 xx xx xx xx xx xx xx 34 xx xx xx 97"
  intel_pat2="55 48 89 e5 41 57 41 56 41 54 53 48 83 ec 20 48 89 fb e8 xx xx xx ff 48 89 c7"
  arm_patch1="00 00 80 d2"
  arm_patch2="20 00 80 52"
  # xor rax, rax
  intel_patch1="48 31 c0 90 90"
  # mov al, 1
  intel_patch2="b0 01 90 90 90"
  # arm
  do_patch_file_pattern "$resolve" "$arm_pat1" "$arm_patch1" 16
  do_patch_file_pattern "$fusion" "$arm_pat1" "$arm_patch1" 16
  do_patch_file_pattern "$resolve" "$arm_pat2" "$arm_patch2" 28
  do_patch_file_pattern "$resolve" "$arm_pat2" "$arm_patch2" 40
  # intel
  do_patch_file_pattern "$resolve" "$intel_pat1" "$intel_patch1" 15
  do_patch_file_pattern "$fusion" "$intel_pat1" "$intel_patch1" 15
  do_patch_file_pattern "$resolve" "$intel_pat2" "$intel_patch2" 26
  do_patch_file_pattern "$resolve" "$intel_pat2" "$intel_patch2" 47
}
while [[ $# -gt 0 ]]; do
  case $1 in
    -n|--dry-run)
      dry_run=1
      shift # past value
      ;;
    -h|--help)
      do_usage
      shift # past value
      ;;
  *)
    break
  esac
done
path="${1:-/Applications/DaVinci Resolve/DaVinci Resolve.app/}"
check_perms "$path"
do_patch "$path"
if ! is_dry_run ; then
  ensure_license
  do_codesign "$path"
  echo All files patched successfully
fi
Запускать sudo ./patch.sh или просто ./patch.sh если добавить своему пользователю права записи на папку и все дочерние объекты '/Applications/DaVinci Resolve/DaVinci Resolve.app/Contents'
Update: Спасибо Moridin, получилось заменить gnu grep на родной grep встроенный в mac os. Теперь не требуется установка сторонних утилит
Также добавил создание файла лицензии в скрипт.
Update2: Добавил поддержку версии 20 beta
[Профиль]  [ЛС] 

Moridin

Top User 12

Стаж: 20 лет 3 месяца

Сообщений: 11

Moridin · 04-Апр-25 14:45 (спустя 10 часов)

b2296227 писал(а):
87607396Патч для 19.1.4 Apple Silicon/Intel
Полос при рендере нет.
Патчи те же, что и у monter group, но различие в файлах не в мегабайты, а в несколько байтов - они зачем-то добавили секции с отладочными символами (видимо, из IDA?) прямо в исполняемый файл. В секции кода отличий у них тоже всего несколько байт.
Но поскольку мне как-то ближе пропатчить официальный релиз и не ставить из сторонних источников, написал скрипт.
Код:
#!/bin/bash -ue
set -ueo pipefail
fail() {
    >&2 echo -e "\nError: $1"
    exit 1
}
do_backup() {
    bakfile="$1.bak"
    test -f "$bakfile" || cp -n "$1" "$bakfile"
}
do_patch_file_pattern() {
    file=$1
    pattern=$2
    patch=$3
    patchOffset=$4
    do_backup "$file"
    escaped_pat=$(echo "$pattern" | sed -e 's/xx/./g' -e 's/\([0-9a-fA-F]\{2\}\)/\\x\1/g' -e 's/ //g')
    ret=0
    if matches=$(LANG=C ggrep -m 2 --only-matching --byte-offset --binary --text --perl-regexp "${escaped_pat}" "${file}");
    then
      match_cnt=$( wc -l <<<"${matches}")
      if [ "${match_cnt}" -ne 1 ]
      then
        fail "File {$file} pattern ${pattern} found ${match_cnt} matches, should be exactly one"
      fi
    else
      errcode=$?
      if [ $errcode -eq 1 ]
      then
        fail "ggrep: pattern ${pattern} not found in file ${file}"
      else
        fail "ggrep error $?"
      fi
    fi
    offset=$(LANG=C cut -f '1' -d ':' <<<"${matches}")
    printf "\\x${patch// /\\x}" | dd of="${file}" seek="$[patchOffset + offset]" bs=1 conv=notrunc
}
get_files_to_patch() {
    path="$1"
    echo "${path}/Contents/MacOS/Resolve"
    echo "${path}/Contents/Libraries/Fusion/libfusionsystem.dylib"
}
check_perms() {
    IFS=$'\n' read -rd '' -a files < <(get_files_to_patch "$1") || true
    for file in "${files[@]}"; do
        echo -n "Checking ${file} write permissions.."
        if [ ! -w "${file}" ]; then
            fail "We don't have write permission to ${file}, please re-run with sudo or change directory permissions"
        fi
        echo OK
    done
}
do_codesign() {
    pushd "$1"
    codesign --force --sign - --deep . || fail "Error during codesign, make sure your application path ($path) is correct and that you have write permissions"
    popd
}
do_patch() {
    IFS=$'\n' read -rd '' -a files < <(get_files_to_patch "$1") || true
    resolve="${files[0]}"
    fusion="${files[1]}"
    # Resolve and libfusion
    # patch out call to __rlm_auth_stat
    arm_pat1="a0 03 5f f8 a1 83 5e f8 e3 0f 40 b9"
    intel_pat1="31 c0 89 c2 48 8b 7d f0 48 8b 75 e8 8b 4d cc"
    # Resolve only
    # 2BMDCloudLicenseError(int, int)
    # 1OnBMDCloudLicenseError(int, int)
    # ignore license check results
    arm_pat2="ff 43 01 d1 f6 57 02 a9 f4 4f 03 a9 fd 7b 04 a9 fd 03 01 91 f3 03 00 aa xx xx e9 97"
    intel_pat2="55 48 89 e5 41 57 41 56 41 54 53 48 83 ec 20 48 89 fb e8 xx xx xx ff 48 89 c7"
    arm_patch1="00 00 80 d2"
    arm_patch2="20 00 80 52"
     # xor rax, rax
    intel_patch1="48 31 c0 90 90"
    # mov al, 1
    intel_patch2="b0 01 90 90 90"
    # arm
    do_patch_file_pattern "$resolve" "$arm_pat1" "$arm_patch1" 16
    do_patch_file_pattern "$fusion" "$arm_pat1" "$arm_patch1" 16
    do_patch_file_pattern "$resolve" "$arm_pat2" "$arm_patch2" 28
    do_patch_file_pattern "$resolve" "$arm_pat2" "$arm_patch2" 40
    # intel
    do_patch_file_pattern "$resolve" "$intel_pat1" "$intel_patch1" 15
    do_patch_file_pattern "$fusion" "$intel_pat1" "$intel_patch1" 15
    do_patch_file_pattern "$resolve" "$intel_pat2" "$intel_patch2" 26
    do_patch_file_pattern "$resolve" "$intel_pat2" "$intel_patch2" 47
}
path="${1:-/Applications/DaVinci Resolve/DaVinci Resolve.app/}"
check_perms "$path"
do_patch "$path"
do_codesign "$path"
echo All files patched successfully
Также потребуется создать фейковый файл лицензии
/Library/Application Support/Blackmagic Design/DaVinci Resolve/.license/blackmagic.lic
Код:
LICENSE blackmagic davinciresolvestudio 999999 permanent uncounted
  hostid=ANY issuer=CGP customer=CGP issued=28-dec-2023
  akey=0000-0000-0000-0000 _ck=00 sig="00"
Запускать sudo ./patch.sh или просто ./patch.sh если добавить своему пользователю прав записи на папку /Applications/DaVinci Resolve/DaVinci Resolve.app
Благодарю за помощь. Добавлю, для работ скрипта нужно установить brew и gnu grep. Ну и добавить пути для работы ggrep из любого места.
[Профиль]  [ЛС] 

856311gnom

Стаж: 16 лет 11 месяцев

Сообщений: 24

856311gnom · 18-Апр-25 11:11 (спустя 13 дней, ред. 18-Апр-25 11:11)

18.5
после патча получил
Цитата:
Can't do inplace edit on /Applications/DaVinci Resolve/DaVinci Resolve.app/Contents/MacOS/Resolve: Cannot make temp name: Permission denied.
/Applications/DaVinci Resolve/DaVinci Resolve.app/Contents/MacOS/Resolve: replacing existing signature
/Applications/DaVinci Resolve/DaVinci Resolve.app/Contents/MacOS/Resolve: Permission denied
admin@MacBook-Pro ~ %
чат гпт решение - СРАБОТАЛО
Цитата:
sudo perl -pi -e 's/\xCE\x03\x00\x85\xC0\x74/\xCE\x03\x00\x85\xC0\xEB/g;' \
-e 's/\xD2\x38\xED\x00\x94\x20\x04\x00\x34/\xD2\x38\xED\x00\x94\x20\x04\x00\x35/g' \
/Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve && \
sudo codesign -f -s - /Applications/DaVinci\ Resolve/DaVinci\ Resolve.app/Contents/MacOS/Resolve
вот такая команда помогла
[Профиль]  [ЛС] 
 
Ответить
Loading...
Error