使用vscode调试ffmpeg源码
ffmpeg的编译配置
# --enable-debug 设置为调试级别
# --disable-stripping 如果不加此选项,会strip去掉符号信息
./configure --prefix={output_path} --enable-debug --disable-stripping
make -j10
VSCode的配置
将以下文件对比替换工程.vscode目录下的相同文件
- launch.json
{"version": "0.2.0","configurations": [{"name": "debug_ffmpeg","type": "cppdbg","request": "launch","program": "${workspaceFolder}/../offical_ffmpeg/debug/bin/${fileBasenameNoExtension}","args": ["-i","http://xxx/test_shot_hls.m3u8","-r","1.00","-f","image2","/Users/admin/test_output/live_%06d.jpeg"],"stopAtEntry": false,"cwd": "${workspaceFolder}/","environment": [],"externalConsole": false,"launchCompleteCommand": "exec-run","linux": {"MIMode": "gdb","miDebuggerPath": "/usr/bin/gdb"},"osx": {"MIMode": "lldb"},"windows": {"MIMode": "gdb","miDebuggerPath": "C:\\MinGw\\bin\\gdb.exe"},"preLaunchTask": "precompile_ffmpeg","sourceFileMap": {"/proc/self/cwd/ffmpeg-src": "${workspaceFolder}/../offical_ffmpeg"}},{"name": "debug_ffmpeg_examples","type": "cppdbg","request": "launch","program": "${workspaceFolder}/../offical_ffmpeg/doc/examples/${fileBasenameNoExtension}","args": ["1.aac"],"stopAtEntry": false,"cwd": "${workspaceFolder}/","environment": [],"externalConsole": false,"launchCompleteCommand": "exec-run","linux": {"MIMode": "gdb","miDebuggerPath": "/usr/bin/gdb"},"osx": {"MIMode": "lldb"},"windows": {"MIMode": "gdb","miDebuggerPath": "C:\\MinGw\\bin\\gdb.exe"},"preLaunchTask": "precompile_ffmpeg_examples","sourceFileMap": {"/proc/self/cwd/ffmpeg-src": "${workspaceFolder}/../offical_ffmpeg"}}]
}
- tasks.json
{"tasks": [{"label": "precompile_ffmpeg","type": "shell","command": "cd ${workspaceFolder} && make -j16"},{"label": "precompile_ffmpeg_examples","type": "shell","command": "cd ${workspaceFolder} && make examples -j16"}],"version": "2.0.0"
}
- settings.json
{"files.associations": {"*.ipp": "cc","any": "cpp","array": "cpp","atomic": "cpp","bit": "cpp","*.tcc": "cpp","bitset": "cpp","cctype": "cpp","chrono": "cpp","clocale": "cpp","cmath": "cpp","codecvt": "cpp","complex": "cpp","condition_variable": "cpp","csignal": "cpp","cstdarg": "cpp","cstddef": "cpp","cstdint": "cpp","cstdio": "cpp","cstdlib": "cpp","cstring": "cpp","ctime": "cpp","cwchar": "cpp","cwctype": "cpp","deque": "cpp","forward_list": "cpp","list": "cpp","map": "cpp","set": "cpp","unordered_map": "cpp","unordered_set": "cpp","vector": "cpp","exception": "cpp","string_view": "cpp","fstream": "cpp","functional": "cpp","future": "cpp","initializer_list": "cpp","iomanip": "cpp","iosfwd": "cpp","iostream": "cpp","istream": "cpp","limits": "cpp","memory": "cpp","mutex": "cpp","new": "cpp","numeric": "cpp","optional": "cpp","ostream": "cpp","ratio": "cpp","sstream": "cpp","stdexcept": "cpp","streambuf": "cpp","string": "cpp","system_error": "cpp","thread": "cpp","type_traits": "cpp","tuple": "cpp","typeindex": "cpp","typeinfo": "cpp","utility": "cpp","valarray": "cpp","variant": "cpp","data_type_def.h": "c","ctype.h": "c"},"cmake.sourceDirectory": "${workspaceFolder}"
}
- c_cpp_properties.json
{"configurations": [{"name": "Linux","includePath": ["${workspaceFolder}/**"],"defines": [],"compilerPath": "/usr/bin/gcc","cStandard": "c11","cppStandard": "c++17","intelliSenseMode": "clang-x64","configurationProvider": "ms-vscode.makefile-tools"},{"name": "Mac","includePath": ["${workspaceFolder}/**"],"defines": [],"macFrameworkPath": ["/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks"],"compilerPath": "/usr/bin/clang","cStandard": "c11","cppStandard": "c++17","intelliSenseMode": "clang-x64"}],"version": 4
}
相关文章:
使用vscode调试ffmpeg源码
ffmpeg的编译配置 # --enable-debug 设置为调试级别 # --disable-stripping 如果不加此选项,会strip去掉符号信息 ./configure --prefix{output_path} --enable-debug --disable-stripping make -j10VSCode的配置 将以下文件对比替换工程.vscode目录下的相同文件 …...
微信小程序--数字化会议OA系统之首页搭建
一、Flex弹性布局 布局的传统解决方案,基于盒状模型,依赖 display属性 position属性 float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。 2009年,W3C提出了一种新的方案—-Flex布局,可…...
代码随想录算法训练营第六十天 | 739. 每日温度、496.下一个更大元素 I
739. 每日温度 链接: 代码随想录 (1)代码 496.下一个更大元素 I 链接: 代码随想录 (1)代码...
WebView 以及如何测试
混合应用 顾名思义,它们是本机应用程序和 Web 应用程序的混合体。它们可以在应用程序商店中下载,并且需要像本机应用程序一样从设备进行访问身份验证,但它们也有一个嵌入在应用程序中的浏览器(WebView)用于呈现 HTML。…...
Jetpack:013-Jetpack底部导航栏
文章目录 1. 概念介绍2. 使用方法2.1 NavigationBar2.2 NavigationBarItem 3. 示例代码3.1 代码和注释3.2 代码难点3.3 运行效果 4. 内容总结 我们在上一章回中介绍了Jetpack中弹出菜单相关的内容,本章回中将介绍 底部导航栏。闲话休提,让我们一起Talk …...
MATLAB - excel 读取
matlab中excel 读取 1. 写入excel文件 - xlswrite2. 读取excel文件 - xlsread 1. 写入excel文件 - xlswrite xlswrite(filename,A,sheet,xlRange) % 写入字符串 % 注意事项:Str需要是Cell格式,否则一个字母占一格 % Str {‘abc’}; xlswr…...
【AIGC核心技术剖析】Hotshot-XL 一种 AI 文本转 GIF 模型(论文 + 代码:经过训练可与Stable Diffusion XL一起使用)
Hotshot-XL 是一种 AI 文本转 GIF 模型,经过训练可与Stable Diffusion XL一起使用。 Hotshot-XL 可以使用任何经过微调的 SDXL 模型生成 GIF。这意味着两件事: 您将能够使用您可能想要使用的任何现有或新微调的 SDXL 模型制作 GIF。 如果您想制作个性化主题的 GIF,您可以…...
2023年9月青少年软件编程(C 语言) 等级考试试卷(八级)
2023年9月青少年软件编程(C 语言) 等级考试试卷(八级) 第 1 题 最短路径问题 平面上有n个点(n<100),每个点的坐标均在-10000~10000之间。其中的一些点之间有连线。 若有连线࿰…...
MS17010(永恒之蓝)漏洞实战
曾因苦难多壮志,不教红尘惑坚心。 工具检测 实战过程 使用搜索命令,搜索ms17_010 search ms17_010 搜索网段中主机漏洞 use auxiliary/scanner/smb/smb_ms17_010 照例,show options 看一下配置 设置网段,run运行就行了 使用攻…...
ROS自学笔记十三:VScode的介绍和安装
Visual Studio Code(简称VS Code)是一款由Microsoft开发的免费、轻量级、开源的集成开发环境(IDE)。它支持多种编程语言,并且具有丰富的扩展系统,使得用户可以根据自己的需求自定义和扩展功能。 以下是VS …...
操作系统【OS】微内核
基本概念 微内核结构将操作系统划分为两大部分:微内核多个服务器微内核包含: 与硬件处理紧密相关的部分一些较基本的功能客户和服务器间的通信客户与服务器之间是借助微内核提供的消息传递机制来实现交互的 基本功能 进程管理 进程的通信、切换、调度…...
Ubuntu docker安装mysql
本文介绍如何在docker中安装mysql,之前有尝试过先在docker中安装一个ubuntu到镜像,然后进去再去安装mysql相关的东西,发现不行,这边整理一下一个可行的方式。 在下载镜像的时候,直接下载mysql镜像。 1.搜索镜像 doc…...
VSCode使用记录
一、安装 从官网 https://code.visualstudio.com 下载相应安装包 二、扩展:商店 Chinese (Simplified) (简体中文) Language Pack for Visual Studio CodeLive Serveropen in browserGitLens — Git superchargedRemote - SSHPrettier - Code formatterESLintpxt…...
正则表达式之学习笔记
正则表达式学习笔记 一、概念二、正则表达式组成三、常见的正则表达式3.1 .匹配任意字符3.2 * 匹配前一个字符的0个或多个实例3.3 ^ 匹配输入字符串的开头3.4 $ 匹配行尾3.5 [] 匹配字符集合\<\> 精确匹配符号 一、概念 正则表达式是由一系列特殊字符组成的字符串&#…...
Java String类
字符串转义符号为 \ 常见的转义字符 转移字符对应的英文是 escape character , 转义字符串( Escape Sequence ) 字母前面加上捺斜线 "" 来表示常见的那些不能显示的 ASCII 字符 . 称为转义字符 . 如 \0,\t,\n 等,就称为转 义字…...
我的电子萝卜刀火了吗?
引言 大家好,我是亿元程序员,一位有着8年游戏行业经验的主程。 笔者在上一篇文章《萝卜刀真的太危险了,于是我用Cocos做了一个》中说到因女儿从学校回来之后想要我给她买一把萝卜刀被我拒绝,但是又想要让她体验一下,因此用Cocos…...
git 查看本地秘钥
第一步: 1,打开终端或者命令行窗口,输入一下命令: cd ~/.ssh进入ssh目录 2,查看该目录下的所有文件,输入以下命令: ls -al该命令将显示ssh目录下的所有文件,包括秘钥文件和配置文件,如果不存…...
【TensorFlow1.X】系列学习笔记【入门二】
【TensorFlow1.X】系列学习笔记【入门二】 大量经典论文的算法均采用 TF 1.x 实现, 为了阅读方便, 同时加深对实现细节的理解, 需要 TF 1.x 的知识 文章目录 【TensorFlow1.X】系列学习笔记【入门二】前言神经网络的参数神经网络的搭建前向传播反向传播 总结 前言 学习了张量、…...
详解一下HTML的语义化标签
目录 什么是语义化标签: HTML5的语义化元素的优点: HTML5的语义化元素的缺点: 来个例子: 语义化标签有那些: 什么是语义化标签: 语义化标签是HTML的一种特性,其核心目标是让标签具有特定的意义。它们的存在不仅帮助开发者更好地理解文档的结构,也让…...
C++11的for循环
在C03/98中,不同的容器和数组,遍历的方法不尽相同,写法不统一,也不够简洁,而C11基于范围的for循环以统一,简洁的方式来遍历容器和数组,用起来更方便了。 for循环的新用法 #include <iostre…...
大话软工笔记—需求分析概述
需求分析,就是要对需求调研收集到的资料信息逐个地进行拆分、研究,从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要,后续设计的依据主要来自于需求分析的成果,包括: 项目的目的…...
k8s从入门到放弃之Ingress七层负载
k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...
uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...
Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
用机器学习破解新能源领域的“弃风”难题
音乐发烧友深有体会,玩音乐的本质就是玩电网。火电声音偏暖,水电偏冷,风电偏空旷。至于太阳能发的电,则略显朦胧和单薄。 不知你是否有感觉,近两年家里的音响声音越来越冷,听起来越来越单薄? —…...
打手机检测算法AI智能分析网关V4守护公共/工业/医疗等多场景安全应用
一、方案背景 在现代生产与生活场景中,如工厂高危作业区、医院手术室、公共场景等,人员违规打手机的行为潜藏着巨大风险。传统依靠人工巡查的监管方式,存在效率低、覆盖面不足、判断主观性强等问题,难以满足对人员打手机行为精…...
Caliper 配置文件解析:fisco-bcos.json
config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...
Proxmox Mail Gateway安装指南:从零开始配置高效邮件过滤系统
💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「storms…...
【C++】纯虚函数类外可以写实现吗?
1. 答案 先说答案,可以。 2.代码测试 .h头文件 #include <iostream> #include <string>// 抽象基类 class AbstractBase { public:AbstractBase() default;virtual ~AbstractBase() default; // 默认析构函数public:virtual int PureVirtualFunct…...
