符号化 macOS 程序崩溃
有的时候需要手动符号化 macOS 程序的崩溃,跟 iOS 有些区别,简单记录下: 原始崩溃堆栈如下: Process: MyPlayer [10684] Path: /Applications/MyPlayer.app/Contents/MacOS/MyPlayer Identifier: com.aa...
有的时候需要手动符号化 macOS 程序的崩溃,跟 iOS 有些区别,简单记录下: 原始崩溃堆栈如下: Process: MyPlayer [10684] Path: /Applications/MyPlayer.app/Contents/MacOS/MyPlayer Identifier: com.aa...
FSPlayer 播放直播流时,出现以下错误,排查发现是 http_buf_read 函数在读取数据时,遇到了流结束的情况,导致返回了 AVERROR(EIO) 错误。具体错误日志如下: [03-26 09:59:28.380] [FSPlayer] Stream ends prematurely at 2622243, should be 18446744073709551615 [03...
FFmpeg 定义的错误码 定义在 libavutil/error.h 里,最终都通过 FFERRTAG 来定义,而 FFERRTAG 固定是个负数,所以我们从 FFmpeg 拿到错误码都是负数。 通过 av_err2str 函数可以获取错误码对应的字符串。 这些错误码的具体数值如下,方便以后排查问题使用: 错误码宏定义 (Macro) 对应...
记录解决 FSPlayer 无法播放加密 M3U8 的排查过程。 背景 有用户反馈有个 m3u8 在 FSPlayer 上无法播放,但是在 Safari 浏览器上可以正常播放,排查日志如下: [11:06:31 695] [FSPlayer] ijkmp_prepare_async()=0 [11:06:31 696] [FSPlayer] Opening 'https://bf.ji...
FFmpeg 7.1.1 Supported Protocols: 54 android_content https pipe async icecast prompeg bluray ipfs_gateway rt...
在使用 Intel Iris Pro 集成显卡的 Mac 笔记本上,大概率复现切换字幕后,字幕叠加的问题: 清理 dirty 区域的问题? 这是 Ass 字幕上传纹理的逻辑,复用一个纹理,然后根据字幕内容局部替换纹理数据,避免每次都申请一个比较大的纹理。 static SDL_TextureOverlay * subtitle_ass_upload_texture(SDL_Text...
回顾 FFmpeg 对 Vulkan 的支持 通过 FFmpeg 官网的 Release Note 可以看到对 Vulkan 的支持一直在继续,甚至对 Vulkan 功能改进的新版本正式发布前进行多次宣传,这是很少见的。 June 15th, 2020, FFmpeg 4.3 “4:3” Support AMD AMF encoder on Linux (via Vulkan) ...
Xcode 环境变量 经常有自定义脚本的需求,记录下 Xcode 预置的环境变量,在工程 TARGETS -> Build Phases -> 点击+ -> New Run Script Phase 创建脚本,可以拖动修改执行脚本的时机。 export ACTION\=build export AD_HOC_CODE_SIGNING_ALLOWED\=NO export...
背景 当排查推流问题时,第一步就是拿到流地址,观察 packet 的情况,介绍下如何通过 ffprobe 快速排查。 查看流信息 命令: ffprobe -hide_banner -i "https://your.flv" 结果: Input #0, flv, from 'https://your..flv': Metadata: encoder : ...
背景 记录一次看似由 SIMD 优化代码和共享内存读取保护冲突引发的崩溃,实际是 Apple 和 Google 在特殊情况下数据处理不同导致崩溃的经典案例。 问题现场:在使用 libyuv 将摄像头输出的 NV12 格式的 CVPixelbuffer 转成 BGRA 格式时,仅当 CVPixelBuffer 高度为奇数时会引发 NEON 内存越界崩溃,堆栈如下: stop reason...