FFmpeg开发笔记(五)更新MSYS的密钥环
《FFmpeg开发实战:从零基础到短视频上线》一书提到:使用MSYS对FFmpeg进行交叉编译时,需要事先安装交叉编译工具链,也就是执行下面命令。
pacman -S mingw-w64-x86_64-toolchain
一般情况可以正常安装交叉编译工具链,不过有时会提示错误“signature from "David Macek <david.macek.0@gmail.com>" is unknown trust”,这是因为MSYS安装之后的密钥环有效期只有150天左右,而工具链中的个别组件会检查密钥环是否有效。如果密钥环过了150天之后才安装工具链,MSYS就会报前面的错,意思是签名不被信任,这便是密钥环过期导致的。
执行下面命令查看密钥环的有效时间。
pacman-key --list-sigs
从上面命令的执行结果找到“david.macek.0@gmail.com”所在的那几行信息,如下所示。
pub rsa4096 2018-01-14 [SC] [过期于:2023-04-22]
87771331B3F1FF5263856A6D974C8BE49078F532
uid [ 过期 ] David Macek <david.macek.0@gmail.com>
sig 790AE56A1D3CFDDC 2020-06-19 David Macek (MSYS2 master key) <david.macek.0@gmail.com>
sig 5F92EFC1A47D45A1 2020-06-23 Alexey Pavlov (Alexpux) <alexpux@gmail.com>
sig F40D263ECA25678A 2020-06-25 Alexey Pavlov (Alexpux) <alexey.pawlow@gmail.com>
sig 755B8182ACD22879 2020-06-25 Christoph Reiter (MSYS2 master key) <reiter.christoph@gmail.com>
sig 3 974C8BE49078F532 2022-10-24 David Macek <david.macek.0@gmail.com>
根据上述的密钥环有效信息,得知“david.macek.0@gmail.com”对应的密钥环已于2023-04-22到期,可见确实出现了密钥环过期的问题。
若想解决密钥环过期的问题,要么更新密钥环,要么重新安装MSYS。采取更新密钥环方式的话,得先到以下网址寻找msys2-keyring的最新文件。
https://repo.msys2.org/msys/x86_64/
比如找到msys2-keyring的最新文件为msys2-keyring-1~20231013-1-any.pkg.tar.zst和msys2-keyring-1~20231013-1-any.pkg.tar.zst.sig,于是执行下面命令将这两个签名文件下载到本地。如果最新文件的日期发生变化,注意同步修改下面命令中的文件名。
curl -O https://repo.msys2.org/msys/x86_64/msys2-keyring-1~20231013-1-any.pkg.tar.zst
curl -O https://repo.msys2.org/msys/x86_64/msys2-keyring-1~20231013-1-any.pkg.tar.zst.sig

等待两个文件下载完毕,接着执行下面命令验证并配置密钥环。
pacman-key --verify msys2-keyring-1~20231013-1-any.pkg.tar.zst{.sig,}
pacman -U --config <(echo) msys2-keyring-1~20231013-1-any.pkg.tar.zst
上面命令的执行结果最后一行如下所示,可见密钥环的失效时间已经延长到了2024-04-10。
gpg: next trustdb check due at 2024-04-10
重新执行下面命令查看密钥环的有效时间。
pacman-key --list-sigs
从上面命令的执行结果找到“david.macek.0@gmail.com”所在的那几行信息,如下所示。
pub rsa4096 2018-01-14 [SC] [expires: 2024-04-10]
87771331B3F1FF5263856A6D974C8BE49078F532
uid [ full ] David Macek <david.macek.0@gmail.com>
sig 790AE56A1D3CFDDC 2020-06-19 David Macek (MSYS2 master key) <david.macek.0@gmail.com>
sig 5F92EFC1A47D45A1 2020-06-23 Alexey Pavlov (Alexpux) <alexpux@gmail.com>
sig F40D263ECA25678A 2020-06-25 Alexey Pavlov (Alexpux) <alexey.pawlow@gmail.com>
sig 755B8182ACD22879 2020-06-25 Christoph Reiter (MSYS2 master key) <reiter.christoph@gmail.com>
sig 3 974C8BE49078F532 2023-03-16 David Macek <david.macek.0@gmail.com>
sig 3 974C8BE49078F532 2023-10-13 David Macek <david.macek.0@gmail.com>
sub rsa4096 2018-01-14 [E] [expires: 2024-04-10]
sig 974C8BE49078F532 2023-03-16 David Macek <david.macek.0@gmail.com>
sig 974C8BE49078F532 2023-10-13 David Macek <david.macek.0@gmail.com>
sub rsa3072 2018-01-14 [S] [expires: 2024-04-10]
sig 974C8BE49078F532 2023-03-16 David Macek <david.macek.0@gmail.com>
sig 974C8BE49078F532 2023-10-13 David Macek <david.macek.0@gmail.com>
根据上述的密钥环有效信息,得知“david.macek.0@gmail.com”对应的密钥环将于2024-04-10到期,可见密钥环的有效期果然往后延长了150天(从当天开始往后150天,不是对上个失效日期简单相加)。更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。
FFmpeg开发笔记(五)更新MSYS的密钥环的更多相关文章
- FFmpeg开发笔记(五):ffmpeg解码的基本流程详解(ffmpeg3新解码api)
若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...
- FFmpeg开发笔记(三):ffmpeg介绍、windows编译以及开发环境搭建
前言 本篇章是对之前windows环境的补充,之前windows的是无需进行编译的,此篇使用源码进行编译,版本就使用3.4.8. FFmpeg简介 FFmpeg是领先的多媒体框架,能够解码 ...
- FFmpeg开发笔记(四):ffmpeg解码的基本流程详解
若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...
- FFmpeg开发笔记(九):ffmpeg解码rtsp流并使用SDL同步播放
前言 ffmpeg播放rtsp网络流和摄像头流. Demo 使用ffmpeg播放局域网rtsp1080p海康摄像头:延迟0.2s,存在马赛克 使用ffmpeg播放网络rtsp文件流 ...
- FFmpeg开发笔记(十):ffmpeg在ubuntu上的交叉编译移植到海思HI35xx平台
FFmpeg和SDL开发专栏(点击传送门) 上一篇:<FFmpeg开发笔记(九):ffmpeg解码rtsp流并使用SDL同步播放>下一篇:敬请期待 前言 将ffmpeg移植到海思H ...
- Django开发笔记五
Django开发笔记一 Django开发笔记二 Django开发笔记三 Django开发笔记四 Django开发笔记五 Django开发笔记六 1.页面继承 定义base.html: <!DOC ...
- FFmpeg开发笔记(一)搭建Linux系统的开发环境
对于初学者来说,如何搭建FFmpeg的开发环境是个不小的拦路虎,因为FFmpeg用到了许多第三方开发包,所以要先编译这些第三方源码,之后才能给FFmpeg集成编译好的第三方库.不过考虑到刚开始仅仅调用 ...
- React-Native开发笔记 持续更新
1.css单位转换px2dp 在做页面开发的时候习惯了用rem去做css单位,处理各种尺寸数据,到了React-Native里面做app开发时,rem就不好用了,这个时候就需要转换成另外一个单位,基本 ...
- FFmpeg开发笔记(二)搭建Windows系统的开发环境
由于Linux系统比较专业,个人电脑很少安装Linux,反而大都安装Windows系统,因此提高了FFmpeg的学习门槛,毕竟在Windows系统搭建FFmpeg的开发环境还是比较麻烦的.不过若有已经 ...
- OpenCV开发笔记(七十四):OpenCV3.4.1+ffmpeg3.4.8交叉编译移植到海思平台Hi35xx平台
前言 移植opencv到海思平台,opencv支持对视频进行解码,需要对应的ffmpeg支持. Ffmpeg的移植 Ffmpeg的移植请参考之前的文章:<FFmpeg开发笔记(十): ...
随机推荐
- 【Unity3D】Bloom特效
1 Bloom 特效原理 Bloom 特效是指:将画面中较亮的区域向外扩散,造成一种朦脓的效果.实现 Bloom 特效,一般要经过 3 个阶段处理:亮区域检测.高斯模糊.Bloom 合成. 本 ...
- 【Android】使用Socket实现跨设备通讯
1 Socket 简介 Socket(套接字)是应用层与 TCP/IP 协议通信的中间软件抽象层,它是一组接口,用户只需面向 Socket 编程,即可实现跨设备(网络)通讯. Socket 是 ...
- 按奇偶排序数组II
按奇偶排序数组II 给定一个非负整数数组A,A中一半整数是奇数,一半整数是偶数. 对数组进行排序,以便当A[i]为奇数时,i也是奇数:当A[i]为偶数时,i也是偶数. 你可以返回任何满足上述条件的数组 ...
- Java判断是否为闰年
题目: 判断一个输入的整数是否为闰年? 1.需要对输入的数据类型进行验证 2.支持多次输入和结束符号判断,例如输入q代表退出程序. 分析: 闰年的判断规则如下: (1)若某个年份能被4整除但不能被10 ...
- SSL/TLS 资料整理
1. HTTPS详解二:SSL / TLS 工作原理和详细握手过程 看到另外几篇介绍不错的文章,再次分享一下 园内大佬写的, 通过一个小故事,理解 HTTPS 工作原理 这篇博文已经把 SSL 的工作 ...
- git bash走代理
git config --global http.proxy 'http://127.0.0.1:7890' git config --global https.proxy 'http://127.0 ...
- yolov5项目cuda错误解决
CUDA报错解决 # 报错详情 AssertionError: CUDA unavailable, invalid device 0 requested 查看cuda版本 先看一下电脑是否支持GPU, ...
- 【Azure Redis 缓存】Azure Redis 4.0 被扫描到漏洞,如何修补呢?
问题描述 在安全级别要求高的公司中,任何系统都会进行安全扫描.比如Azure 云上的Redis服务,也在扫描的范围中,最后发现Redis 4.0存在以下漏洞: CVE-2019-10192:https ...
- 利用Linux自动编译Vivado工程
https://codetd.com/article/12458043. 利用Linux自动编译Vivado工程
- Java11改进的垃圾回收器
传统的C/C++等编程语言,需要程序员负责回收已经分配的内存.显示进行垃圾回收是一件比较困难的事情,因为程序员并不总是知道内存应该何时被释放.如果一些分配出去的内存得不及时回收,就会引起系统运行速度下 ...