解析davinci快捷键配置文件

news2024/12/29 11:26:38

        davinci resolve 是一款非线性影片剪辑软件,mac 下快捷键配置文件位于:

lucas@lucasdeMacBook-Pro DaVinci Resolve % pwd
/Users/lucas/Library/Preferences/Blackmagic Design/DaVinci Resolve
lucas@lucasdeMacBook-Pro DaVinci Resolve % ll | grep key
-rw-rw-rw-  1 lucas  staff  181908 12  9 15:43 keyboard.preset.xml

        文件部分内容如下:

lucas@lucasdeMacBook-Pro DaVinci Resolve % cat keyboard.preset.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--DbAppVer="18.1.1.0007" DbPrjVer="11"-->
<SmKeyboardPresetList DbId="b343b0c6-f893-4b46-8ac8-dad2a6503b88">
<FieldsBlob/>
<PresetListBA>00000001000000020000001a0064006100760069006e00630065005f...............0072000000010000000100000041</PresetListBA>
</SmKeyboardPresetList>
lucas@lucasdeMacBook-Pro DaVinci Resolve %

        因篇幅较多,中间部分省略。可以看到虽然是 xml 文件,但具体配置内容做了处理。细看的话配置部分全是16进制,且基本16位一组,或许可以转成 ascii 字符看看。于是将这部分单独拿出放在 key.txt 文件中:

int main()
{
    char str[200000] = {0};
    FILE *fp = fopen("/Users/lucas/Desktop/key.txt", "r");
    fgets(str, 200000, fp);
    int len = strlen(str);

    int i = 0;
    string s = "";
    while (i < len) {
        int sum = 0, val = 0;
        char c = ' ';
        for (int j = 0; j < 4; ++j) {
            switch (str[i+j]) {
                case 'a': val = 10; break;
                case 'b': val = 11; break;
                case 'c': val = 12; break;
                case 'd': val = 13; break;
                case 'e': val = 14; break;
                case 'f': val = 15; break;
                default: val = str[i+j] - '0'; break;
            }
            sum = sum * 16 + val;
        }
        c = ((sum < 33) || (sum > 126)) ? ' ' : (char)sum;
        s = s + c;

        i += 4;
    }
    cout << s << endl;

    return 0;
}

        执行后部分输出结果如下:

lucas@lucasdeMacBook-Pro testCpp % g++ -g -Wall test.cpp -o test
lucas@lucasdeMacBook-Pro testCpp % ./test
 davince_lucas *editMulticamNextAngle  TFusionWidget..fuHotkey_GLView_Viewer
_Reset.......controlPlayAroundToPlayAroundCurrentSelection     /  
nodesAddCPW C nFusionWidget..fuHotkey_FuFrame_Tool_ViewO 2 2  editPointer A 

        格式有点乱,但信息还是比较清晰,开头的 davince_lucas 恰好就是修改快捷键配置时的自定义预设:

        将其导出后可以看到前面部分:

editPointer := A
controlPlayAroundToPlayAroundCurrentSelection := /
nodesAddCPW := Alt+C
editAutoSelectToggleAudio4 := Ctrl+Alt+F4

......

        如 editPointer 和 controlPlayAroundToPlayAroundCurrentSelection 部分看着还是吻合的,说明思路大体是正确的。但格式上依然还存在些问题,且没打印出 ctrlalt 等控制符,这块私以为是开发人员将这些控制符等特殊字符与某个特定的16进制数字做了个映射,只要程序识别出对应的16进制数字,将其替换成相应的符号或按键即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/75686.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

“滴灌”代替“漫灌”:“全链路增长”的百度联盟解

作者 | 曾响铃 文 | 响铃说 2021年时&#xff0c;在平台上的日均收益才不足1000元&#xff0c;日活不足1万&#xff1b; 一年时间不到&#xff0c;现在矩阵产品在平台的日均收入已经翻了90倍&#xff0c;日活翻了25倍。 这是一家白牌资讯媒体“早闻天下事”加入百度联盟后发…

跬智信息(Kyligence)荣获浦东新区人工智能创新应用大赛一等奖

近日&#xff0c;2022 浦东新区人工智能创新应用大赛圆满闭幕。经过层层筛选和考核&#xff0c;跬智信息&#xff08;Kyligence&#xff09;从 113 支团队中脱颖而出&#xff0c;参赛项目“Byzer 面向 DataAI 的低代码开源编程语言”在技术创新性、创意性以及项目的可落地性、可…

spi访问fpga

SPI 外设的三线/四线模式及时钟极性相位可以配置&#xff0c;支持主机/从机、全双工/半双工&#xff0c;传送数据格式可灵活配置&#xff0c;并且有发送空接收满 SPI 错误等中断事件功能配合应用使用&#xff0c;更多功能详见本系列芯片手册的相关章节。 SPI四线模式框图&…

轻松玩转树莓派Pico之五、FreeRTOS体验

树莓派Pico开发板片上主芯片为RP2040单片机&#xff0c;双核 Arm Cortex-M0 处理器&#xff0c;工作主频为133MHz&#xff0c;264K片上SRAM&#xff0c;和2MByteFlash。 这么大的RAM和Flash资源&#xff0c;不跑一下RTOS操作系统实在有些可惜&#xff0c;这次就先体验一下Fre…

基于新型战争策略优化算法的光伏模型优化(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️❤️&#x1f4a5;&#x1f4a5;&#x1f4a5; &#x1f389;作者研究&#xff1a;&#x1f3c5;&#x1f3c5;&#x1f3c5;本科计算机专业&#xff0c;研究生电气学硕…

vscode通过插件一键运行 c++单元测试

gtest使用初探 简介: 本文在 ubuntu18.04 上实现了 googletest 的全局安装&#xff0c;并在一个 demo项目中演示了使用 cmake 引入了该库&#xff0c;实现了在命令行中运行 c 单元测试&#xff0c;包括运行单个 TEST 函数。另外通过 vscode 的插件 C TestMate&#xff0c; 实现…

MATLAB应用2——MATLAB串口采集加速度计数据

串口保存数据为txt格式&#xff1a; clc ; %死机的时候&#xff0c;在命令窗口输入return %getcominstrhwinfo (serial) %寻找串口 delete(instrfindall) %这句话必须有 global xx; global nn; global data1; global s; xx0; nn500; data1(1:nn)0; sserial(COM8); set(s,Bau…

什么?用Python实用脚本也能实现快速卡通画人物头像,这不就是妥妥的QQ秀嘛。

前言 今天我们就利用Python脚本实现天气查询应用吧。直接开整~ 思路分析 从大量照片/卡通数据中习得照片到卡通画的映射。 开发工具 python版本&#xff1a; 3.6 相关模块&#xff1a; pytorch 1.4 tensorflow-gpu 1.14 face-alignment dlib 1.数据准备 训练数据包括…

Linux入门—Shell常用命令之打包压缩

本文由【正厚软件】沙老师提供 打包压缩命令 1. gzip 命令 命令功能&#xff1a;压缩或展开文件 命令格式&#xff1a; ogzip [ -acdfhlLnNrtvV19 ] [-S 后缀] [ 文件名 ... ] &#xff1a;压缩文件 ogunzip [ -acfhlLnNrtvV ] [-S 后缀] [ 文件名 ... ] &#xff1a;解压缩文件…

离线安装harbor容器镜像仓库单机版(harbor-v2.3.5)

记录&#xff1a;358 场景&#xff1a;在CentOS 7.9操作系统上&#xff0c;离线部署harbor容器镜像仓库单机版&#xff0c;使用Redis为外部缓存、使用PostgreSQL为外部数据库、使用docker-ce操作容器、使用docker-compose操作harbor容器镜像仓库。 版本&#xff1a; 操作系统…

OpenAI chatGPT火爆出圈,世界悄悄发生着变化

OpenAI chatGPT火爆出圈&#xff0c;世界悄悄发生着变化一、为什么突然火起来了&#xff1f;二、ChatGPT功能实例2.1 [AI聊天](https://chat.openai.com/chat)2.2 [AI写新闻稿](https://chat.openai.com/chat)2.3 [AI写代码](https://chat.openai.com/chat)2.4 [AI写论文](http…

Kubernetes二进制单节点集群部署

Kubernetes二进制单节点集群部署 常见的K8S按照部署方式 ●Mini kube Minikube是一个工具&#xff0c;可以在本地快速运行一个单节点微型K8S&#xff0c;仅用于学习、预览K8S的一些特性使用部署地址&#xff1a; https://kubernetes.io/docs/setup/minikube ●Kubeadmin Kubea…

浅谈Kernel32.dll(Windows平台下必有的动态库文件)

今天听了前辈的黑客攻击的知识分享&#xff0c;里面比较基础的元素就是Kernel32.dll&#xff0c;我对它感兴趣好久了&#xff0c;今天搜集一些资料&#xff0c;有关Kernel32的。 目录 ​编辑 一、Kernel32介绍 二、Kernel32内存管理 三、引起Kernel32出错的主要元凶 四、解…

【求助帖】从技术转为项目经理后,如何快速进入角色?

近日&#xff0c;看到了一个求助贴&#xff0c;小李今年26岁&#xff0c;干了两年技术后&#xff0c;现在转行到项目经理的岗位。每天东奔西跑、天天加班还是感觉很吃力、工作也没有成效&#xff0c;想问下如何能快速进入角色&#xff1f; 那么小李的一天具体是怎么样的呢&…

追格小程序重磅升级 新亮点来袭!

追格小程序是一个积木式小程序搭建框架&#xff0c;基于UniappWordPress开发&#xff0c;代码免费开源不加密且支持二开&#xff0c;安装追格相应扩展模块&#xff0c;简单配置即可快速搭建不限于圈子社区、知识付费、活动报名、资讯等类型小程序。 新的亮点是什么 追格小程序…

以太网 VLAN(VLAN数据帧格式、交换机接口类型)

2.8.2 以太网 VLAN&#xff08;VLAN数据帧格式、交换机接口类型&#xff09; 原始的以太网数据帧没有802.1QTag字段&#xff0c;在网络中进行转发的时候能够被主机接收、解封查看。 而一但有了802.1Q Tag字段的以太网数据帧&#xff0c;主机即使能接收数据帧&#xff0c;也无法…

233的字符串

//在群里看到了老师发布的下面这条消息&#xff0c;许久没打代码&#xff0c;打算找找感觉&#xff0c;第一道就拿捏我了&#xff0c;题目不是很难&#xff0c;但是高数据范围的超时问题一直是我未找到解决办法的一个问题&#xff0c;虽然现在比赛未结束&#xff0c;不过我的错…

人脑如果是台计算机,那么电从哪里来?

1.人脑是一台量子计算机 2022年10月7日&#xff0c;爱尔兰都柏林三一学院的实验团队在《物理学通讯》杂志上发表了一篇名为《非经典脑功能的实验指标》的论文。研究人员在论文中写道&#xff1a;“我们的研究结果表明&#xff0c;我们可能已经目睹了由意识相关的大脑功能介导的…

我写这10+个JavaScript单行代码,被组长夸代码写得优雅

JavaScript 非常大的特点容易上手且非常灵活&#xff0c;代码实现方式五花八门&#xff1b;有时候能一行代码解决&#xff0c;就尽量不用两行。 本文整理了非常有用的单行代码&#xff0c;这些需求都是在开发中非常常见的&#xff0c;用单行代码可以帮助你提高工作效率。 数组…

问卷开头语怎么写?

问卷的开头语是一份问卷的开场&#xff0c;开场好不好关系到整个问卷过程能够顺利进行。所以&#xff0c;在关注问卷的标题、题目、设计以外&#xff0c;我们也要重视起问卷的开头语。通俗易懂的内容更易进行传播&#xff0c;这一点也可以运用到问卷中&#xff0c;表达清晰、完…