资源信息
夏曹俊老师的C++课程资源合集系统性地涵盖了C++开发的各个关键领域,包含音视频处理(FFmpeg编解码、直播推流、播放器开发)、跨平台GUI开发(QT5)、系统级编程(Windows API/MFC/操作系统开发)、核心算法(数据结构/LeetCode实战)、软件架构(设计模式/微服务)、高性能编程(多线程/内存管理)、安全领域(OpenSSL/区块链加密)以及多语言交互(Python/Lua联合编程)。课程采用”理论+实战”模式,通过企业级项目如安全云盘系统、视频编辑工具、网络监控平台等真实案例,培养学员从语法基础到架构设计的全栈能力,特别适合希望深入掌握现代C++开发技术的进阶学习者。
资源目录
├── 【夏曹俊10359】C++实战FFmpeg音视频编码实战屏幕录像机视频课程-基于QT5和ffmpeg sdk │ ├── 1-01、课程介绍_ev.mp4 21.44M │ ├── 1-02、封装和编码格式介绍mpeg4标准介绍_ev.mp4 12.38M │ ├── 1-03、FFMpeg库下载和vs项目创建_ev.mp4 15.03M │ ├── 2-01、创建mp4转mov的项目并调用SDK打开mp4文件_ev.mp4 25.36M │ ├── 2-02、创建mov封装格式的上下文创建并配置音频和视频流信息_ev.mp4 31.64M │ ├── 2-03、写入mov视频文件格式头信息_ev.mp4 14.45M │ ├── 2-04、完成成了视频音频帧数据写入并根据timebase计算pts_ev.mp4 43.24M │ ├── 2-05、重封装用到的SDK接口和结构体通过流程图总结_ev.mp4 8.24M │ ├── 3-01、详解RGB和YUV_ev.mp4 12.46M │ ├── 3-02、创建视频编码项目设置并打开视频编码器_ev.mp4 41.70M │ ├── 3-03、完成视频编码的封装上下文创建和视频流信息添加_ev.mp4 13.65M │ ├── 3-04、视频像素格式转换rgb转为yuv_ev.mp4 40.10M │ ├── 3-05、视频封装头和尾写入视频帧编码_ev.mp4 53.97M │ ├── 3-06、完成视频写入清理,解决AVPacket空间泄露_ev.mp4 26.95M │ ├── 4-01、音频参数详解_ev.mp4 7.10M │ ├── 4-02、创建和配置音频编码器_ev.mp4 24.48M │ ├── 4-03、创建音频封装的输出上下文写入音频文件头_ev.mp4 21.86M │ ├── 4-04、创建和配置音频重采样上下文_ev.mp4 19.33M │ ├── 4-05、创建音频输出AVFrame完成音频重采样_ev.mp4 20.77M │ ├── 4-06、完成音频的编码和封装入aac文件_ev.mp4 19.46M │ ├── 5-01、音视频编码类封装介绍和使用ffmpeg工具抽取rgb和pcm_ev.mp4 12.23M │ ├── 5-02、创建XVideoWriter接口类完成工厂模式对象创建_ev.mp4 14.39M │ ├── 5-03、完成ffmpeg初始化、输出上下文初始化和关闭清理接口_ev.mp4 35.87M │ ├── 5-04、新增视频流接口添加,设置视频编码参数并打开_ev.mp4 38.74M │ ├── 5-05、设置rgb转yuv转换上下文参数设置,创建yuv输出空间_ev.mp4 34.39M │ ├── 5-06、读取文件中rgb数据转换为yuv_ev.mp4 30.96M │ ├── 5-07、完成h264视频帧编码和相关资源清理_ev.mp4 27.41M │ ├── 5-08、打开视频输出IO写入mp4视频文件头_ev.mp4 13.03M │ ├── 5-09、写入视频帧和视频索引并修正视频帧的pts_ev_ev.mp4 36.80M │ ├── 5-10、音频编码器参数设置并打开_ev_ev.mp4 33.37M │ ├── 5-11、音频重采样上下文参数设置和初始化_ev_ev.mp4 29.73M │ ├── 5-12、读取音频文件中pcm进行重采样并清理和关闭音频相关资源._ev_ev.mp4 44.37M │ ├── 5-13、音频编码和MP4文件写入_ev_ev.mp4 27.40M │ ├── 5-14、音频pts计算并完成音视频写入同步计算_ev_ev.mp4 36.94M │ ├── 6-01、directx截屏接口讲解_ev_ev.mp4 13.09M │ ├── 6-02、完成directx3d对象创建和显卡device对象创建_ev_ev.mp4 39.60M │ ├── 6-03、创建离屏表面并截取屏幕编码为mp4视频_ev_ev.mp4 32.35M │ ├── 6-04、QT5开发环境准备QtScreen项目创建_ev_ev.mp4 22.33M │ ├── 6-05、完成qt屏幕截图并在QWidget中显示_ev_ev.mp4 27.01M │ ├── 6-06、使用qt显示directx截屏并比较两种截屏时间消耗_ev_ev.mp4 23.18M │ ├── 7-01、QT音频录制类方法讲解_ev.mp4 10.25M │ ├── 7-02、使用qt完成音频录入并将录入音频转为aac_ev.mp4 27.54M │ ├── 8-01、屏幕录像机项目简介和用到的qt技术说明创建vs2015的项目_ev_ev.mp4 23.62M │ ├── 8-02、设置圆角无锯齿窗口并添加关闭和最小化按钮和操作_ev_ev.mp4 24.77M │ ├── 8-03、完成按钮的三种样式图片设置,使用qss完成界面设计_ev_ev.mp4 44.00M │ ├── 8-04、完成录制和停止录制按钮事件响应和录制时间响应_ev_ev.mp4 41.70M │ ├── 8-05、项目类图类设计_ev_ev.mp4 9.80M │ ├── 8-06、XCaptureThred类启动关闭和线程入口函数编写完成_ev_ev.mp4 34.02M │ ├── 8-07、XCaptureThread截屏线程和队列rgb数据获取接口_ev_ev.mp4 31.60M │ ├── 8-08、XAudioThread音频录制类编码完成._ev_ev.mp4 46.60M │ ├── 8-09、XScreenRecord屏幕录制控制类完成开发和测试_ev_ev.mp4 47.75M │ ├── 8-10、完成XScreenRecord音视频的录制接口和测试_ev_ev.mp4 33.32M │ ├── 8-11、完成了屏幕录像机qt界面与XSCreenRecord集成_ev_ev.mp4 26.37M │ └── 8-12、视频录制程序发布dll库准备_ev_ev.mp4 27.81M ├── 【夏曹俊10840】C++编程FFMpegSDK美颜直播推流实战-基于qt5,opencv视频课程 │ ├── 1-01、课程介绍_ev_ev.mp4 19.96M │ ├── 1-02、直播推流流程分析讲解_ev_ev.mp4 11.19M │ ├── 1-03、直播rtmp协议分析_ev.mp4 17.12M │ ├── 2-01、直播服务器介绍crtmpserver编译运行(ubuntu)_ev.mp4 31.09M │ ├── 2-02、下载ffmpeg工具推流并使用功能vlc拉流播放测试_ev.mp4 20.80M │ ├── 2-03、nginx-rtmp源码下载、编译运行(ubuntu)_ev.mp4 25.34M │ ├── 2-04、nginx-rtmp直播和直播状态监听配置ffplay播放_ev.mp4 25.70M │ ├── 3-01、ffmpegSDK开发环境准备,第一个ffmpeg项目创建_ev.mp4 41.23M │ ├── 3-02、初始化封装和网络库打开音视频流并打印调试信息_ev.mp4 41.58M │ ├── 3-03、完成输出音视频流配置信息,使用ffmpeg新版本属性_ev.mp4 45.64M │ ├── 3-04、打开rtmp推流输出并从文件读取音视频帧_ev.mp4 41.94M │ ├── 3-05、AVPacket的pts运算并完成帧推送使用vlc测试_ev.mp4 29.46M │ ├── 3-06、根据pts和系统记时控制推流速度_浏览器flash播放直播流_ev.mp4 39.78M │ ├── 3-07、推流基于rtsp协议的大华海康相机_ev.mp4 61.58M │ ├── 4-01、opencv源码在windows下载编译安装_ev.mp4 14.41M │ ├── 4-02、windows 上创建opencv示例项目_ev.mp4 20.98M │ ├── 4-03、遍历修改连续的Mat图像空间_ev.mp4 19.19M │ ├── 4-04、VideoCapture打开摄像头接口讲解和源码分析_ev.mp4 12.82M │ ├── 4-05、读取一帧视频接口讲解和源码分析,分析读取解码和颜色转换过程_ev.mp4 17.67M │ ├── 5-01、opencv播放rtsp海康摄像头和播放系统摄像头_ev.mp4 30.40M │ ├── 5-02、基于opencv采集rtsp流并使用异常处理失败流程_ev.mp4 35.21M │ ├── 5-03、像素格式转换(RGBToYUV)上下文创建配置和清理_ev.mp4 41.46M │ ├── 5-04、rgb转yuv空间分配和转换函数调用_ev.mp4 47.50M │ ├── 5-05、查找编码器并创建编码器上下文_ev.mp4 24.38M │ ├── 5-06、编码器参数配置(包括打开多线程编码)并打开编码器_ev.mp4 36.46M │ ├── 5-07、视频帧编码并根据设置AVFrame的输入pts_ev.mp4 28.48M │ ├── 5-08、创建封装器添加视频AVStream并设置参数_ev.mp4 28.78M │ ├── 5-09、打开推流IO,发送封装头,计算pts完成帧推流_ev.mp4 34.61M │ ├── 5-10、XMediaEndcode工厂生产方法创建_ev.mp4 20.95M │ ├── 5-11、完成InitScale初始化像素格式转换接口_ev.mp4 20.30M │ ├── 5-12、完成RGBToYUV接口封装并重构代码_ev.mp4 30.38M │ ├── 5-13、完成视频编码器初始化InitVideoCodec接口封装_ev.mp4 23.07M │ ├── 5-14、完成了视频编码接口并重构rtsp_to_rtmp代码_ev.mp4 28.50M │ ├── 5-15、创建XRtmp接口类完成封装器接口_ev.mp4 59.37M │ ├── 6-01、QT5开发环境准备_ev.mp4 24.97M │ ├── 6-02、音频基础知识音频参数分析_ev.mp4 25.17M │ ├── 6-03、QT音频录制接口讲解并编写录制音频程序_ev.mp4 24.78M │ ├── 6-04、音频重采样上下文创建和配置_ev.mp4 26.98M │ ├── 6-05、音频重采样空间分配并完成重采样_ev_ev.mp4 25.53M │ ├── 6-06、音频编码器创建和参数设置_ev_ev.mp4 23.30M │ ├── 6-07、音频的pts运算音频数据编码测试_ev_ev.mp4 17.50M │ ├── 6-08、完成音频推流并测试_ev.mp4 31.37M │ ├── 6-09、音频重采样XMediaEncode重采样接口封装代码重构_ev.mp4 51.00M │ ├── 6-10、封装音频编码器设置接口重构视频编码器接口_ev.mp4 25.03M │ ├── 6-11、完成音频编码接口封装和代码重构_ev_ev.mp4 22.25M │ ├── 6-12、完成音频推流接口XRtmp封装重构音频推流_ev_ev.mp4 34.57M │ ├── 7-01、封装音频XAudioRecord初始化和关闭接口_ev_ev.mp4 29.12M │ ├── 7-02、完成音频录制接口,录制缓冲队列处理_ev_ev.mp4 50.36M │ ├── 7-03、封装视频录制接口完成初始化和关闭接口_ev_ev.mp4 29.79M │ ├── 7-04、XDataThread数据处理线程类创建并实现_ev_ev.mp4 29.89M │ ├── 7-05、XAudioRecord集成数据基类重构_ev_ev.mp4 25.10M │ ├── 7-06、加入视频编码器和流_ev_ev.mp4 27.68M │ ├── 7-07、完成音视频推流封装处理未同步_ev_ev.mp4 39.39M │ ├── 7-08、音频推流同步策略分析_ev_ev.mp4 17.14M │ ├── 7-09、音视频同步时间计算代码分析第一部分_ev_ev.mp4 68.92M │ ├── 7-10、音视频同步二解决音频有相同pts情况_ev_ev.mp4 24.52M │ ├── 7-11、音视频同步三完成同步_ev_ev.mp4 18.55M │ ├── 8-01、磨皮双边滤波算法参数说明_ev_ev.mp4 18.06M │ ├── 8-02、双边滤波磨皮算法调用并测试性能_ev_ev.mp4 32.28M │ ├── 8-03、直播框架添加图像过滤XFilter接口并实现双边滤波磨皮类_ev_ev.mp4 39.86M │ ├── 8-04、直播框架添加美颜磨皮_ev_ev.mp4 21.34M │ ├── 8-05、XRtmpStreamer项目框架架构(类图)讲解_ev_ev.mp4 12.11M │ ├── 8-06、完成了XController音视频录制模块初始化_ev_ev.mp4 37.00M │ ├── 8-07、完成XController中的编码封装推流模块初始化_ev_ev.mp4 47.54M │ ├── 8-08、XController推流数据线程完成_ev_ev.mp4 48.57M │ ├── 8-09、QT直播推流项目完成界面设计_ev_ev.mp4 33.94M │ ├── 8-10、完成了qt项目直播推流_ev_ev.mp4 44.38M │ └── 【夏曹俊】C++编程FFMpegSDK美颜直播推流实战-基于qt5,opencv视频课程.zip 40.47M ├── 【夏曹俊11507】C++QT5跨平台界面编程原理和实战大全视频课程 │ ├── 01 介绍 │ │ ├── attached_files │ │ │ └── 002 QT5开发环境qtcreatorSDK和vs插件下载和安装 │ │ │ └── 1QT5-VS-QTCreator.zip 0.01M │ │ ├── 001 介绍_ev.mp4 12.42M │ │ ├── 002 QT5开发环境qtcreatorSDK和vs插件下载和安装_ev.mp4 20.24M │ │ ├── 003 QT的SDK中各个目录和文件功能说明_ev.mp4 17.69M │ │ ├── 004 创建第一个qtcreator项目并确定文件和目录的作用_ev.mp4 23.93M │ │ ├── 005 linux中安装qt及其依赖并编写测试项目_ev.mp4 15.69M │ │ ├── 006 windows下qtcreator调试环境安装配置使用_ev.mp4 18.04M │ │ ├── 007 qtcreator引入第三方opencv库和头文件路径_ev.mp4 16.83M │ │ ├── 008 qtcreator项目配置添加界面并设置构建和运行_ev.mp4 16.38M │ │ ├── 009 vs2015创建QT项目并详细介绍vs项目设置_ev.mp4 22.29M │ │ └── 010 VS设置编译的qt库版本和导出为qtcreator项目_ev.mp4 16.25M │ ├── 02 QMake项目原理和手动配置qtcreator │ │ ├── attached_files │ │ │ └── 011 qt项目由源码和界面资源文件到程序的步骤分析 │ │ │ └── 2QMake-qtcreator.zip 0.03M │ │ ├── 011 qt项目由源码和界面资源文件到程序的步骤分析_ev.mp4 14.04M │ │ ├── 012 配置vs和qmake环境变量执行qmake生成makefile_ev.mp4 17.78M │ │ ├── 013 通过批处理完成qt项目编译并移植到ubuntu下完成qt项目配置和编译_ev.mp4 20.80M │ │ ├── 014 qmake的pro项目导出为vs项目_ev.mp4 5.83M │ │ ├── 015 qmake引入qt库创建窗口设置头文件分析makefile并设置输出_ev.mp4 18.83M │ │ ├── 016 qmake语法设置pro中的库导入路径和导入库导入opencv_ev.mp4 10.63M │ │ ├── 017 qmake创建动态链接和静态链接库并在windows中输出dll和lib_ev.mp4 34.07M │ │ ├── 018 pro项目文件中设置dll和lib的输出路径并在ubuntu下测试so库_ev.mp4 16.19M │ │ ├── 019 qtcreator的debug版本和release版本配置和设置_ev.mp4 12.54M │ │ └── 020 qtcreator的qmake跨平台配置_ev.mp4 25.72M │ ├── 03 Qt信号槽使用及其原理 │ │ ├── attached_files │ │ │ └── 021 QT信号槽概念原理讲解 │ │ │ └── 3Qt.zip 0.01M │ │ ├── 021 QT信号槽概念原理讲解_ev.mp4 12.28M │ │ ├── 022 通过qt设计器qt designer设置关闭窗口和最小化窗口信号槽_ev.mp4 16.05M │ │ ├── 023 手动添加信号函数并分析qt的moc如何生成信号代码_ev.mp4 15.95M │ │ ├── 024 手动创建槽函数并在qt designer中实现手动创建的信号槽绑定_ev.mp4 12.79M │ │ └── 025 使用connect函数实现信号槽绑定并分析moc生成的槽函数代码_ev.mp4 29.38M │ ├── 04 Qt核心窗口基类QWidget │ │ ├── attached_files │ │ │ └── 026 QWidget类分析显示和隐藏接口说明线程类QThread使用方法 │ │ │ └── 4Qt-QWidget.zip 0.03M │ │ ├── 026 QWidget类分析显示和隐藏接口说明线程类QThread使用方法_ev.mp4 11.72M │ │ ├── 027 创建vs项目调用QWidget显示和隐藏并演示线程中调用槽函数的错误_ev.mp4 21.51M │ │ ├── 028 创建QWidget的子类添加支持信号槽的宏connect函数绑定信号槽_ev.mp4 10.71M │ │ ├── 029 获取QWidget坐标尺寸并设置geometry_ev.mp4 11.08M │ │ ├── 030 创建QThread子类并使用signals关键字创建信号函数_ev.mp4 13.25M │ │ ├── 031 使用slots手动创建槽函数并使用线程信号和槽中实现窗口移动动画_ev.mp4 18.21M │ │ ├── 032 QWidget窗口状态设置最大化最小化全屏_ev.mp4 19.37M │ │ └── 033 QWidget窗口样式设置无边框最大化最小化关闭按钮定义_ev.mp4 26.25M │ ├── 05 QString字符串处理及中文乱码问题处理 │ │ ├── attached_files │ │ │ └── 034 gbk_utf_ansi_asc字符集分析字节序 │ │ │ └── 5Qt-QString.zip 0.03M │ │ ├── 034 gbk_utf_ansi_asc字符集分析字节序_ev.mp4 30.71M │ │ ├── 035 QString项目创建空和NULL判断_ev.mp4 14.34M │ │ ├── 036 QString格式化字符串转换_ev.mp4 22.57M │ │ ├── 037 QString查找_截断_替换_分割字符串接口讲解_ev.mp4 7.52M │ │ ├── 038 QString的indexof查找字符串的示例_ev.mp4 18.06M │ │ ├── 039 QString字符串查找替换replace和切割split示例_ev.mp4 33.68M │ │ ├── 040 QString通过QRegexp正则表达式查找替换分割字符串_ev.mp4 17.09M │ │ ├── 041 Qt中文乱码问题在vs项目中显示中文_ev.mp4 18.19M │ │ ├── 042 VS中正常移植到QTCreator乱码的问题源码文件的编码格式转换_ev.mp4 24.37M │ │ └── 043 编码方式转换将QString中存放的中文在WinAPI中显示_ev.mp4 30.44M │ ├── 06 QLabelQPushButton和QLineEdit │ │ ├── attached_files │ │ │ └── 044 QLabel设置文件格式颜色背景色字体和大小 │ │ │ └── 6QLabel-QPushButton-QLineEdit.zip 0.68M │ │ ├── 044 QLabel设置文件格式颜色背景色字体和大小_ev.mp4 26.93M │ │ ├── 045 QLabel使用pixmap显示图和qss设置背景缩放图_ev.mp4 14.18M │ │ ├── 046 QLabel播放gif动画_ev.mp4 15.00M │ │ ├── 047 QLabel富文本显示并处理链接点击和hover信号_ev.mp4 18.41M │ │ ├── 048 QLable设置可编辑可选择并获取选择的文本_ev.mp4 25.95M │ │ ├── 049 QPushButton介绍和点击选择鼠标按住松开事件设置_ev.mp4 20.23M │ │ ├── 050 QPushButon快捷键设置组合键顺序按键激发信号_ev.mp4 11.50M │ │ ├── 051 QPushButton背景字体qss样式设置添加背景图片_ev.mp4 31.94M │ │ ├── 052 QPushButton使用qss添加圆角边框并添加渐变颜色_ev.mp4 13.92M │ │ ├── 053 QPushButton通过qss实现鼠标悬停设置不同的渐变背景_ev.mp4 10.08M │ │ ├── 054 QLineEdit分析文本内容提示_输入和获取只读删掉按钮最大输入_ev.mp4 33.36M │ │ ├── 055 QLineEdit只读_删除按钮_设置字符长度_重做和撤销_ev.mp4 15.13M │ │ ├── 056 QLineEdit的setInputMask输入掩码格式详解和示例_ev.mp4 34.65M │ │ ├── 057 QLineEdit的QValidator检验整型和浮点型输入并关闭科学计数法_ev.mp4 18.12M │ │ ├── 058 QLineEdit的QRegExpValidator正则验证邮箱格式_ev.mp4 25.66M │ │ ├── 059 QLineEdit的信号事件修改和确认_ev.mp4 35.62M │ │ └── 060 QLineEdit的qss样式设置_ev.mp4 29.01M │ ├── 07 QLayout布局器QObject子节点遍历 │ │ ├── attached_files │ │ │ └── 061 QObject子节点访问接口并示例遍历子节点 │ │ │ └── 7QLayout-QObject.zip 0.03M │ │ ├── 061 QObject子节点访问接口并示例遍历子节点_ev.mp4 20.78M │ │ ├── 062 递归遍历QObject所有子节点并获取控件类型做转换_ev.mp4 25.79M │ │ ├── 063 QVBoxLayout垂直布局器ui添加并分析其源码机制演示另三种布局器_ev.mp4 25.73M │ │ ├── 064 QSizePolicy布局尺寸策略分析_ev.mp4 14.25M │ │ ├── 065 手动创建代码添加QVBoxlayout布局窗口_ev.mp4 12.35M │ │ ├── 066 QVBoxLayout和QHboxLayout三种尺寸策略讲解和演示_ev.mp4 24.09M │ │ ├── 067 QVBoxLayout和QHboxLayout最大最小尺寸设置演示_ev.mp4 15.17M │ │ ├── 068 QGridLayout接口讲解和代码示例_ev.mp4 27.19M │ │ ├── 069 QFormLayout布局函数介绍并添加输入框按钮和子布局器_ev.mp4 33.18M │ │ └── 070 QFormLayout遍历布局中所有元素实现空验证和所有内容情况信号槽_ev.mp4 45.09M │ ├── 08 QCheckBoxQRadioBoxQComboBoxQSlider │ │ ├── attached_files │ │ │ └── 071 QCheckbox分析信号处理单选多选分组单选 │ │ │ └── 8QCheckBoxQRadioBoxQComboBoxQSlider.zip 0.05M │ │ ├── 071 QCheckbox分析信号处理单选多选分组单选_ev.mp4 34.42M │ │ ├── 072 QButtonGroup添加QCheckBox处理点击选择信号_ev.mp4 26.70M │ │ ├── 073 QRadioButton结合QButtonGroup和QVBoxLayout_ev.mp4 32.24M │ │ ├── 074 QComboBox控件介绍并使用界面设计器添加数据_ev.mp4 14.57M │ │ ├── 075 QComboBox通过代码添加内容包括图标_ev.mp4 22.78M │ │ ├── 076 QComboBox插入QVariant用户自定义数据_ev.mp4 19.23M │ │ ├── 077 QComboBox信号事件处理_ev.mp4 21.85M │ │ ├── 078 QSlider属性方法讲解和项目创建_ev.mp4 19.90M │ │ ├── 079 QSlider信号事件处理_ev.mp4 17.13M │ │ ├── 080 QSlider样式qss设计_ev.mp4 29.95M │ │ └── 081 QSlider重载鼠标事件UI支持自定义XSlider滑动条移到点击位置_ev.mp4 22.13M │ ├── 09 列表控件列表表格树 │ │ ├── attached_files │ │ │ └── 082 QListWidget基础和属性设置 │ │ │ └── 9.zip 1.18M │ │ ├── 082 QListWidget基础和属性设置_ev.mp4 33.05M │ │ ├── 083 QListWidget手动插入数据包含图标的多种方法_ev.mp4 18.05M │ │ ├── 084 QListWidget遍历元素和编辑列表实现_ev.mp4 20.45M │ │ ├── 085 QListWidget内容排序_ev.mp4 9.07M │ │ ├── 086 QlistWidget信号事件_ev.mp4 54.53M │ │ ├── 087 QListWidget显示其他控件_ev.mp4 11.57M │ │ ├── 088 QTableWidget控件介绍_ev.mp4 8.52M │ │ ├── 089 QTableWidget常用属性分析和代码分析_ev.mp4 56.06M │ │ ├── 090 QTableWidget水平和垂直标题的插入和设置_ev.mp4 36.87M │ │ ├── 091 QTableWidget插入数据插入图标图片和widget控件_ev.mp4 35.80M │ │ ├── 092 QTableWidget选择多行和删除多行处理_ev.mp4 54.50M │ │ ├── 093 QTableWidget信号鼠标悬停事件_ev.mp4 26.50M │ │ ├── 094 QTableWidget标题栏点击信号_ev.mp4 29.13M │ │ ├── 095 QTableWidget样式qss设定_ev.mp4 25.98M │ │ ├── 096 QTreeWidget介绍_ev.mp4 7.91M │ │ ├── 097 QTreeWidget属性分析和设置_ev.mp4 23.41M │ │ ├── 098 QTreeWidget标题插入和设置_ev.mp4 32.61M │ │ ├── 099 QTreeWidget插入数据图标widget_ev.mp4 41.88M │ │ ├── 100 QTreeWIdget信号事件_ev.mp4 29.56M │ │ └── 101 QTreeWidget样式qss设置_ev.mp4 32.42M │ ├── 10 QDialog和进度条 │ │ ├── attached_files │ │ │ └── 102 QDialog属性方法设置 │ │ │ └── 10QDialog.zip 0.01M │ │ ├── 102 QDialog属性方法设置_ev.mp4 28.73M │ │ ├── 103 重载QDialog开发自定义样式圆角边框和按钮的XMessageBox_ev.mp4 31.80M │ │ ├── 104 QProgressBar进度条线程模拟显示_ev.mp4 31.00M │ │ └── 105 QDialog进度条结束后窗口淡出动画_ev.mp4 20.94M │ ├── 11 菜单工具栏和状态栏QMainWindow │ │ ├── attached_files │ │ │ └── 106 QT菜单QMenuBar接口介绍 │ │ │ └── 11-QMainWindow.zip 0.39M │ │ ├── 106 QT菜单QMenuBar接口介绍_ev.mp4 6.57M │ │ ├── 107 QMenuBar通过代码添加到三级菜单_ev.mp4 17.50M │ │ ├── 108 QMenu和QAction菜单事件信号_ev.mp4 15.15M │ │ ├── 109 鼠标悬停动态产生Qmenu菜单_ev.mp4 15.32M │ │ ├── 110 QMenu菜单的单选和多选_ev.mp4 11.96M │ │ ├── 111 QMenu按钮菜单_ev.mp4 13.02M │ │ ├── 112 QTooBar工具栏和QStatusBar状态栏_ev.mp4 13.35M │ │ └── 113 QMainWindow菜单工具状态栏_ev.mp4 33.59M │ ├── 12 QT事件重载 QEvent │ │ ├── attached_files │ │ │ └── 114 重载并测试所有事件的入口函数event │ │ │ └── 12QT-QEvent.zip 0.04M │ │ ├── 114 重载并测试所有事件的入口函数event_ev.mp4 19.27M │ │ ├── 115 重载event或按下松开函数捕获键盘事件解决连按问题_ev.mp4 25.53M │ │ ├── 116 鼠标事件三种坐标按键状态和重载事件函数介绍_ev.mp4 16.59M │ │ ├── 117 鼠标事件代码演示三种坐标显示和转换_ev.mp4 33.25M │ │ ├── 118 鼠标按键事件左右键和中间键_ev.mp4 12.39M │ │ ├── 119 鼠标双击单击和移动事件并示例右键菜单_ev.mp4 19.32M │ │ ├── 120 鼠标图标替换为图片_ev.mp4 12.67M │ │ └── 121 窗口大小变化事件自动改变控件大小_ev.mp4 22.52M │ ├── 13 QT图像绘制QPainter │ │ ├── attached_files │ │ │ └── 122 QPainter的qt绘制介绍 │ │ │ └── 13QT-QPainter.zip 0.40M │ │ ├── 122 QPainter的qt绘制介绍_ev.mp4 8.49M │ │ ├── 123 绘制文本并设置动态设置字体_ev.mp4 22.88M │ │ ├── 124 绘制线并设置线的参数_ev.mp4 26.99M │ │ ├── 125 QImage各种创建空间的接口并做清理和空判断_ev.mp4 10.48M │ │ ├── 126 QImage空间访问接口内存存储方式图像拉升和存储_ev.mp4 17.97M │ │ └── 127 QImage代码演示多种遍历方法修改图像_ev.mp4 25.81M │ ├── 14 Qt实战图片编辑器XPS │ │ ├── attached_files │ │ │ └── 128 XPS图片编辑项目需求设计 │ │ │ └── 14Qt-XPS.zip 3.92M │ │ ├── 128 XPS图片编辑项目需求设计_ev.mp4 7.06M │ │ ├── 129 XPS项目创建界面设计_ev.mp4 15.38M │ │ ├── 130 XPS菜单打开并显示图像_ev.mp4 29.73M │ │ ├── 131 XPS抗锯齿的画笔功能_ev.mp4 24.09M │ │ ├── 132 XPS画笔的粗细设置_ev.mp4 13.75M │ │ ├── 133 XPS画笔颜色设置_ev.mp4 11.44M │ │ ├── 134 XPS橡皮擦功能完成_ev.mp4 31.11M │ │ └── 135 XPS图片保存功能完成和课程结束语_ev.mp4 14.81M │ ├── 第15章综合案例XPS2.0 │ │ ├── 15-01、MVC图片编辑器项目介绍和UML知识回顾_ev.mp4 13.25M │ │ ├── 15-02、MVC模式讲解_ev.mp4 10.30M │ │ ├── 15-03、项目功能说明用到的设计模式说明_ev_ev.mp4 11.47M │ │ ├── 15-04、抽象工厂、单例、观察者、门面模式回顾_ev_ev.mp4 25.75M │ │ ├── 15-05、创建XImageEdit项目并提升QWidget_ev_ev.mp4 23.73M │ │ ├── 15-06、手动添加打开文件的信号槽_ev_ev.mp4 21.97M │ │ ├── 15-07、完成Qt打开并显示图片_ev_ev.mp4 28.13M │ │ ├── 15-08、完成XEditView的初始化和载入背景图_ev_ev.mp4 32.16M │ │ ├── 15-09、重载鼠标事件完成画笔功能_ev_ev.mp4 31.86M │ │ ├── 15-10、观察者模式代码IObserver_ev_ev.mp4 22.20M │ │ ├── 15-11、观察者模式XModel_ev_ev.mp4 48.87M │ │ ├── 15-12、完成控制器、模型、视图的抽象工厂模式创建_ev_ev.mp4 45.95M │ │ ├── 15-13、将模型和视频与用户代码解耦合有_ev.mp4 41.22M │ │ ├── 15-14、重构划线到IGraph接口并添加划线的样式_ev.mp4 64.07M │ │ ├── 15-15、重构XPenGraph用模板技术在工厂中注册_ev.mp4 32.74M │ │ ├── 15-16、注册了XErasGraph完成了橡皮檫功能_ev.mp4 33.97M │ │ ├── 15-17、注册了XRectGraph添加了画矩形存在未清_ev.mp4 32.81M │ │ ├── 15-18、修正了矩形绘制的残影添加XImageGraph_ev.mp4 49.68M │ │ ├── 15-19、完成了Undo和Redo代码_ev.mp4 32.16M │ │ ├── 15-20、完成了画笔的粗细设置_ev.mp4 36.17M │ │ ├── 15-21、完成画笔颜色设置_ev.mp4 38.35M │ │ └── 15-22、项目完成优化界面添加图标和按钮_ev.mp4 41.92M │ └── C++QT5跨平台界面编程原理和实战大全视频课程.zip 41.64M ├── 【夏曹俊12822】FFmpeg安卓流媒体播放器开发实战视频课程 -基于NDK、C++和 FFmpeg Android │ ├── 1-01、课程介绍_ev_ev.mp4 51.65M │ ├── 1-02、音视频基础知识Mpeg4封装格式音视频编码格式讲解_ev_ev.mp4 18.71M │ ├── 1-03、音视频解封装和解码原理分析_ev.mp4 33.13M │ ├── 1-04、图形像素格式RGB和YUV格式分析_ev.mp4 26.79M │ ├── 1-05、PCM音频采样率_通道_planar等格式参数分析_ev.mp4 18.29M │ ├── 1-06、MP4标准和h264格式的NAL的GOP分析_ev.mp4 29.73M │ ├── 2-01、开发所用到的工具和sdk介绍_ev.mp4 12.02M │ ├── 2-02、AndroidStudio开发工具安装使用讲解_ev.mp4 28.31M │ ├── 2-03、Android SDK目录内容分析_ev.mp4 12.44M │ ├── 2-04、AndroidNDK工具目录功能分析_ev.mp4 10.58M │ ├── 2-05、安卓模拟器安装和第一个c++安卓程序编译运行_ev.mp4 44.99M │ ├── 3-01、安卓NDK相关概念ABI、NEON、JNI和CMAKE分析_ev.mp4 22.74M │ ├── 3-02、NDK中CPU的应用二进制界面ABI_ev.mp4 17.38M │ ├── 3-03、ubuntu虚拟机及常用工具安装并配置samba共享目录_ev.mp4 45.84M │ ├── 3-04、ffmpeg源码下载在android下的编译参数分析讲解_ev.mp4 25.15M │ ├── 3-05、在ubuntu下交叉编译ffmpeg的android版本库_ev.mp4 57.40M │ ├── 3-06、ffmpeg通用编译bash脚本编写、硬解码、neon、多线_ev.mp4 62.21M │ ├── 3-07、AndroidStudio项目配置权限、jni库路径、ABI_ev.mp4 14.55M │ ├── 3-08、cmake配置(导入库、头文件、链接)分析_ev.mp4 21.79M │ ├── 3-09、创建支持ffmpeg的AndroidStudio项目并调用_ev.mp4 56.26M │ ├── 3-10、JNI和c传递文件路径并设置app的读写权限_ev.mp4 44.65M │ ├── 4-01、ffmpeg SDK软硬解码流程说明_ev.mp4 7.40M │ ├── 4-02、ffmpeg音视频解封装用到的函数和结构体详解_ev.mp4 15.95M │ ├── 4-03、avformat_open_input函数详解并示例打开mp_ev.mp4 47.26M │ ├── 4-04、AVFormatContext结构分析和清理代码示例_ev.mp4 17.91M │ ├── 4-05、avformat_find_stream_info探测_ev.mp4 24.73M │ ├── 4-06、AVStream和AVCodecParameters分析_ev.mp4 29.18M │ ├── 4-07、通过遍历获取AVStream音视频流信息并打印参数_ev.mp4 43.54M │ ├── 4-09、av_read_frame读取帧数据函数分析和产生的空间问题_ev.mp4 11.17M │ ├── 4-10、AVPacket结构解析空间申请-初始化-复制-引用计数函数_ev.mp4 18.26M │ ├── 4-11、av_seek_frame改变播放进度函数详解_ev.mp4 15.20M │ ├── 4-12、av_read_frame和av_seek_frame代码_ev.mp4 26.24M │ ├── 5-01、AVCodecContext解码上下文初始化讲解和视频解码器_ev.mp4 42.61M │ ├── 5-02、打开音频解码器上下文_ev.mp4 15.03M │ ├── 5-03、AVFrame格式解析和空间处理函数_ev.mp4 15.69M │ ├── 5-04、avcodec_send_packet和receive_ev.mp4 12.64M │ ├── 5-05、音视频多线程解码代码演示_ev.mp4 22.61M │ ├── 5-06、音视频解码性能测试neon单线程和八线程解码测试代码_ev.mp4 34.72M │ ├── 5-07、ffmpeg调用MediaCodec实现硬解码代码演示_ev.mp4 11.93M │ ├── 6-01、sws_getContext和sws_scale像素格式_ev.mp4 24.18M │ ├── 6-02、sws_scale像素格式转换代码演示_ev.mp4 43.09M │ ├── 6-03、音频重采样SwrContext格式和swr_convert_ev.mp4 9.34M │ ├── 6-04、swr_init音频重采样上下文初始化和swr_conver.mp4 33.73M │ ├── 6-04、swr_init音频重采样上下文初始化和swr_conver_ev.mp4 44.27M │ ├── 6-05、分析GLSurfaceView和NDK接口直接显示RGB视频_ev.mp4 16.94M │ ├── 6-06、使用NDK通过GLSurfaceView双缓冲空间复制完成视_ev.mp4 67.00M │ ├── 6-07、安卓视频播放窗口去掉标题栏、全屏、横屏_ev.mp4 23.92M │ ├── 7-01、OpenSLES播放音频步骤和接口讲解_ev.mp4 36.37M │ ├── 7-02、创建OpenSLES音频播放测试项目并完成引擎初始化_ev.mp4 29.86M │ ├── 7-03、完成OpenSLES混音器CreateOutputMix初始_ev.mp4 14.72M │ ├── 7-04、配置OpenSL的PCM音频输入格式_ev.mp4 11.34M │ ├── 7-05、读取pcm音频文件并使用OpenSL播放_ev.mp4 60.53M │ ├── 8-01、egl和opengl_shader_glsl讲解_ev.mp4 24.16M │ ├── 8-02、testopengles_shader项目配置和创建_ev.mp4 27.36M │ ├── 8-03、NDKC++完成EGL、display、surface_ev.mp4 48.60M │ ├── 8-04、Opengl ES Shader顶点坐标和材质坐标分析_ev.mp4 18.15M │ ├── 8-05、顶点着色器代码glsl代码编写_ev.mp4 16.20M │ ├── 8-06、yuv420p片元着色器glsl编写_ev.mp4 32.66M │ ├── 8-07、shader初始化完成并编译顶点和片元着色器代码_ev.mp4 28.15M │ ├── 8-08、program渲染程序初始化给shader传递顶点和材质顶点_ev.mp4 40.40M │ ├── 8-09、opengl的yuv纹理的创建和初始化_ev.mp4 41.32M │ ├── 8-10、OpenglES纹理数据修改和显示_ev.mp4 23.13M │ ├── 8-11、通过OpenglES纹理修改完成yuv文件的播放显示_ev.mp4 14.22M │ ├── 9-01、视频播放器项目设计说明和UML类图知识讲解_ev.mp4 24.00M │ ├── 9-02、模块分解和用到的7个设计模式讲解_ev.mp4 23.97M │ ├── 9-03、适配器、建造者、代理模式讲解_ev.mp4 28.62M │ ├── 9-04、门面模式&生产者消费者模式_ev.mp4 13.36M │ ├── 9-05、Observer观察者模式讲解和应用_ev.mp4 9.34M │ ├── 9-06、解码显示帧数据处理顺序图和开发计划讲解_ev.mp4 15.03M │ ├── 10-01、项目创建权限ABI和CMake相关库和头文件配置_ev.mp4 22.90M │ ├── 10-02、创建安卓流媒体播放器XPlay项目并配置添加了解封装模块代码_ev.mp4 33.38M │ ├── 10-03、FFDemux的Open实现打开媒体文件_ev.mp4 36.14M │ ├── 10-04、FFdemux的Read读取帧数据接口编写_ev.mp4 25.10M │ ├── 10-05、完成XThread线程类IDemux继承后在线程中读取帧数据_ev.mp4 31.18M │ ├── 10-06、添加了XSleep完成XThread线程函数的停止和超时判断_ev.mp4 21.34M │ ├── 10-07、观察者Observer模式的代码实现并使用IDemux测试_ev.mp4 30.87M │ ├── 10-08、IDecode和FFDecode模块代码创建_ev.mp4 22.48M │ ├── 10-09、FFDecode的Open打开解码器接口编写Observer_ev.mp4 23.49M │ ├── 10-10、添加IDemux的GetVPara获取视频XParamter_ev.mp4 14.10M │ ├── 10-11、封装FFDecode解码的Send和Recv接口_ev.mp4 30.36M │ ├── 10-12、读取媒体帧数据获取类型信息(音频、视频)存入XData_ev.mp4 18.24M │ ├── 10-13、完成音视频解码和并重构解码器加入观察者模式_ev.mp4 24.65M │ ├── 10-14、加入生产者消费者模式控制音视频缓冲_ev.mp4 38.69M │ ├── 11-01、IVideoView显示模块架构讲解和代码创建_ev_ev.mp4 41.21M │ ├── 11-02、IEGL类初始化封装java部分添加XPlay窗口类_ev_ev.mp4 50.50M │ ├── 11-03、XShader基于yuv420p的初始化Init代码完成并测_ev_ev.mp4 37.12M │ ├── 11-04、XTexture初始化并完成GLVideoView的调用_ev_ev.mp4 31.92M │ ├── 11-05、GLVideoView完成使用shader显示视频_ev_ev.mp4 70.22M │ ├── 11-06、完成音频重采样IResample模块初始化代码_ev_ev.mp4 24.28M │ ├── 11-07、完成音频重采样IResample模块的处理功能_ev_ev.mp4 57.39M │ ├── 11-08、完成了IAudioPlay和SLAudioPlay的音频播放_ev_ev.mp4 71.83M │ ├── 11-09、IAudioPlay的Update将音频压入缓冲队列并测试_ev_ev.mp4 25.56M │ ├── 11-10、SLAudioPlay音频播放完成并测试对MP4文件音视频播_ev_ev.mp4 24.71M │ ├── 11-11、完成硬解码并完成NV21和NV12格式的shader显示编写_ev_ev.mp4 104.23M │ ├── 11-12、解决android8.0下opengles不能播放的问题_ev_ev.mp4 12.64M │ ├── 12-01、完成facade模式的IPlayer并实现Open接口_ev_ev.mp4 65.23M │ ├── 12-02、完成Iplayer开始播放和窗口初始化接口_ev_ev.mp4 22.09M │ ├── 12-03、完成Builder模式的IPlayerBuilder构建IP_ev_ev.mp4 68.57M │ ├── 12-04、完成IPlayerProxy代理模式并进行测试架构搭建完成_ev_ev.mp4 31.40M │ ├── 12-05、统一换算pts为毫秒使用IPlayer完成音视频同步播放_ev_ev.mp4 63.36M │ ├── 12-06、IDemux&FFdemux线程安全和Close清理函数编写_ev_ev.mp4 17.91M │ ├── 12-07、FFdecode和FFResample线程安全处理Close_ev_ev.mp4 29.52M │ ├── 12-08、SLAudioPlay的线程安全处理和Close清理函数编写_ev_ev.mp4 30.77M │ ├── 12-09、XEGL的线程安全处理和Close清理函数编写_ev_ev.mp4 18.26M │ ├── 12-10、XShader线程安全处理和Close清理函数编写_ev_ev.mp4 22.96M │ ├── 12-11、XTexture和GLVideoView的线程安全和清理函数_ev_ev.mp4 20.52M │ ├── 12-12、IPlayer完成Close清理函数编写并完成多次打开视频_ev_ev.mp4 42.76M │ ├── 12-13、添加打开视频按钮和进度滑动条并响应打开事件_ev_ev.mp4 23.24M │ ├── 12-14、添加视频打开路径和香港卫视rtmp打开路径的界面_ev_ev.mp4 14.44M │ ├── 12-15、完成通过界面多次打开视频文件,修正了多次打开显示出现的bug_ev_ev.mp4 33.95M │ ├── 12-16、在835cpu的手机中测试并修正了音频播放Close的bug_ev_ev.mp4 27.49M │ ├── 12-17、完成了播放进度的显示并修正了硬解码参数传递错误_ev_ev.mp4 41.74M │ ├── 12-18、滑动条拖动Seek视频开发策略详细分析_ev_ev.mp4 13.40M │ ├── 12-19、完成了IDemux的Seek和界面SeekBar的事件响应_ev_ev.mp4 39.46M │ ├── 12-20、添加了视频播放的暂停和恢复_ev_ev.mp4 42.66M │ ├── 12-21、修改了视频播放到结尾再次打开会锁死的bug_ev_ev.mp4 24.04M │ └── 12-22、通过手动解码帧数据完成了IPlayer控制视频播放进度的功能_ev_ev.mp4 41.68M ├── 【夏曹俊12840】Windows 程序设计应用开发视频课程 │ ├── 1-01、课程介绍_ev_ev.mp4 23.97M │ ├── 1-02、详解代码到windows程序执行经历步骤及bug(夏曹俊)_ev_ev.mp4 16.53M │ ├── 1-03、vs项目中各类文件(项目、解决方案、资源、代码)作用-夏曹俊_ev_ev.mp4 21.53M │ ├── 1-04、vs项目各项配置详解和调试演示(夏曹俊)_ev.mp4 38.38M │ ├── 2-01、进程及其布局介绍_ev.mp4 14.68M │ ├── 2-02、CreateProcess函数详解_ev.mp4 38.15M │ ├── 2-03、CPU的保护模式与进程空间_ev.mp4 10.10M │ ├── 2-04、逻辑地址、线性地址与物理地址的内涵_ev.mp4 13.13M │ ├── 2-05、closehandle关闭的是什么_ev.mp4 11.61M │ ├── 2-06、进程列表获取中进程快照的概念剖析和代码演示_ev.mp4 27.99M │ ├── 2-07、C++运行时与操作系统调度进程中的资源泄漏-终止进程中的资源_ev.mp4 13.36M │ ├── 2-08、终止其他进程代码案例_ev.mp4 11.05M │ ├── 2-09、进程空间侵入技术原理-内存修改器核心代码讲解_ev.mp4 18.17M │ ├── 2-10、进程内存修改器实战-目标程序和memchange接口开发_ev.mp4 20.25M │ ├── 2-11、MemChange-Main函数主体逻辑完成_ev.mp4 21.55M │ ├── 2-12、MemChange-读取每一页内存_ev.mp4 20.45M │ ├── 2-13、进程内存修改器实战-项目完成_ev.mp4 24.14M │ ├── 2-14、通过CreateMutex实现控制进程的运行的唯一性_ev.mp4 11.16M │ ├── 2-15、通过预处理指令和替代函数实现控制台的显示和隐藏_ev.mp4 20.29M │ ├── 3-01、线程概念与函数、线程关系理解windows应用程序设计_ev.mp4 14.48M │ ├── 3-02、线程创建原理和CreateThread函数原理讲解和代码演示_ev.mp4 27.56M │ ├── 3-03、线程内核对象上下文和对象参数详解_ev.mp4 10.48M │ ├── 3-04、线程终止及其资源问题_ev.mp4 11.48M │ ├── 3-05、低优先级线程为何会被先执行SetThreadPriority_ev.mp4 28.70M │ ├── 3-06、操作系统乱序推进线程指令的本质剖析、线程同步与时间有关的错误_ev.mp4 37.56M │ ├── 3-07、线程同步临界区原理和CreateMutex代码演示_ev.mp4 13.52M │ ├── 3-08、Interlock与CreateMutex中线程锁的代价原理_ev.mp4 16.75M │ ├── 3-09、信号量同步详解及代码演示_ev.mp4 28.76M │ ├── 3-10、CreateEvent事件同步详解及代码演示_ev.mp4 22.11M │ ├── 4-01、windows图形用户界面程序设计引论及代码演示获取窗口程序_ev.mp4 15.22M │ ├── 4-02、WindowsGUI程序编程思路及HelloWindows程_ev.mp4 12.67M │ ├── 4-03、windows消息驱动原理分析_ev.mp4 7.91M │ ├── 4-04、窗口注册详解_ev.mp4 14.56M │ ├── 4-05、创建和显示窗口更新客户器和消息捡取代码及原理分析_ev.mp4 16.62M │ ├── 4-06、窗口回调函数原理剖析_ev.mp4 11.14M │ ├── 4-07、windows窗体注册和显示代码编写并调试_ev.mp4 39.03M │ ├── 4-08、消息机制原理(事件驱动)释疑_ev.mp4 13.38M │ ├── 4-09、打字游戏程序示例-完成项目创建和菜单加入_ev.mp4 17.21M │ ├── 4-10、项目加入图标并添加菜单响应事件代码_ev.mp4 18.67M │ ├── 4-11、Windows窗口坐标体系分析和WM_PAINT事件处理并添_ev.mp4 7.11M │ ├── 4-12、键盘响应消息WM_CHAR消息处理和代码演示_ev.mp4 16.77M │ ├── 4-13、鼠标消息响应原理和设置背景颜色代码演示_ev.mp4 20.03M │ ├── 4-14、定时器SetTimerWM_CREATE消息和鼠标按下事件处_ev.mp4 37.27M │ ├── 5-01、按钮控件与Win32窗体交互编程-基于石头剪刀布游戏综合案例_ev.mp4 35.82M │ ├── 5-02、表驱动编程技术-游戏业务逻辑和开发策略分析_ev.mp4 16.42M │ ├── 5-03、游戏策略函数完成并通过单元测试_ev.mp4 21.04M │ ├── 5-04、随机数产生开发完成游戏整合发并进行总结_ev.mp4 26.38M │ ├── 5-05、Win32Dialog对话框的打开和关闭_ev.mp4 20.69M │ ├── 5-06、窗口添加按钮文本框和输入框控件_ev.mp4 34.21M │ ├── 5-07、文本框编辑效果单选和标准按钮事件处理并完成项目_ev.mp4 21.91M │ ├── 5-08、窗体间信息传递弹出对话框实现_ev.mp4 39.90M │ ├── 5-09、窗口间信息传递完成_ev.mp4 30.23M │ ├── 5-10、控件使用综合案例需求分析和界面设计完成_ev.mp4 14.87M │ ├── 5-11、综合案例-主窗口框架界面图标代码搭建完成_ev.mp4 27.62M │ ├── 5-12、综合案例-完成图片显示并分析setwindowLong接口_ev.mp4 16.50M │ ├── 5-13、综合案例-处理WM_COMMAND消息并完成退出程序_ev.mp4 19.70M │ ├── 5-14、综合案例-窗口置顶图片显示和隐藏功能完成总结_ev.mp4 35.84M │ ├── 6-01、MFC开发windows应用导读_ev.mp4 16.48M │ ├── 6-02、拒绝App Wizard-MFC封装讲解并通过它创建第一个_ev.mp4 35.43M │ ├── 6-03、MFC消息驱动是事件编程概率并编写MFC消息循环代码_ev.mp4 44.33M │ ├── 6-04、MFC综合案例-MFC开发windows应用程序_ev.mp4 13.89M │ ├── 6-05、MFC综合应用-完成窗口初始化和消息映射和构造函数_ev.mp4 21.79M │ ├── 6-06、MFC综合应用-完成Timer消息_ev.mp4 14.73M │ ├── 6-07、MFC综合案例-Paint消息项目完成和总结_ev.mp4 15.98M │ ├── 7-01、windows文件的编码格式_ev_ev.mp4 23.36M │ ├── 7-02、文件格式-Windows XP系统中Bug的深入解读-BOM_ev_ev.mp4 21.15M │ ├── 7-03、流式文件加密原理与凯撒加密的困境_ev_ev.mp4 12.58M │ ├── 7-04、内存映射文件-内存DC和客户区DC_ev_ev.mp4 15.24M │ ├── 7-05、ReadBmp案例代码框架搭建_ev_ev.mp4 16.63M │ ├── 7-06、UI和BMP的绘制代码完成_ev_ev.mp4 27.83M │ ├── 7-07、内存映射原理和文件找到_ev_ev.mp4 27.43M │ ├── 7-08、内存映射文件编码完成并总结_ev_ev.mp4 46.88M │ ├── 7-09、多字节和宽字节转换方式和A2W,W2A字节转换宏(夏曹俊)_ev_ev.mp4 29.28M │ ├── 7-10、MultiByteToWideChar多字节转为宽字节夏曹俊_ev_ev.mp4 15.86M │ ├── 7-11、WideCharToMultiByte宽字节转为多字节夏曹俊_ev_ev.mp4 25.76M │ ├── 7-12、FindFirstFile访问目录并递归访问子目录(夏曹俊)_ev_ev.mp4 49.61M │ ├── 8-01、windows服务开发框架解析_ev_ev.mp4 10.85M │ ├── 8-02、注册ServicesMain接口功能编写完成_ev_ev.mp4 32.54M │ ├── 8-03、Windows服务CtrlHandler完成_ev_ev.mp4 21.88M │ ├── 8-04、Windows服务示例程序完成_ev_ev.mp4 15.70M │ ├── 8-05、动态链接库原理分析_ev_ev.mp4 37.90M │ ├── 8-06、静态库lib使用的代码演示_ev_ev.mp4 28.48M │ ├── 8-07、exeScope观察导出函数名-dll动态链接库生成并通过_ev_ev.mp4 25.86M │ ├── 8-08、动态链接库类导出项目创建和依赖关系设置(夏曹俊)_ev_ev.mp4 20.88M │ ├── 8-09、动态链接库lib+dll引用,并设置通用动态库头文件(夏曹俊_ev_ev.mp4 46.03M │ ├── 8-10、dllmain入口文件分析及多线程调用代码演示(夏曹俊)_ev_ev.mp4 21.40M │ └── Windows程序设计应用开发视频课程.zip 69.89M ├── 【夏曹俊13746】C++实战之 windows MFC 工程应用开发与框架原理完全剖析视频教程 │ ├── 1-01、课程介绍_ev_ev.mp4 35.47M │ ├── 1-02、导论:MFC windows程序开发究竟是什么_ev_ev.mp4 39.89M │ ├── 1-03、CWinApp、CFrameWnd与windows对象的对应_ev_ev.mp4 32.71M │ ├── 1-04、通过代码逐项比对MFC对象和Windows对象的概念_ev_ev.mp4 19.16M │ ├── 1-05、从Windows对象到MFC对象,成员变量与函数的辨析_ev_ev.mp4 21.02M │ ├── 1-06、消息映射与windows事件驱动编程_ev_ev.mp4 17.77M │ ├── 1-07、MFC本质的概要小结及VS编译器生成MFC代码剖析_ev_ev.mp4 7.68M │ ├── 1-08、MFC对象与资源绑定的代码演示_ev_ev.mp4 49.12M │ ├── 1-09、添加成员变量剖析_ev_ev.mp4 19.07M │ ├── 1-10、值类型、控件类型与Windows API的关系_ev.mp4 18.06M │ ├── 1-11、值类型、控件类型与UpdateData的原理解释-以CEdi_ev.mp4 33.07M │ ├── 1-12、从对话框应用程序出发掌握定制MFC的开发能力以Checkbo_ev.mp4 40.28M │ ├── 1-13、Combox控件与Trace使用技巧_ev.mp4 33.73M │ ├── 1-14、CListbox、Button控件、Edit综合-消息映射_ev.mp4 57.77M │ ├── 1-15、网页管理专家标准控件综合案例(上)-App Wizard_ev.mp4 73.58M │ ├── 1-16、网页管理专家标准控件综合案例(下)-剪贴板与跨进程通信原理详_ev.mp4 50.30M │ ├── 1-17、MFC多线程开发:概论_ev.mp4 18.02M │ ├── 1-18、多线程文件搜索器的实践案例:MFC线程对象是一个复杂构成_ev.mp4 12.57M │ ├── 1-19、多线程文件所搜前继知识FindFile API演示与实现思路_ev.mp4 37.11M │ ├── 1-20、搜索辅助线程设计_ev.mp4 48.84M │ ├── 1-21、主线程业务逻辑介绍_ev.mp4 33.90M │ ├── 1-22、工作者线程设计与消息循环的Crash Bug解读_ev.mp4 87.48M │ ├── 1-23、工作者线程与UI线程通信:UI线程核心观念_ev.mp4 48.72M │ ├── 1-24、自定义消息通信机制综合案例:日志切割器案例(一):资源文件_ev.mp4 89.95M │ ├── 1-25、自定义消息通信机制综合案例:文件切割核心代码完成(二)_ev.mp4 147.02M │ ├── 1-26、自定义消息通信机制综合案例:UI主线程与文件切割线程通信_ev.mp4 155.46M │ ├── 2-01、导论:MFC windows程序开发究竟是什么1_ev.mp4 21.31M │ ├── 2-02、使用C++语法封装Windows SDK C 风格程序_ev.mp4 92.00M │ ├── 2-03、第一个MFC的简易封装:HINSTANCE、句柄_ev.mp4 43.92M │ ├── 2-04、简易封装案例上——从MFC中Cwnd与CWinApp的原型_ev.mp4 94.78M │ ├── 2-05、简易封装案例下——从C到C++的封装困境_ev.mp4 39.23M │ ├── 3-01、MFC顶层类结构设计与RTTI、CRunTimeClass设_ev.mp4 101.94M │ ├── 3-02、RTTI设计与验证_ev.mp4 57.80M │ ├── 3-03、动态类型识别技术:DyNamic的设计与实现_ev.mp4 67.23M │ ├── 3-04、动态创建技术——Declare宏_ev.mp4 51.71M │ ├── 3-05、CWinThread的深入剖析与实现(1)_ev.mp4 88.45M │ ├── 3-06、CWinThread的深入剖析与实现(2)_ev.mp4 35.44M │ ├── 3-07、CWinThread的深入剖析与实现(3)_ev.mp4 34.28M │ ├── 3-08、CWinThread的深入剖析与实现(4)_ev.mp4 61.18M │ ├── 3-09、CWinThread的深入剖析与实现(5)_ev.mp4 24.36M │ ├── 3-10、MFC工作者线程的设计-MFC封装TLS的头文件编码实现_ev.mp4 55.23M │ ├── 3-11、MFC工作者线程的设计-MFC封装TLS 1_ev.mp4 48.44M │ ├── 3-12、MFC工作者线程的设计-MFC封装TLS2_ev.mp4 35.85M │ ├── 3-13、CThreadSlotData的析构、deletvalue_ev.mp4 49.21M │ ├── 3-14、MFC工作者线程的设计-MFC封装TLS的单元测试与总结_ev.mp4 37.74M │ ├── 3-15、MFC工作者线程的设计-CWinThread的完整实现_ev.mp4 175.06M │ ├── 3-16、MFC工作者线程的设计-CWinThread的单元测试与Bu_ev.mp4 36.06M │ ├── 3-17、MFC工作者线程的设计-CWinThread流程运行总结_ev.mp4 23.65M │ ├── 3-18、CWinApp的深入剖析与实现(1)——从CWinThrea_ev.mp4 16.33M │ ├── 3-19、从CWinThread到CWinApp-WinMain函数被_ev.mp4 15.70M │ ├── 3-20、从CWinThread到CWinApp-CWinApp工程建_ev.mp4 34.39M │ ├── 3-21、从CWinThread到CWinApp-CWinApp的类结_ev.mp4 27.82M │ ├── 3-22、从CWinThread到CWinApp-CWinApp的线程_ev.mp4 54.54M │ ├── 3-23、从CWinThread到CWinApp-MFC框架_ev.mp4 48.42M │ ├── 3-24、从CWinThread到CWinApp单元测试与CWinAp_ev.mp4 56.44M │ ├── 3-25、从CWinThread到CWinApp-调试技巧演示与MFC_ev.mp4 34.16M │ ├── 3-26、从CWinThread到CWinApp-MFC框架是MFC_ev.mp4 74.59M │ ├── 3-27、CWnd的深入剖析与实现(1)_ev.mp4 79.05M │ ├── 3-28、从HWND窗口句柄到CWnd的C++对象_ev.mp4 155.38M │ ├── 3-29、从HWND窗口句柄到CWnd的C++对象:CWnd映射辅助工_ev.mp4 18.47M │ ├── 3-30、消息循环基础类CCmdTarget的设计_ev.mp4 67.27M │ ├── 3-31、消息循环基础类CWnd的定义_ev.mp4 49.07M │ ├── 3-32、消息循环基础类CWnd的句柄映射_ev.mp4 57.08M │ ├── 3-33、消息循环基础类CWnd的窗口注册与消息分发_ev.mp4 66.99M │ ├── 3-34、消息循环基础类CWnd中MFC使用消息钩子技术拦截所有到本应_ev.mp4 55.30M │ ├── 3-35、消息循环基础类CWnd中CreateEx的实现_ev.mp4 42.89M │ ├── 3-36、消息循环基础类CWnd的实现与单元测试验证_ev.mp4 55.92M │ ├── 3-37、消息映射的剖析与实现(1)——AfxSig、DECLARE__ev.mp4 87.68M │ ├── 3-38、消息映射的剖析与实现(2)——CWnd、CCmdTarget_ev.mp4 101.11M │ ├── 3-39、消息映射的剖析与实现(3)——单元测试构建以及MFC核心功能_ev.mp4 65.99M │ ├── 4-01、导论:文档视图模型-从志玲姐姐的照片说起_ev_ev.mp4 21.93M │ ├── 4-02、纯手工打造一个文档视图模型应用程序_ev_ev.mp4 105.12M │ ├── 4-03、图解文档视图模型、手工生成菜单消息映射与视图消息映射_ev_ev.mp4 56.45M │ ├── 4-04、手工打造MFC官方Scrrible案例:MFC文档视图结构详_ev_ev.mp4 125.98M │ ├── 4-05、文档视图结构:一档多视案例_ev_ev.mp4 111.54M │ ├── 4-06、文档视图结构:序列化机制解析_ev_ev.mp4 48.67M │ ├── 4-07、文档视图结构:序列化机制完善:矩形生成综合案例_ev_ev.mp4 72.00M │ ├── 5-01、拼图游戏设计导论:一档多视的框架搭建与位图资源准备_ev_ev.mp4 37.62M │ ├── 5-02、拼图游戏设计中文档视图模型结构设计与数据结构准备_ev_ev.mp4 64.05M │ ├── 5-03、游戏逻辑代码实现讲解_ev_ev.mp4 34.79M │ ├── 5-04、View绘制功能代码实现_ev_ev.mp4 72.03M │ ├── 5-05、文档功能代码实现与一档多视_ev_ev.mp4 92.59M │ ├── 6-01、MFC图片、视频、摄像头处理案例介绍_ev_ev.mp4 7.46M │ ├── 6-02、使用MFC和Opencv显示图像用到的接口和结构详解_ev_ev.mp4 33.10M │ ├── 6-03、准备开发环境下载opencv创建MFC的项目_ev_ev.mp4 28.47M │ ├── 6-04、配置opencv头文件和库文件读取图像并获取窗口HDC_ev_ev.mp4 46.14M │ ├── 6-05、完成图片的尺寸的调整和显示_ev_ev.mp4 29.28M │ ├── 6-06、解决四字节对齐问题添加图片打开窗口_ev_ev.mp4 40.92M │ ├── 6-07、打开视频并显示帧画面_ev_ev.mp4 27.38M │ ├── 6-08、获取帧率后通过定时器完成视频播放_ev_ev.mp4 46.49M │ ├── 6-09、视频播放进度条显示_ev_ev.mp4 27.65M │ ├── 6-10、滑动条控制视频的播放进度_ev_ev.mp4 41.76M │ ├── 6-11、打开显示摄像头并完成截图功能_ev_ev.mp4 46.01M │ └── C++实战之windowsMFC工程应用开发与框架原理完全剖析视频教程.zip 281.46M ├── 【夏曹俊13911】C++ 模板技术与 STL实战开发 │ ├── 1-01、引论:参数化编程与模板思想剖析_ev_ev.mp4 43.28M │ ├── 1-02、模板机制剖析(一):函数模板与隐式类型转换,模板函数与函数重_ev_ev.mp4 56.85M │ ├── 1-03、模板机制剖析(二):hpp文件的由来与name mangli_ev_ev.mp4 51.77M │ ├── 1-04、类模板(一):类模板的概念与应用_ev.mp4 18.68M │ ├── 1-05、类模板(二):类模板应用:STL中Array容器的仿真实现_ev.mp4 53.85M │ ├── 1-06、类模板(三):类模板详解:类模板的继承与多态以及嵌套模板类_ev.mp4 68.80M │ ├── 1-07、右值引用与模板(一):左值、右值概念辨析与C++11右值引用_ev.mp4 50.85M │ ├── 1-08、右值引用与模板(二):右值引用与转移函数、参数转发模板_ev.mp4 38.85M │ ├── 1-09、右值引用与模板(三):make_pair_ev.mp4 68.91M │ ├── 1-10、traits技术(一):typedef的工程应用与内嵌数据类_ev.mp4 26.90M │ ├── 1-11、traits技术(二):“泛型”的内涵——traits规范_ev.mp4 59.44M │ ├── 1-12、traits技术(三):非侵入式的STL类型设计与数据类型_ev.mp4 45.56M │ ├── 1-13、traits技术(四):Traits技术原理仿真与实现_ev.mp4 49.62M │ ├── 1-14、仿函数与Lambda表达式(一):仿函数原理剖析与仿真实现_ev.mp4 40.71M │ ├── 1-15、仿函数与Lambda表达式(二):STL中高内聚设计思想的剖_ev.mp4 24.77M │ ├── 1-16、内存析构异常原理剖析与SharePTr的引用计数原理仿真实现_ev.mp4 81.74M │ ├── 2-01、容器仿真(一):vector容器结构仿真与使用裸指针_ev.mp4 50.11M │ ├── 2-02、容器仿真(二):List容器结构仿真与Iterator重载+_ev.mp4 97.79M │ ├── 2-03、迭代器Iterator概念仿真(三):用Iterator遍历_ev.mp4 49.50M │ ├── 2-04、算法概念仿真(四)_ev.mp4 46.42M │ ├── 3-01、STL概论:六大组件的概要介绍_ev.mp4 9.70M │ ├── 3-02、STL容器之序列容器(一):Vector内存分配原理解析_ev.mp4 25.71M │ ├── 3-03、STL容器之序列容器(二):deque内存分配原理解析_ev.mp4 32.92M │ ├── 3-04、案例:以deque为基础构建一个FIFO队列_ev.mp4 24.67M │ ├── 3-05、List应用与案例:生产线流程日志文件数据归并_ev.mp4 72.08M │ ├── 3-06、stack和queue定制开发案例:生成固定大小的栈与优先队_ev.mp4 56.89M │ ├── 3-07、bitset定制开发案例:使用bitset内存空间应用_ev.mp4 61.80M │ ├── 3-08、关联式容器(一):关联式容器定义与内存分配原理_ev.mp4 15.23M │ ├── 3-09、关联式容器(二):Set应用:实现交、并、差集合运算的扩展_ev.mp4 63.61M │ ├── 3-10、关联式容器(三):map应用:基于multimap应用_ev.mp4 57.27M │ ├── 3-11、STL容器使用工程经验分享:容器选用时机与存储分配总结_ev.mp4 43.56M │ ├── 3-12、STL算法:引论与使用仿函数function object_ev.mp4 32.14M │ ├── 3-13、STL非变异算法(一):foreach应用与vector向量_ev.mp4 37.75M │ ├── 3-14、STL非变异算法(二):find算法应用演示_ev.mp4 42.47M │ ├── 3-15、STL非变异算法(三):count算法应用故障总数统计案例_ev.mp4 13.79M │ ├── 3-16、STL非变异算法(四):比较算法与pair二元组类模板释疑_ev.mp4 32.59M │ ├── 3-17、STL变异算法(一):copy算法:变异算法与迭代器的组合_ev.mp4 25.39M │ ├── 3-18、STL变异算法(二):Swap算法:copy算法重定向到屏幕_ev.mp4 29.11M │ ├── 3-19、STL变异算法(三):transform算法:凯撒加密的案例_ev.mp4 29.19M │ ├── 3-20、STL变异算法(四):replace算法一个常见误用_ev.mp4 30.94M │ ├── 3-21、STL变异算法(五):unique算法实现文本单词统计_ev.mp4 46.69M │ ├── 3-22、STL变异算法(六):sort算法与binary算法_ev.mp4 53.61M │ ├── 4-01、插入迭代器原理与应用:insert_iterator_ev.mp4 48.74M │ ├── 4-02、反向迭代器原理与应用:实际位置与逻辑位置差异原因剖析_ev.mp4 26.23M │ ├── 4-03、流式迭代器原理与应用:文件写入与标准输入输出重定向_ev.mp4 26.37M │ ├── 5-01、STL函数适配器(一):谓词与函数对象适配器bind1st_ev_ev.mp4 46.58M │ ├── 5-02、STL函数适配器(二):自定义函数对象适配器的实现_ev_ev.mp4 26.75M │ ├── 5-03、STL一元函数对象:自定义unary_function的应用_ev_ev.mp4 58.59M │ ├── 5-04、STL二元函数对象:系统仿函数示例_ev_ev.mp4 20.00M │ ├── 6-01、空间配置器Allocator设计思想剖析_ev_ev.mp4 30.17M │ ├── 6-02、空间配置器Allocator operator new_ev_ev.mp4 40.00M │ ├── 6-03、自定义空间配置器观察Vector内存布局:数组式内存增长_ev_ev.mp4 68.75M │ ├── 6-04、自定义空间配置器观察list、deque内存布局:链表与链表_ev_ev.mp4 24.43M │ ├── 6-05、自定义内存池的设计(一):内存池思想和设计草案_ev_ev.mp4 17.49M │ ├── 6-06、自定义内存池的设计(二):内存池数据结构设计_ev_ev.mp4 53.26M │ ├── 6-07、自定义内存池的设计(三):MemoryPoolk编码_ev_ev.mp4 67.86M │ ├── 6-08、自定义内存池的设计(四):内存池设计验证_ev_ev.mp4 16.81M │ ├── 7-01、算法运行时间案例一_ev_ev.mp4 73.74M │ ├── 7-02、算法运行时间案例二_ev_ev.mp4 93.90M │ └── 7-03、日志上报系统综合案例._ev_ev.mp4 55.97M ├── 【夏曹俊13912】C++ 设计模式理论与实战大全-架构师必学视频课程 │ ├── 1-01、课程介绍_ev.mp4 36.50M │ ├── 1-02、UML和设计模式导论_ev.mp4 56.47M │ ├── 2-01、简单工厂方法的定义场景与实现-针对接口编程的设计思想剖析_ev.mp4 78.92M │ ├── 2-02、简单工厂实用工程技术:C++对象动态创建技术与配置化开发_ev_ev.mp4 101.58M │ ├── 2-03、单例模式的定义场景与实现:懒汉、饿汉与多线程安全double_ev_ev.mp4 78.07M │ ├── 2-04、单例模式的实用工程技术——从单例到多例,应用系统缓存的实现原_ev_ev.mp4 47.80M │ ├── 2-05、工厂模式的定义场景与实现——子类延迟实现父类功能的软件结构_ev_ev.mp4 69.71M │ ├── 2-06、工厂模式的实用工程技术——IOC容器与工厂模式的应用_ev_ev.mp4 75.05M │ ├── 2-07、抽象工厂的定义、场景与实现——相互关联关系的对象_ev.mp4 67.43M │ ├── 2-08、抽象工厂的实用工程技术——抽象工厂的使用场景_ev.mp4 47.10M │ ├── 2-09、构建者模式Builder的定义、场景与实现_ev.mp4 108.48M │ ├── 2-10、构建者模式的实用工程技术——代码的坏味道:算法与对象构建的隔_ev.mp4 99.44M │ ├── 2-11、原型模式的定义场景与实现——对象的快速复制_ev.mp4 72.36M │ ├── 2-12、原型模式的实用工程技术——DRY原则与使用模式进行重构_ev.mp4 33.19M │ ├── 3-01、适配器模式的定义、场景与实用工程技术:对象适配与类的适配_ev.mp4 60.29M │ ├── 3-02、门面(外观)模式Facade的定义、场景与实用工程技术_ev.mp4 57.36M │ ├── 3-03、享元模式Flyweight的定义场景与实现:运用共享技术_ev.mp4 87.06M │ ├── 3-04、享元模式Flyweight的实用工程技术:文件夹图标、字符串_ev.mp4 20.75M │ ├── 3-05、代理模式的定义场景与实现:控制对象访问与Cache代理_ev.mp4 93.61M │ ├── 3-06、代理模式的实用工程技术——AOP面向切面编程、智能指针与代理_ev.mp4 139.75M │ ├── 3-07、包装模式的定义、场景与实现——组合大于继承_ev.mp4 63.37M │ ├── 3-08、包装模式的实用工程技术——MFC中CView结构设计_ev.mp4 108.62M │ ├── 3-09、组合模式的定义、场景与实现:部分_整体_ev.mp4 113.32M │ ├── 3-10、组合模式的实用工程技术——树形(递归)结构的面向对象实现_ev.mp4 167.24M │ ├── 3-11、桥接模式的定义、场景与实现:一维扩展用继承,多维扩展用桥接_ev.mp4 38.96M │ ├── 3-12、桥接模式的实用工程技术:桥接模式应用评析、MFC分析_ev.mp4 23.35M │ ├── 4-01、模板方法的定义场景与实现:将“动作”封装成对象是理解行为型_ev.mp4 53.60M │ ├── 4-02、模板方法的实用工程技术:好莱坞法则、钩子函数与单元测试工具_ev.mp4 41.98M │ ├── 4-03、策略模式的定义场景与实现:is A还是has A,里氏代换原_ev.mp4 91.35M │ ├── 4-04、策略模式的实用工程技术——支付交易系统帐户转帐、数据信令采集_ev.mp4 38.12M │ ├── 4-05、观察者模式的定义场景与实现——订阅_发布的软件结构_ev.mp4 140.20M │ ├── 4-06、观察者模式的实用工程技术——出版+订阅就是观察者模式_ev_ev.mp4 25.79M │ ├── 4-07、命令模式的定义、场景与实现——封装调用_ev_ev.mp4 75.56M │ ├── 4-08、命令模式的实用工程技术——Undo撤销与宏命令_ev_ev.mp4 146.79M │ ├── 4-09、责任链模式的定义、场景与实现:击鼓传花_ev_ev.mp4 40.93M │ ├── 4-10、责任链模式的实用工程技术——事件冒泡、过滤器原理与责任链实现_ev.mp4 62.75M │ ├── 4-11、备忘录模式的定义、场景与实现:备忘录与友元函数的应用_ev.mp4 86.90M │ ├── 4-12、备忘录模式的实用工程技术:httpSession、数据库快照_ev.mp4 19.19M │ ├── 4-13、调停者模式的定义场景与实现——封装交互与即插即用_ev.mp4 94.62M │ ├── 4-14、调停者模式的实用工程技术——多对多关系交互解耦合_ev.mp4 15.90M │ ├── 4-15、状态模式的定义场景与实现——从if_else中提取公因式_ev.mp4 90.47M │ ├── 4-16、状态模式的实用工程技术—自动化流水线的状态组合与业务逻辑解耦_ev.mp4 15.51M │ ├── 4-17、解释器模式的定义场景与实现——一个简单加减法运算器的实例_ev.mp4 59.80M │ ├── 4-18、解释器模式的工程应用——解释器与数据结构、算法和编译原理_ev.mp4 15.71M │ ├── 4-19、访问者模式的定义场景与实现——一个手机配置环境的构建_ev.mp4 58.52M │ ├── 4-20、访问者模式的工程应用——工单派送、电脑组装与银行账户流程的工_ev.mp4 34.13M │ ├── 4-21、迭代器模式方法与工程应用:STL迭代器应用与迭代器模式思想_ev.mp4 53.80M │ ├── 4-22、面向对象(OO)的设计原则(总结)_ev.mp4 37.91M │ ├── 5-01、MVC图片编辑器项目介绍和UML知识回顾_ev (1).mp4 12.51M │ ├── 5-02、MVC模式讲解_ev (1).mp4 10.19M │ ├── 5-03、项目功能说明用到的设计模式说明_ev (1).mp4 14.12M │ ├── 5-04、抽象工厂、单例、观察者、门面模式回顾和项目类图分析_ev (1).mp4 23.58M │ ├── 5-05、依赖的QT环境安装_ev (1).mp4 21.70M │ ├── 5-06、配置QT项目和信号槽代码示例_ev (1).mp4 27.49M │ ├── 5-07、创建XImageEdit项目并提升QWidget控件完成类实_ev.mp4 21.25M │ ├── 5-08、手动添加打开文件的信号槽_ev.mp4 19.76M │ ├── 5-09、完成Qt打开并显示图片_ev.mp4 18.50M │ ├── 5-10、完成XEditView的初始化和载入背景图的实现和调用_ev.mp4 29.46M │ ├── 5-11、重载鼠标事件完成画笔功能_ev.mp4 29.49M │ ├── 5-12、观察者模式代码IObserver和XSubject完成_ev_ev.mp4 20.98M │ ├── 5-13、观察者模式XModel和XEditView代码完成并重构_ev_ev.mp4 46.58M │ ├── 5-14、完成控制器、模型、视图的抽象工厂模式创建_ev_ev.mp4 42.49M │ ├── 5-15、将模型和视频与用户代码解耦合有门面模式的控制器来做_ev_ev.mp4 42.06M │ ├── 5-16、重构划线到IGraph接口并添加划线的样式(颜色、链接、抗锯_ev.mp4 60.80M │ ├── 5-17、重构XPenGraph用模板技术在工厂中注册_ev.mp4 31.69M │ ├── 5-18、注册了XErasGraph完成了橡皮檫功能_ev.mp4 33.08M │ ├── 5-19、注册了XRectGraph添加了画矩形存在未清理历史图像问题_ev_ev.mp4 25.81M │ ├── 5-20、修正了矩形绘制的残影添加XImageGraph_ev_ev.mp4 49.86M │ ├── 5-21、完成了Undo和Redo代码_ev_ev.mp4 31.83M │ ├── 5-22、完成了画笔的粗细设置_ev_ev.mp4 36.74M │ ├── 5-23、完成画笔颜色设置_ev.mp4 36.74M │ ├── 5-24、项目完成优化界面添加图标和按钮_ev.mp4 40.06M │ └── C++设计模式理论与实战大全-架构师必学视频课程.zip 13.95M ├── 【夏曹俊14944】数据结构实战完全手册视频课程 │ ├── 1-01、课程介绍_ev.mp4 68.11M │ ├── 1-02、数据结构本质论-计算思维解析:来自客户信息维护,交通灯问题_ev.mp4 67.78M │ ├── 1-03、数据结构新视角:数据结构就是存数值、存关系_ev.mp4 21.29M │ ├── 1-04、数据结构与程序性能衡量——大O记法的工程价值_ev.mp4 24.48M │ ├── 1-05、线性表工程背景与学习要点:Word的场景、手机接入与数据结构_ev_ev.mp4 22.50M │ ├── 1-06、数组顺序表(一)定义与初始化_ev_ev.mp4 62.83M │ ├── 1-07、数组顺序表(二)求元素个数、取元素与定位_ev_ev.mp4 43.29M │ ├── 1-08、数组顺序表(三)插入、删除与功能测试完成_ev.mp4 98.51M │ ├── 1-09、单链表与顺序表(一)存关系与节点联系跟踪解析_ev.mp4 67.43M │ ├── 1-10、单链表与顺序表(二)求元素个数、取值与查找_ev.mp4 69.90M │ ├── 1-11、建立单链表尾插法深入剖析(三)链表结构的内存是由程序员管理的_ev.mp4 84.39M │ ├── 1-12、建立单链表头插法深入剖析(四)头插法的三种方案_ev_ev.mp4 111.06M │ ├── 1-13、单链表元素插入(五)前插与后插的实现_ev_ev.mp4 49.00M │ ├── 1-14、单链表顺序表的删除(六)逻辑结构与物理结构的再认识_ev_ev.mp4 43.67M │ ├── 1-15、单链表顺序表的功能验证(七)_ev.mp4 31.08M │ ├── 1-16、建立自己的库函数(八)数组顺序表与单链表顺序表的封装_ev.mp4 63.19M │ ├── 1-17、单链表案例(一)就地转置-原表与逆序表占用空间相同:数组结构_ev.mp4 145.30M │ ├── 1-18、单链表的运算思想:单链表节点关系的维护与单链表操作算法设计_ev.mp4 21.18M │ ├── 1-19、单链表案例(二)一元多项式相加_ev.mp4 148.44M │ ├── 1-20、单链表案例(三):学生管理系统(数组)——具有预订空间的解决_ev.mp4 114.70M │ ├── 1-21、链表的变体循环链表(一):单步跟踪下的详细分析_ev.mp4 122.11M │ ├── 1-22、循环链表(二):建立与合并_ev.mp4 60.61M │ ├── 1-23、约瑟夫环的实现(三):循环链表调试bug定位技巧_ev.mp4 63.31M │ ├── 1-24、双向链表的实现与在Linux内核中应用的浅要介绍_ev.mp4 57.48M │ ├── 2-01、栈的工程背景:函数栈帧调用与call stack的调试技巧_ev.mp4 30.03M │ ├── 2-02、栈的学习要点:栈的逻辑定义与程序实现对应关系的剖析_ev.mp4 26.36M │ ├── 2-03、顺序栈的实现:数值转换的应用案例_ev.mp4 63.53M │ ├── 2-04、链栈的实现:指针初始化的调试技巧分享_ev.mp4 58.77M │ ├── 2-05、递归与函数栈帧深入剖析:call stack调试技巧_ev.mp4 65.03M │ ├── 2-06、队列的工程背景与设计技巧:游戏用户进入等待,邮件重发机制与订_ev.mp4 60.40M │ ├── 2-07、顺序队列设计技巧剖析:“假溢出”与循环队列,front指向队_ev.mp4 88.49M │ ├── 2-08、链队列设计技巧剖析:单步跟踪链队列运行剖析与内存释放_ev.mp4 98.24M │ ├── 2-09、中缀表达式完全剖析:巧用C_C++重命名复用SeqStack_ev.mp4 124.90M │ ├── 2-10、后缀表达式(逆波兰表达式)实现_ev.mp4 51.89M │ ├── 2-11、带括号的中缀表达式转后缀表达式_ev.mp4 88.27M │ ├── 2-12、八皇后问题的非递归实现-回溯法与栈的应用(一)_ev.mp4 126.14M │ ├── 2-13、迷宫路径求解的非递归实现-回溯法与栈的实现(二)_ev.mp4 133.44M │ ├── 2-14、递归设计入门:将递归函数看成答案本身_ev.mp4 35.97M │ ├── 2-15、八皇后问题的递归实现_ev.mp4 37.42M │ ├── 2-16、迷宫路径求解的递归实现_ev.mp4 43.30M │ ├── 3-01、树的工程背景:网站结构、表达式树及相关概念定义介绍_ev.mp4 36.61M │ ├── 3-02、双亲孩子检验法是树形结构存储的法则:部门信息存储的实际设计案_ev.mp4 28.11M │ ├── 3-03、二叉树的由来与树的孩子兄弟存储发法:树型链式存储中的同构性与_ev.mp4 38.60M │ ├── 3-04、数组与链表的结合:孩子链表表示法_ev.mp4 9.66M │ ├── 3-05、二叉树与树相互转化的算法流程介绍_ev.mp4 53.30M │ ├── 3-06、满二叉树、完全二叉树与二叉树的三条基本性质_ev.mp4 42.20M │ ├── 3-07、数组形式的二叉树完全实现:以二叉搜索树建立为例_ev.mp4 133.32M │ ├── 3-08、智能制造中的树形结构应用案例:数据结构是程序的灵魂_ev.mp4 29.23M │ ├── 3-09、层次法建立二叉链表树详细剖析:使用辅助队列“存关系”的思路详_ev.mp4 182.57M │ ├── 3-10、二叉链表的跟踪技巧、工程经验分享与非线性结构遍历问题的引出_ev.mp4 80.56M │ ├── 3-11、前序、中序、后序遍历的定义、递归实现与层次法遍历需要队列辅助前序、中序、后序遍历的定义、递归实现与层次法遍历需要队列辅助_ev.mp4 74.75M │ ├── 3-12、观念中的二叉树构建:通过经典习题构建二叉树思维模型_ev.mp4 89.39M │ ├── 3-13、非递归前序遍历二叉树:一个深拷贝引出的bug剖析_ev.mp4 130.51M │ ├── 3-14、非递归中序遍历二叉树_ev.mp4 38.45M │ ├── 3-15、非递归后序遍历二叉树:一个短路逻辑的实践技巧_ev.mp4 59.99M │ ├── 3-16、当前非递归遍历方案评述:存在的问题与程序优化的思路_ev.mp4 52.49M │ ├── 3-17、栈结构与树结构之间传递的程序设计技巧和软件复用的设计思想_ev.mp4 89.70M │ ├── 3-18、重构到非递归遍历的经典数据结构:非侵入式数据结构设计与可复用_ev.mp4 77.79M │ ├── 3-19、获取二叉树的所有叶子节点、获取全树深度与左右子树深度求解:递_ev.mp4 103.66M │ ├── 3-20、根据前序、中序序列重建一棵二叉树的代码实现_ev.mp4 54.93M │ ├── 3-21、求一棵二叉树根到所有叶子节点的路径_ev.mp4 41.32M │ ├── 3-22、判断两棵树是否相等与使用二叉链表法建立二叉搜索树_ev.mp4 79.85M │ ├── 3-23、二叉树镜像:交换左右子树_ev.mp4 21.56M │ ├── 3-24、平衡二叉树(AVL)的概念:与二叉搜索树的辨析_ev.mp4 59.46M │ ├── 3-25、平衡二叉树(AVL)单向左旋、单向右旋图示法讲解_ev.mp4 50.21M │ ├── 3-26、平衡二叉树(AVL)先左后右、先右后左图示法讲解_ev.mp4 68.79M │ ├── 3-27、平衡二叉树(AVL)完全代码实现_ev.mp4 139.62M │ ├── 3-28、二叉树的结构展示:层次遍历二叉树完全代码实现_ev.mp4 57.50M │ ├── 3-29、哈夫曼树与不等长编码:Huffman树的由来_ev.mp4 39.05M │ ├── 3-30、哈夫曼树完全代码实现_ev.mp4 89.75M │ ├── 4-01、拓扑形态等价性-图的工程抽象:地图染色、搜索引擎、最短航线和_ev.mp4 33.17M │ ├── 4-02、图的概念及数据结构:邻接矩阵法的示例与代码实现_ev.mp4 96.37M │ ├── 4-03、邻接表的示例与代码实现_ev.mp4 68.70M │ ├── 4-04、边集数组法、十字链表法、邻接多重表:图的存储结构评述_ev.mp4 30.82M │ ├── 4-05、图的染色与日期冲突安排案例完全代码实现:Welsh-Powe_ev.mp4 229.56M │ ├── 4-06、邻接数组的深度(DFS)、广度(BFS)优先遍历完全代码实现_ev.mp4 123.64M │ ├── 4-07、邻接表的深度(DFS)、广度(BFS)优先遍历完全代码实现_ev.mp4 73.31M │ ├── 4-08、网络冗余链路问题与图的最小生成树_ev.mp4 20.35M │ ├── 4-09、Kruskal算法与并查集完全代码实现:图的最小生成树算法_ev.mp4 137.77M │ ├── 4-10、Prim算法完全代码实现:图的最小生成树算法_ev.mp4 142.31M │ ├── 4-11、图的单源最短路径:Dijkstra算法完全代码实现_ev.mp4 186.46M │ ├── 4-12、图的多源最短路径:Flod-Warshall算法完全代码实现_ev.mp4 67.18M │ ├── 4-13、先修排课、编译器分析与AOV网的拓扑排序_ev.mp4 28.04M │ ├── 4-14、活动顶点拓扑排序AOV网完全代码实现-先修课程案例_ev.mp4 87.80M │ ├── 4-15、工期排序、AOE网与关键路径法以及堆内存分配调试经验分享_ev.mp4 196.61M │ ├── 5-01、排序概论与直接插入排序完全代码实现_ev (1).mp4 79.83M │ ├── 5-02、插入排序的改进:希尔排序(缩小增量排序法)完全代码实现_ev (1).mp4 47.05M │ ├── 5-03、交换排序:冒泡排序完全代码实现_ev (1).mp4 42.31M │ ├── 5-04、交换排序:快速排序完全代码实现_ev (1).mp4 79.52M │ ├── 5-05、选择排序:直接选择排序完全代码实现_ev (1).mp4 11.82M │ ├── 5-06、选择排序:堆排序完全代码实现_ev (1).mp4 55.42M │ ├── 5-07、归并排序概念与2-路归并排序完全代码实现_ev (1).mp4 73.46M │ ├── 5-08、桶排序概念与基数排序算法完全代码实现_ev (1).mp4 54.62M │ ├── 5-09、各类排序的比较与总结_ev (1).mp4 12.71M │ ├── 5-10、各类索引结构图示讲解_ev (1).mp4 18.76M │ ├── 5-11、查找有序线性表:二分查找法完全代码实现_ev (1).mp4 36.11M │ ├── 5-12、查找有序线性表:斐波那契查找法完全代码实现_ev (1).mp4 45.64M │ ├── 5-13、字典树(Trie树)词频统计、单词搜索的完全代码实现:非数值_ev (1).mp4 60.65M │ ├── 5-14、字符串的搜索与匹配(BF与KMP算法)完全剖析_ev (1).mp4 111.32M │ ├── 5-15、散列技术_ev (1).mp4 17.15M │ ├── 5-16、经典算法举例:穷举、贪心与动态规_ev (1).mp4 151.91M │ ├── 5-17、综合案例Huffman压缩_ev (1).mp4 228.89M │ ├── 5-18、综合案例动态数组_ev (1).mp4 89.36M │ └── 数据结构实战完全手册视频课程.zip 23.50M ├── 【夏曹俊14985】C语言核心视频课程-从小工到专家 │ ├── 1-01、引论_ev.mp4 83.94M │ ├── 1-02、windows的cl编译与linux的gcc编译与若干初学者_ev.mp4 75.50M │ ├── 1-03、预编译指令(directives)、函数(function)_ev.mp4 37.31M │ ├── 1-04、“若存在15×4=112,则系统采用的几进制?”——机器中数_ev.mp4 28.73M │ ├── 1-05、计算机是模运算系统——“按位取反,末尾加1”的由来_ev.mp4 35.24M │ ├── 1-06、-2147483648 2147483647问题的完全剖析—_ev.mp4 22.18M │ ├── 1-07、浮点数不能使用相等判别的原因完全剖析:C语言float类型特_ev.mp4 68.60M │ ├── 1-08、标准C变量定义位置、格式化输出与乘法溢出:C语言变量特征的若标准C变量定义位置、格式化输出与乘法溢出:C语言变量特征的若_ev.mp4 39.43M │ ├── 1-09、输出宽度引发的bug谈Scanf和printf的若干常见问题_ev.mp4 53.97M │ ├── 1-10、表达式、左值与语句_ev.mp4 39.63M │ ├── 2-01、分支语句与名企笔试面试的基础要点_ev.mp4 29.20M │ ├── 2-02、3种循环语句与goto法实现循环移动QQ窗体:goto的工程_ev.mp4 96.96M │ ├── 2-03、分支循环基础知识-典型习题讲解_ev.mp4 119.48M │ ├── 2-04、函数定义、声明、调用与一个bug引出的callstack的调_ev.mp4 30.89M │ ├── 2-05、C语言只有指拷贝形式的参数传递-函数实参和形参_ev.mp4 28.61M │ ├── 2-06、函数与递归程序设计:递归函数本身就是解决方案-Hannoi问_ev.mp4 127.78M │ ├── 2-07、设int a[5]3[a]可以访问吗?-数组的定义与应用_ev.mp4 36.36M │ ├── 2-08、C99的指定初始化与sizeof测定数组长度、多维数组定义_ev.mp4 24.53M │ ├── 2-09、C语言只有指拷贝-指针的深入详解_ev.mp4 45.35M │ ├── 2-10、指针的运算与数组名和指针关系辨析_ev.mp4 36.46M │ ├── 2-11、字符串、字符数组与指针数组和指向指针的指针由来_ev.mp4 100.28M │ ├── 2-12、字符数组作为缓冲区与缓冲区溢出现象剖析_ev.mp4 55.80M │ ├── 2-13、字符、数组、函数基础知识-典型习题讲解_ev.mp4 82.26M │ ├── 2-14、指针基础知识-典型习题讲解_ev.mp4 46.01M │ ├── 2-15、结构体与深拷贝、浅拷贝原理剖析_ev.mp4 54.77M │ ├── 3-01、高级语言转换成机器级表示:基于objdump的实战分析_ev.mp4 88.00M │ ├── 3-02、可执行文件的存储器映像:为什么C90不允许代码浮动_ev.mp4 35.27M │ ├── 3-03、函数栈帧究竟是什么——保护现场、参数传递原理的详细剖析_ev.mp4 169.66M │ ├── 3-04、从存储映像角度理解C程序变量布局:全局、栈区、堆区变量由来的_ev.mp4 31.41M │ ├── 3-05、为什么函数内部不能分配过长的数组?——数组类型的空间分配与i_ev.mp4 44.74M │ ├── 3-06、局部变量为什么不是符号与Link error的本质解释——C_ev.mp4 37.76M │ ├── 3-07、强弱符号连接定义_ev.mp4 30.00M │ ├── 3-08、多重定义符号解析举例_ev.mp4 13.08M │ ├── 3-09、重定位到应用程序加载_ev.mp4 19.23M │ ├── 4-01、右移运算等于除法吗?_ev.mp4 15.70M │ ├── 4-02、机器中数的进制问题-2的100次方mod7_ev.mp4 25.61M │ ├── 4-04、C语言程序运行时间的估算问题_ev.mp4 48.73M │ ├── 4-05、引论问题完全剖析_ev.mp4 50.35M │ ├── 4-06、32位系统下的经典C语言问题_ev.mp4 58.35M │ ├── 4-07、C语言中的动态内存分配:malloc、calloc和real_ev.mp4 34.96M │ ├── 4-08、register增强、const、符号定义——C语言与C++_ev.mp4 43.43M │ ├── 5-01、透彻掌握C语言代码在机器中的分布是高级程序员的基本功_ev_ev.mp4 54.64M │ ├── 5-02、as ld完整编译C语言:printf的函数体在哪里?_ev_ev.mp4 47.89M │ ├── 5-03、代码段、数据段、只读段本质论:C程序与可执行文件一一对应的完_ev_ev.mp4 96.53M │ ├── 5-04、C语言链接错误的本质分析——强弱符号:符号对应与链接库识别_ev_ev.mp4 84.75M │ ├── 5-05、C语言链接错误的本质分析——符号未定义错误:多文件链接_ev_ev.mp4 84.81M │ ├── 5-06、链接的本质:非main入口点和printf函数体的简易实现_ev_ev.mp4 30.63M │ ├── 5-07、线性地址、逻辑地址、物理地址:C语言可执行文件运行原理剖析_ev_ev.mp4 63.89M │ ├── 5-08、栈空间和堆空间详解:大对象的双向拷贝和malloc的简易实现_ev_ev.mp4 74.17M │ ├── 5-09、“内存四区”的函数栈帧演变过程的完全图示-C语言的“内存四区_ev_ev.mp4 102.66M │ ├── 5-10、gdb完全手工跟踪C语言函数栈帧演变:缓冲区溢出原理完全剖析_ev_ev.mp4 63.44M │ ├── 5-11、可执行文件存储映像的工程应用:补丁破解原理解密_ev_ev.mp4 50.69M │ ├── 5-12、一个C语言运行库的仿真实现_ev_ev.mp4 232.89M │ └── C语言核心视频课程-从小工到专家.zip 47.55M ├── 【夏曹俊15278】Python & CC++联合编程实战视频课程 │ ├── 1-01、PythonSDK在windows中的安装和配置_ev.mp4 37.37M │ ├── 1-02、pycharmIDE在Windows中的安装配置_ev.mp4 19.50M │ ├── 1-03、PythonSDK在Mac中安装和配置_ev.mp4 28.29M │ ├── 1-04、pycharm在Mac中安装和配置_ev.mp4 13.46M │ ├── 1-05、PythonSdk和pycharm在ubuntu中安装和_ev.mp4 36.72M │ ├── 2-01、print输出格式设定和代码演示_ev.mp4 27.68M │ ├── 2-02、print输出到文件并输出csv格式的excel表格_ev.mp4 17.39M │ ├── 2-03、python注释分号和换行基础语法_ev.mp4 20.27M │ ├── 2-04、python的基础类型分析和整形浮点型的内部存储分析_ev.mp4 24.18M │ ├── 2-05、python布尔bool类型内部存储分析_ev.mp4 13.13M │ ├── 2-06、python复数的C语言内部结构分析_ev.mp4 13.14M │ ├── 2-07、python的算数运算符_ev.mp4 21.91M │ ├── 2-08、python字符集问题分析_ev.mp4 17.59M │ ├── 2-09、python字符串的访问和截取方法_ev.mp4 22.21M │ ├── 2-10、python字符串多行处理的三种方法_ev.mp4 17.09M │ ├── 2-11、python字符串拼接和格式化_ev.mp4 17.52M │ ├── 2-12、python _list数据结构内部存储分析_ev.mp4 16.92M │ ├── 2-13、python_list数据访问插入删除代码示例_ev.mp4 25.78M │ ├── 2-14、python_tuple元组_ev.mp4 16.95M │ ├── 2-15、python_dictionary存储hash表分析_ev.mp4 14.13M │ ├── 2-16、python_dictionary代码演示_ev.mp4 27.00M │ ├── 2-17、python的if条件判断语法_ev.mp4 39.42M │ ├── 2-18、python的while循环语句_ev.mp4 14.27M │ ├── 2-19、Python的for循环语句_ev.mp4 14.52M │ ├── 2-20、python函数的参数默认可变和关键字参数_ev.mp4 23.54M │ ├── 2-21、python的函数返回值的多种形式_ev.mp4 18.13M │ ├── 2-22、python的闭包函数closure_ev.mp4 12.42M │ ├── 2-23、Python的lambda表达式_ev.mp4 12.60M │ ├── 2-24、Python函数中变量的作用域scope_ev.mp4 21.34M │ ├── 2-25、python面向对象编程构造函数和析构函数_ev.mp4 20.72M │ ├── 2-26、python类的普通成员变量和私有成员变量_ev.mp4 21.21M │ ├── 2-27、python类的继承和函数重载_ev.mp4 15.56M │ ├── 2-28、python的模块和包的寻址引用分析_ev.mp4 14.44M │ ├── 2-29、python模块导入几种方式_ev.mp4 18.08M │ ├── 2-30、python导入import模块module的路径设置_ev.mp4 16.65M │ ├── 2-31、python导入包和子包_ev.mp4 29.52M │ ├── 2-32、python多进程编程分析_ev.mp4 18.10M │ ├── 2-33、python多进程编程代码演示_ev.mp4 20.03M │ ├── 2-34、Python多线程编程互斥锁和通信队列_ev.mp4 53.59M │ ├── 2-35、python的异常处理抛出和自定义_ev.mp4 24.01M │ ├── 3-01、ctypes库介绍和windows下编译动态链接库的说明_ev.mp4 12.97M │ ├── 3-02、Python用ctypes调用的windows上C++3_ev.mp4 30.43M │ ├── 3-03、编译linux动态库python的ctypes调用示例_ev.mp4 49.49M │ ├── 3-04、测试的ctypes动态库代码移植到mac中_ev.mp4 15.71M │ ├── 3-05、python的ctypes与c语言类型转换分析_ev.mp4 12.69M │ ├── 3-06、ctypes整数和浮点数类型参数传递代码示例和异常处理_ev.mp4 30.24M │ ├── 3-07、ctypes给c函数传递char字符串和wchar_t宽_ev.mp4 29.73M │ ├── 3-08、通过create_string_buffer给c语言传递_ev.mp4 22.18M │ ├── 3-09、使用ctypes跨平台mac_linux_windows_ev.mp4 29.99M │ ├── 3-10、使用ctypes调用win32的MessageBox_ev.mp4 20.86M │ ├── 3-11、通过ctypes获取c函数返回的整形和字符串_ev.mp4 23.18M │ ├── 3-12、Ctypes给C++传递指针和修改c++返回指针的值_ev.mp4 35.55M │ ├── 3-13、ctypes为C函数传递数组_ev.mp4 26.08M │ ├── 3-14、ctypes给c函数传递结构体对象指针和数组_ev.mp4 31.45M │ ├── 3-15、ctypes获取C函数返回结构体对象和指针_ev.mp4 22.61M │ ├── 3-16、ctypes传递回调函数给c库函数qsort进行快速排序_ev.mp4 25.77M │ ├── 3-17、通过ctypes在c函数中调用python的函数_ev.mp4 26.09M │ ├── 3-18、案例-python与c++联合编程三维引擎示例说明_ev.mp4 10.24M │ ├── 3-19、案例-完成ctypes调用的dll项目创建并单例类_ev.mp4 19.72M │ ├── 3-20、案例-完成了python通过ctypes调用dll函数_ev.mp4 16.34M │ ├── 3-21、案例-导入鬼火三维引擎完成窗口初始化接口_ev.mp4 26.88M │ ├── 3-22、案例-完成三维场景添加_ev.mp4 23.19M │ ├── 3-23、案例-完成主循环和场景摄像机刷新显示_ev.mp4 21.13M │ ├── 3-24、案例-完成md2动画人物模型添加和属性设置_ev.mp4 16.64M │ ├── 3-25、案例-完成场景和人物节点三维坐标设定_ev.mp4 28.07M │ ├── 3-26、案例-完成人物武器添加_ev.mp4 21.74M │ ├── 3-27、案例-完成鼠标点击人物挥刀的事件处理_ev.mp4 68.71M │ ├── 4-01、Python源码编译windows环境准备和源码目录结构_ev.mp4 16.83M │ ├── 4-02、完成python源码在windows中的编译_ev.mp4 65.34M │ ├── 4-03、python编译后在windows上的环境变量和注册表配_ev.mp4 29.27M │ ├── 4-04、python源码在linux上编译配置运行_ev.mp4 55.27M │ ├── 4-05、python源码在mac上编译安装和依赖库的编译安装_ev.mp4 80.72M │ ├── 4-06、c++python扩展库的开发步骤和发布方法讲解_ev.mp4 22.24M │ ├── 5-01、完成python的c扩展库模块入口创建和扩展函数代码_ev.mp4 27.89M │ ├── 5-02、使用distutils模块完成扩展库的编译并在win_l_ev.mp4 36.52M │ ├── 5-03、Python源码PyObject结构分析和引用计数代码分_ev.mp4 19.97M │ ├── 5-04、PyLongObject与PyObject关系讲解及源码_ev.mp4 30.39M │ ├── 5-05、使用VS2015创建好python扩展库项目配置和编译完_ev.mp4 48.14M │ ├── 5-06、基于vs2015配置python扩展库自动部署和调试_ev.mp4 26.77M │ ├── 5-07、基于PyArg_ParseTuple给扩展库传递整形参数_ev.mp4 18.89M │ ├── 5-08、传递浮点数并通过PyFloat_Check检测参数类型_ev.mp4 24.59M │ ├── 5-09、PyUnicodeObject结构分析和扩展库返回字符串_ev.mp4 31.83M │ ├── 5-10、扩展库接收字符串参数传递编码测试_ev.mp4 19.70M │ ├── 5-11、扩展库传递关键字参数METH_KEYWORDS_ev.mp4 32.63M │ ├── 5-12、扩展库传递一维和二维元组tuple参数并分析tuple源_ev.mp4 33.65M │ ├── 5-13、扩展库返回一维和二维元组tuple_ev.mp4 18.31M │ ├── 5-14、扩展库读取list参数遍历显示并检测格式错误设置异常字符_ev.mp4 24.25M │ ├── 5-15、扩展库添加_插入_修改和删除list参数中元素_ev.mp4 24.33M │ ├── 5-16、扩展库返回新创的list和参数list并对引用计数加一_ev.mp4 23.04M │ ├── 5-17、扩展库读取Dictionary参数并处理引用计数解决内存_ev.mp4 38.05M │ ├── 5-18、扩展库根据关键字读取字典并清理空间_ev.mp4 23.54M │ ├── 5-19、扩展库函数参数遍历字典PyDict_Keys并清理相应空_ev.mp4 35.44M │ ├── 5-20、扩展库PyDict_Next迭代访问字典内容并封装PyO_ev.mp4 20.90M │ ├── 5-21、扩展库处理dict参数插入修改和删除数据_ev.mp4 34.93M │ ├── 5-22、扩展库函数返回dictionary字段_ev.mp4 17.29M │ ├── 6-01、扩展库新增类步骤分析_ev.mp4 17.35M │ ├── 6-02、完成第一个扩展库类的示例完成类空间分配tp_new函数和_ev.mp4 76.49M │ ├── 6-03、类扩展构造函数和析构函数及关键字参数传递_ev.mp4 43.07M │ ├── 6-04、扩展库类添加成员变量tp_members并在构造函数中初_ev.mp4 29.30M │ ├── 6-05、扩展库字符串和PyObject成员变量添加和析构函数中的_ev.mp4 34.28M │ ├── 6-06、扩展库类添加属性并定义get和set的属性函数_ev.mp4 40.73M │ ├── 6-07、扩展库的类添加成员函数_ev.mp4 18.86M │ ├── 6-08、扩展库类的循环引用内存泄漏问题设定垃圾回收函数解决_ev.mp4 54.05M │ ├── 7-01、python全局解释器锁GIL调度策略分析和获取释放的a_ev.mp4 18.77M │ ├── 7-02、在c++扩展函数中用创建线程PyGILState_Ens_ev.mp4 48.88M │ ├── 7-03、c++的python扩展函数中保存线程环境释放线程锁_ev.mp4 26.20M │ ├── 7-04、基于ffmpeg扩展库示例环境和项目创建_ev.mp4 38.12M │ ├── 7-05、完成了扩展库PyFFmpeg对象创建_初始化和析构_ev.mp4 39.05M │ ├── 7-06、创建XFFmpeg类导入ffmpeg相关库问题并设置完测_ev.mp4 60.39M │ ├── 7-07、完成视频信息读取和开放属性接口_ev.mp4 21.52M │ ├── 7-08、在python的web程序中访问ffmpeg扩展库示例_ev.mp4 43.14M │ ├── 8-01、完成cpp调用python的环境准备和虚拟机初始化_ev.mp4 28.09M │ ├── 8-02、c++运行python脚本文件和脚本字符串并增加异常处_ev.mp4 33.80M │ ├── 8-03、c++读取python脚本中的dictionary类变_ev.mp4 41.28M │ ├── 8-04、c++调用python的类实例化对象访问成员函数和成员_ev.mp4 35.82M │ ├── 8-05、c++调用python函数并传递list参数并获取返回_ev.mp4 47.38M │ ├── 8-06、c++给python传递变量的两种方法PyObject_ev.mp4 19.01M │ ├── 8-07、c++给python传递函数和类PyModule_Ad_ev.mp4 22.35M │ ├── 8-08、c++读取python模块并给python主模块传递模_ev.mp4 19.65M │ ├── 9-01、py_ffmpeg_python综合项目需求和用到的库_ev_ev.mp4 13.77M │ ├── 9-02、依赖的QT环境安装和代码示例_ev_ev.mp4 49.45M │ ├── 9-03、完成项目创建并初始化python虚拟机_ev_ev.mp4 27.75M │ ├── 9-04、c++读取python的配置项改变窗口大小和标题_ev_ev.mp4 33.77M │ ├── 9-05、qt按钮事件的Open槽函数中调用python函数_ev_ev.mp4 47.60M │ ├── 9-06、导入pyffmpeg扩展库完成视频的打开_ev_ev.mp4 26.04M │ ├── 9-07、完成pyffmpeg扩展库的Read读取视帧函数_ev_ev.mp4 42.65M │ ├── 9-08、在c++线程中调用python的main函数解决GIL_ev_ev.mp4 25.73M │ ├── 9-09、完成扩展库中打开ffmpeg解码器_ev_ev.mp4 48.67M │ ├── 9-10、完成扩展库pyffmpeg的decode解码函数并完成_ev_ev.mp4 50.91M │ ├── 9-11、完成扩展库pyffmpeg的尺寸和像素格式转换上下文初_ev_ev.mp4 54.02M │ ├── 9-12、完成扩展库pyffmpeg尺寸转换空间申请释放和处理_ev_ev.mp4 34.77M │ ├── 9-13、重载qt显示视频窗口完成图像设置和视频绘制函数_ev_ev.mp4 48.53M │ ├── 9-14、完成python图像设置接口并完成视频播放_ev_ev.mp4 35.04M │ ├── 9-15、完成视频播放器并根据fps控制播放速度_ev_ev.mp4 49.68M │ ├── 9-16、PyLplayer移植到linux步骤分析讲解_ev_ev.mp4 24.28M │ ├── 9-17、PyFFmpeg移植到linux并测试_ev_ev.mp4 23.73M │ ├── 9-18、完成了PyPlayer在linux的qtcreator_ev_ev.mp4 30.42M │ ├── 9-18、演示linux安装qt和编译ffmpeg源码_ev_ev.mp4 21.89M │ ├── 9-20、Python扩展库和PyPlayer移植到MacOS_ev_ev.mp4 54.13M │ └── Python&C_C++联合编程实战视频课程.zip 625.53M ├── 【夏曹俊15559】商用软件中的C++工程开发技术实践——献给C++新手的入坑指南视频课程 │ ├── 1-01、课程介绍_ev.mp4 50.45M │ ├── 1-02、namespace对全局变量屏蔽的工程化意义解读_ev.mp4 22.14M │ ├── 1-03、商用工程软件开发方法的逻辑:复用与扩展——面向对象技术之道_ev.mp4 50.34M │ ├── 1-04、面向对象的基础概念:类与对象关系、对象的生成_ev.mp4 38.20M │ ├── 1-05、对象生成技术,构造函数语法:无参、有参、拷贝构造函数调用时机_ev.mp4 90.79M │ ├── 1-06、class与封装的工程意义:对象构造仅仅是完成系统感知与用户_ev.mp4 43.28M │ ├── 1-07、对象与对象的交互是面向对象开发的基石:标准事件的实现方法_ev.mp4 38.12M │ ├── 1-08、对象交互机制:自定义槽函数的实现_ev.mp4 24.88M │ ├── 1-09、自定义信号原理与总线机制:QT框架是所有对象的通信总线_ev.mp4 103.11M │ ├── 1-10、将C++语言的对象映射成业务逻辑是软件开发的根本任务_ev.mp4 32.76M │ ├── 1-11、C++ 图形用户界面综合案例与自定义信号与槽:简易计算器的实_ev.mp4 170.02M │ ├── 1-12、信号与槽实战讲解:Qt creater标注事件关联,多信号_ev.mp4 77.71M │ ├── 1-13、鼠标与键盘事件实战_ev.mp4 60.65M │ ├── 1-14、菜单与工具栏实战_ev.mp4 42.91M │ ├── 2-01、不带指针的类的设计(一):const在函数体前的使用意义_ev.mp4 34.74M │ ├── 2-02、基于对象与面向对象含义辨析:C++开发简介_ev.mp4 28.64M │ ├── 2-03、工程开发中的h头文件写法:防卫性编程与冲突解决_ev.mp4 33.68M │ ├── 2-04、不带指针的类的设计(二):构造函数与重载_ev.mp4 46.23M │ ├── 2-05、不带指针的类的设计(三):常对象与常量成员函数const的设_ev.mp4 15.78M │ ├── 2-06、不带指针的类的设计(五):相同类的对象互为友元——友元的设计_ev.mp4 19.52M │ ├── 2-07、不带指针的类的设计(四):传值与传引用的工程意义_ev.mp4 59.47M │ ├── 2-08、不带指针的类的设计(六):引用类型作为参数、返回值的设计技巧_ev.mp4 61.83M │ ├── 2-09、不带指针的类的设计(七):使用临时对象而不用引用的场景_ev.mp4 38.83M │ ├── 2-10、不带指针的类的设计(八):使用全局函数而非成员函数的场景_ev.mp4 21.78M │ ├── 2-11、从基于对象到面向对象:对象的初始化_ev.mp4 26.18M │ ├── 2-12、构建对象的动态内存分配的语义_ev.mp4 84.73M │ ├── 2-13、带指针的类的设计_ev.mp4 43.35M │ ├── 2-14、继承的设计_ev.mp4 59.42M │ ├── 2-15、多态的代价_ev.mp4 19.95M │ ├── 2-16、构造函数类型与特点_ev.mp4 22.20M │ ├── 2-17、拷贝构造函数_ev.mp4 35.22M │ ├── 2-18、派生类中的构造函数_ev.mp4 24.09M │ ├── 2-19、virtual与虚基类_ev.mp4 21.15M │ ├── 3-01、using与别名_ev_ev.mp4 20.85M │ ├── 3-02、调试与静态断言_ev_ev.mp4 18.71M │ ├── 3-03、R与转义字符语法_ev_ev.mp4 9.47M │ ├── 3-04、宽字符与本地化_ev_ev.mp4 20.65M │ ├── 3-05、空指针的二义性:应当使用nullptr初始化指针_ev_ev.mp4 21.32M │ ├── 3-06、auto自动类型与typeid_ev_ev.mp4 12.92M │ ├── 3-07、auto与内部函数绑定机制_ev_ev.mp4 25.48M │ ├── 3-08、mutable突破常量成员函数限制的修饰符_ev_ev.mp4 14.87M │ ├── 3-09、C++类型转换_ev_ev.mp4 14.19M │ ├── 3-10、non explict的构造函数_ev_ev.mp4 28.50M │ ├── 3-11、__cplusplus编译器的标准:从vs到QT_ev_ev.mp4 12.97M │ ├── 3-12、一切皆为对象-std-function可调用对象包装器_ev_ev.mp4 39.90M │ ├── 3-13、lambda表达式的工程意义与延迟加载细节:函数体的自由定义_ev_ev.mp4 30.99M │ ├── 3-14、new__FILE__LINE综合案例:简易内存泄漏检测类的_ev_ev.mp4 138.75M │ ├── 3-15、对象构建时间性能构建中的开销问题_ev_ev.mp4 26.17M │ ├── 3-16、临时对象的构建:对象构建空间性能构建中的开销问题_ev_ev.mp4 49.04M │ ├── 3-17、可变参数模板实例:Singleton的改写_ev_ev.mp4 51.31M │ ├── 3-18、C++11中的内存泄漏:sharePtr与WeakPtr_ev_ev.mp4 38.74M │ ├── 4-01、基本语句使用的综合性案例:猜单词小游戏_ev_ev.mp4 134.21M │ ├── 4-02、面向对象设计的综合性案例:仿21点游戏_ev_ev.mp4 281.26M │ ├── 4-03、问题求解、算法设计与人工智能:井字棋游戏的实现_ev_ev.mp4 159.55M │ ├── 5-01、右值引用与性能优化:从拷贝构造到移动构造_ev_ev.mp4 30.09M │ ├── 5-03、基于chrono库替代boost的timer:函数效率执行的_ev.mp4 24.73M │ └── 商用软件中的C++工程开发技术实践——献给C++新手的入坑指南视频课程.zip 36.26M ├── 【夏曹俊18055】Linux程序设计从入门到实战 │ ├── 1-01、课程介绍_ev.mp4 22.65M │ ├── 1-02、Linux程序设计概要介绍_ev.mp4 17.91M │ ├── 1-03、从POST到Init,Linux的引导过程:在BIOS之后,_ev.mp4 12.31M │ ├── 1-04、Linux命令行常用快捷键:加速你与Linux的交互速度_ev.mp4 25.51M │ ├── 1-05、cd:切换目录命令常用技巧_ev.mp4 16.73M │ ├── 1-06、mkdir:递归建立目录与批量克隆目录结构的技巧_ev.mp4 17.09M │ ├── 1-07、touch:mtime,ctime和atime_ev.mp4 19.00M │ ├── 1-08、ls:过滤文件与目录和查找更新但不知文件名的技巧_ev.mp4 17.88M │ ├── 1-09、find:按时间查找_ev.mp4 14.97M │ ├── 1-10、find-name和-type:按名称、按类型和查找结果取反_ev.mp4 12.47M │ ├── 1-11、find-maxdepth:控制检索目录的深度_ev.mp4 3.28M │ ├── 1-12、find-newer:查找比某个文件后创建的文件_ev.mp4 10.93M │ ├── 1-13、find与exec:在目录中删除所有的文件但保留指定的文件_ev.mp4 24.42M │ ├── 1-14、xargs:提取命令行参数_ev.mp4 9.28M │ ├── 1-15、chmod与umask:文件目录权限_ev.mp4 18.61M │ ├── 1-16、cat_dev_null:创建文件、显示文件以及清空文件内_ev.mp4 23.27M │ ├── 1-17、cut:截取文件内容_ev.mp4 7.79M │ ├── 1-18、vi使用(上):介绍_ev.mp4 31.58M │ ├── 1-19、vi使用(下):实战操作_ev.mp4 33.28M │ ├── 1-20、grep命令:过滤文本信息_ev.mp4 11.62M │ ├── 1-21、ps:查看进程命令_ev.mp4 23.02M │ ├── 1-22、netstat:查看网络_ev.mp4 11.39M │ ├── 1-23、gcc:-I解决目录进入,-w压抑警告和O2性能提升演示_ev.mp4 36.36M │ ├── 1-24、gdb:调试工具介绍_ev.mp4 19.50M │ ├── 2-01、Linux系统编程学什么:内核的存在性是理解系统编程的重要前_ev.mp4 48.91M │ ├── 2-02、从more开始学写Linux命令:main函数argc,ar_ev.mp4 117.99M │ ├── 2-03、VT100的模拟、应用程序与标准输入直接交换数据_ev.mp4 85.96M │ ├── 2-04、Linux编程中man的重要地位与段错误排查_ev.mp4 107.49M │ ├── 2-05、gtime函数、timeval、time_t信息的由来_ev.mp4 114.32M │ ├── 2-06、用户与命令交互设计技巧_ev.mp4 106.18M │ ├── 2-07、ls命令模拟实现(上):使用readir获取目录信息_ev.mp4 54.92M │ ├── 2-08、ls命令模拟实现(中):time_t结构体与unix时间戳_ev.mp4 61.43M │ ├── 2-09、ls命令模拟实现(下):pwd.h头文件引发的惨案_ev.mp4 76.29M │ ├── 3-01、fgets与gets中行I_O的溢出风险:文件描述字、流式编_ev.mp4 47.58M │ ├── 3-02、fgetc,fputc抛弃换行符后提取单字符命令示例_ev.mp4 35.04M │ ├── 3-03、fseek与文件写入定位:a+与w+写入数据的定位比较_ev.mp4 72.16M │ ├── 3-04、fflush引发的缓存问题:全缓存_行缓存_无缓存细节详解_ev.mp4 45.81M │ ├── 3-05、fread、fwrite共享文件偏移_ev.mp4 27.65M │ ├── 3-06、fwrite API:参数size与nmemb的对应_ev.mp4 18.30M │ ├── 3-07、ulimit系统文件个数与lsof侦测文件资源泄漏_ev.mp4 20.97M │ ├── 3-08、open_create 创建文件中的umask与文件权限问题_ev.mp4 42.33M │ ├── 3-09、轮询模式:read、O_NONBLOCK阻塞读问题与非阻塞_ev.mp4 72.55M │ ├── 3-10、O_TRUNC:为什么文件要截断_ev.mp4 21.07M │ ├── 4-01、程序与进程区别:main函数是C程序的入口点吗?进程的生命周_ev.mp4 39.39M │ ├── 4-02、进程生命周期的消亡atexit函数_ev.mp4 19.21M │ ├── 4-03、进程上下文与环境变量putenv、setenv_ev.mp4 21.16M │ ├── 4-04、进程创建:32位系统可以支持的进程数32768_ev.mp4 15.45M │ ├── 4-05、fork与进程创建:父子进程推进顺序详解_ev.mp4 26.75M │ ├── 4-06、fork:子进程不是从main而是从fork返回的地方_ev.mp4 36.45M │ ├── 4-07、僵尸进程的避免:系统资源没有放在进程的推进_ev.mp4 42.46M │ ├── 4-08、exec与进程映像替换:exec就是对进程实现了换头手术_ev.mp4 24.94M │ ├── 4-09、守护进程_ev.mp4 39.97M │ ├── 4-10、进程编程综合实践:简易shell的模拟实现_ev.mp4 11.29M │ ├── 4-11、简易shell的模拟实现(一):execvp与命令执行_ev.mp4 31.90M │ ├── 4-12、简易shell的模拟实现(二):fork,wait与Mini_ev.mp4 28.67M │ ├── 5-01、标准C库中的IO函数实际上就是对POSIX IO函数的封装_ev.mp4 22.21M │ ├── 5-02、fileno获取当前进程的文件描述符_ev.mp4 14.82M │ ├── 5-03、readdir_readdir_r操作目录_ev.mp4 33.35M │ ├── 5-04、综合应用pwd命令的实现(上):inode与文件对应关系的解_ev.mp4 22.65M │ ├── 5-05、综合应用pwd命令的实现(下):文件在目录中的含义_ev.mp4 63.25M │ ├── 5-06、文件锁的概念_ev.mp4 17.58M │ ├── 5-07、文件锁:数据独占访问的一种形式_ev.mp4 19.38M │ ├── 5-08、文件区域锁_ev.mp4 91.88M │ ├── 6-01、一切设备皆文件:从tty看终端设备同样具有属性、权限_ev.mp4 20.45M │ ├── 6-02、终端与进程挂钩:Linux有一套维护设备连接的机制_ev.mp4 18.93M │ ├── 6-03、termios结构应用:设备文件的控制就是设置对应的标志位_ev.mp4 25.80M │ ├── 6-04、类Unix交互风格的程序的实现:规范模式、raw模式的案例_ev.mp4 63.46M │ ├── 6-05、IO重定向与Linux概念和内涵_ev.mp4 29.81M │ ├── 6-06、stdin重定向到文件_ev.mp4 50.84M │ ├── 6-07、dup_dup2重定向详解:open_close_dup_c_ev.mp4 40.26M │ ├── 7-01、信号本质是软中断_ev.mp4 47.09M │ ├── 7-02、进程对信号的3种响应:SIG_DFL信号默认处理函数的恢复_ev.mp4 33.40M │ ├── 7-03、alarm的定时器作用与sleep的可中断式睡眠_ev.mp4 39.28M │ ├── 7-04、定时器信号案例(上):飘动的字符串_ev.mp4 24.13M │ ├── 7-05、定时器信号案例(下):飘动的字符串_ev.mp4 76.72M │ ├── 7-06、传统信号的弊端:信号处理函数的可重入性_ev.mp4 39.95M │ ├── 7-07、信号阻塞block和未决pending的意义_ev.mp4 63.36M │ ├── 7-08、信号排队与丢弃现象:信号不可以为进程中的事件计数_ev.mp4 42.16M │ ├── 8-01、函数是线程的载体_ev.mp4 23.78M │ ├── 8-02、第一个线程程序:使用lpthread编译多线程程序_ev.mp4 43.57M │ ├── 8-03、并发编程中的类与时间有关的错误_ev.mp4 40.88M │ ├── 8-04、单条C语句依然存在线程不安全的风险_ev.mp4 28.83M │ ├── 8-05、使用信号量实现互斥_ev.mp4 25.64M │ ├── 8-06、缓冲区读写:生产者_消费者模型的实用案例_ev.mp4 58.40M │ ├── 8-07、负载均衡的线程分配难以建立:工程中的多线程开发经验分享(一).mp4 7.25M │ ├── 8-08、线程组ID(ttid)、工程中的多线程开发经验分享(二)_ev.mp4 54.83M │ ├── 8-09、pthread_Join:工程中的多线程开发经验分享(三)_ev.mp4 56.78M │ ├── 9-01、IPC概念的外延:网络通信也是进程间通信的一种_ev_ev.mp4 20.53M │ ├── 9-02、mkfifo——第一个管道程序_ev_ev.mp4 12.47M │ ├── 9-03、管道的建立依赖两个程序的通信_ev_ev.mp4 14.52M │ ├── 9-04、Pipe与匿名管道_ev_ev.mp4 22.87M │ ├── 9-05、利用Pipe在父子进程间传递数据:子进程中关闭fd1_ev_ev.mp4 52.06M │ ├── 9-06、利用Pipe实现Linux管道命令_ev_ev.mp4 34.24M │ ├── 9-07、SIGPIPE信号、未正确关闭读写端的管道异常_ev_ev.mp4 58.72M │ ├── 9-08、ipcs和msgget:消息队列的创建_ev_ev.mp4 26.51M │ ├── 9-09、msgsnd和msgrcv:消息队列的接受与删除_ev_ev.mp4 53.50M │ ├── 9-10、shmget和shmmat:共享内存的通信_ev_ev.mp4 58.39M │ ├── 9-11、信号在IPC中的风险:kill信号发送、多线程不宜_ev_ev.mp4 56.93M │ ├── 9-12、popen与协同进程:从进程中获取数据是进程对文件的抽象_ev_ev.mp4 24.12M │ ├── 10-01、Socket的内涵:本地socket通信的演示案例_ev_ev.mp4 66.90M │ ├── 10-02、Socket网络编程案例:初学者的一个常见bug调试_ev_ev.mp4 66.07M │ ├── 10-03、htons与kill 服务进程:网络字节序引起的端口号bug_ev_ev.mp4 14.32M │ ├── 10-04、提领指向不完全类型的指针bug的解决:socket的封装案例_ev_ev.mp4 95.07M │ ├── 10-05、mini型http服务器的实现(上):利用rio增强IO流_ev_ev.mp4 84.05M │ ├── 10-06、mini型http服务器的实现(中):静态http解析的实现_ev_ev.mp4 223.62M │ └── 10-07、mini型http服务器的实现(下):CGI的实现_ev_ev.mp4 36.19M ├── 【夏曹俊18440】算法设计与编程实践---基于leetcode的企业真题库 │ ├── 1-01、课程介绍_ev.mp4 62.68M │ ├── 1-02、引论:何谓算法、时间、空间复杂度和大O理论_ev.mp4 62.03M │ ├── 1-03、算法的设计与选择:算法与数据结构的关系_ev.mp4 15.70M │ ├── 1-04、算法时间复杂度分析基础(循环):规模n与初始状态影响分析_ev.mp4 29.02M │ ├── 1-05、算法时间复杂度分析基础(递归)_ev.mp4 31.90M │ ├── 2-01、循环设计算法的一类技巧:列表模拟探索算法规律_ev.mp4 71.23M │ ├── 2-02、递归是模拟法的一种强有力表达:以自然数求组合为例_ev.mp4 68.75M │ ├── 2-03、POJ 3237鸡兔同笼:openjudge使用与模拟法训练_ev.mp4 27.72M │ ├── 2-04、POJ 2808 校门外的树_ev.mp4 35.92M │ ├── 2-05、POJ 2701 与7无关的数_ev.mp4 14.65M │ ├── 3-01、控制搜索规模是枚举成败的核心因素_ev.mp4 18.15M │ ├── 3-02、百钱百鸡问题:搜索空间的优化与枚举,_ev.mp4 30.54M │ ├── 3-03、算式乘法问题:逆向观察降维搜索解空间_ev.mp4 32.78M │ ├── 3-04、abcde_fghij=n:避免阶乘规模的枚举_ev.mp4 38.80M │ ├── 3-05、1_k=1_x+1_y问题:未知范围下的枚举空间查找思路设计_ev.mp4 24.46M │ ├── 3-06、POJ 2692 假币问题_ev.mp4 80.05M │ ├── 3-07、POJ 4148 生理周期:OJ上time limit ex_ev.mp4 31.83M │ ├── 3-08、POJ 4138 质数的和与积_ev.mp4 30.04M │ ├── 4-01、分治法的思想:从曹冲称象来学习分治法的思想_ev.mp4 21.53M │ ├── 4-02、分治与查找:找出一个序列中第k小的数_ev.mp4 49.92M │ ├── 4-03、分治模式的套路:循环日程安排问题_ev.mp4 65.87M │ ├── 4-04、子问题不相似的分治:棋盘覆盖问题_ev.mp4 113.81M │ ├── 4-05、分治模式的套路:二分法是经典的分治思想_ev.mp4 21.39M │ ├── 4-06、POJ 2787 24点游戏:递归分治法_ev.mp4 44.21M │ ├── 4-07、POJ 2503 在线翻译:二分查找的经典应用_ev.mp4 47.26M │ ├── 4-08、POJ 4143 和为给定的数_ev.mp4 22.42M │ ├── 5-01、贪心思想概述:子结构与短作业优先算法的案例_ev.mp4 37.81M │ ├── 5-02、装载问题_ev.mp4 27.05M │ ├── 5-03、选择不相交区间问题_ev.mp4 49.75M │ ├── 5-04、POJ 4110 圣诞老人的礼物_ev.mp4 47.95M │ ├── 5-05、POJ 2287 田忌赛马问题_ev.mp4 68.29M │ ├── 5-06、POJ 4137 最小新整数_ev.mp4 27.44M │ ├── 6-01、数塔问题:动态规划思想入门_ev.mp4 72.10M │ ├── 6-02、最短编辑距离问题_ev.mp4 78.01M │ ├── 6-03、连续子序列和_ev.mp4 41.13M │ ├── 6-04、POJ 2533 最长上升子序列_ev.mp4 73.87M │ ├── 7-01、[1]两数之和:vs code 建立leetcode答题_ev_ev.mp4 31.76M │ ├── 7-02、[7] 整数反转_ev_ev.mp4 14.77M │ ├── 7-03、[9] 回文数_ev_ev.mp4 10.36M │ ├── 7-04、[13] 罗马数字转整数_ev_ev.mp4 24.28M │ ├── 7-05、[14]最长公共前缀_ev_ev.mp4 25.47M │ ├── 7-06、[20] 有效的括号_ev_ev.mp4 25.14M │ ├── 7-07、[21] 合并两个有序链表_ev_ev.mp4 9.01M │ ├── 7-08、[26] 删除排序数组中的重复项_ev_ev.mp4 10.43M │ ├── 7-09、[27] 移除元素_ev_ev.mp4 6.68M │ ├── 7-10、[28] 实现strStr()_ev_ev.mp4 23.66M │ ├── 7-11、[35] 搜索插入位置_ev_ev.mp4 9.45M │ ├── 7-12、[38] 报数_ev_ev.mp4 15.30M │ ├── 7-13、[53] 子序和_ev_ev.mp4 21.47M │ ├── 7-14、[58] 最后一个单词的长度_ev_ev.mp4 11.99M │ ├── 7-15、[66] 加一_ev_ev.mp4 18.89M │ ├── 7-16、[67] 二进制求和_ev_ev.mp4 19.70M │ ├── 7-17、[69] x 的平方根:经典的二分法思想_ev_ev.mp4 20.14M │ ├── 7-18、[70] 爬楼梯:经典的斐波那契数列与递归超时_ev_ev.mp4 20.66M │ ├── 7-19、[83] 删除排序链表中的重复元素_ev_ev.mp4 14.47M │ ├── 7-20、[88] 合并两个有序数组_ev_ev.mp4 10.59M │ ├── 7-21、[100] 相同的树_ev_ev.mp4 10.02M │ ├── 7-22、[101] 对称二叉树_ev_ev.mp4 17.28M │ ├── 7-23、[104] 二叉树的深度_ev_ev.mp4 8.56M │ ├── 7-24、[107] 二叉树的层次遍历 II_ev_ev.mp4 35.47M │ ├── 7-25、[108] 将有序数组转换为二叉搜索树_ev_ev.mp4 25.78M │ ├── 7-26、[110] 平衡二叉树_ev_ev.mp4 14.11M │ ├── 7-27、[111] 二叉树的最小深度_ev_ev.mp4 12.29M │ ├── 7-28、[112] 路径总和_ev_ev.mp4 16.42M │ ├── 7-29、[118] 杨辉三角_ev_ev.mp4 14.78M │ ├── 7-30、[119] 杨辉三角 II_ev_ev.mp4 13.27M │ ├── 7-31、[121] 买卖股票的时机_ev.mp4 12.48M │ ├── 7-32、[122] 买卖股票的时机_ev.mp4 11.23M │ ├── 7-33、[125] 验证回文串_ev.mp4 15.32M │ ├── 7-34、[136] 只出现一次的数字_ev.mp4 8.86M │ ├── 7-35、[141] 环形链表_ev.mp4 12.04M │ ├── 7-36、[155] 最小栈_ev.mp4 13.59M │ ├── 7-37、[160] 相交链表_ev.mp4 10.22M │ ├── 7-38、[167] 两数之和 II_ev.mp4 13.63M │ ├── 7-39、[168] Excel表列名称_ev.mp4 9.13M │ ├── 7-40、[169] 求众数_ev.mp4 17.14M │ ├── 7-41、[171] Excel表列序号_ev.mp4 5.85M │ ├── 7-42、[172] 阶乘后的零_ev.mp4 6.40M │ ├── 7-43、[189] 旋转数组_ev.mp4 10.22M │ ├── 7-44、[190] 颠倒二进制位_ev.mp4 12.51M │ ├── 7-45、[191] 位1的个数_ev.mp4 4.18M │ ├── 7-46、[198] 打家劫舍_ev.mp4 18.83M │ ├── 7-47、[202] 快乐数_ev.mp4 16.68M │ ├── 7-48、[203] 移除链表元素_ev.mp4 10.09M │ ├── 7-49、[204] 计数质数:筛选法求质数_ev.mp4 32.36M │ ├── 7-50、[205] 同构字符串_ev.mp4 14.36M │ ├── 7-51、[206] 反转链表_ev.mp4 9.50M │ ├── 7-53、[219] 存在重复元素 II_ev.mp4 16.52M │ ├── 7-54、[225] 用队列实现栈_ev.mp4 13.71M │ ├── 7-55、[226] 翻转二叉树_ev.mp4 6.44M │ ├── 7-56、[231] 2的幂_ev.mp4 7.88M │ ├── 7-57、[232] 用栈实现队列_ev.mp4 11.49M │ ├── 7-58、[234] 回文链表_ev.mp4 15.18M │ ├── 7-59、[235] 二叉搜索树的最近公共祖先_ev.mp4 15.57M │ ├── 7-60、[237] 删除链表中的节点_ev.mp4 5.84M │ ├── 7-61、[242] 有效的字母异位词_ev.mp4 13.25M │ ├── 7-62、[257] 二叉树的所有路径_ev.mp4 15.94M │ ├── 7-63、[258] 各位相加_ev.mp4 11.92M │ ├── 7-64、[263] 丑数_ev.mp4 5.80M │ ├── 7-65、[268] 缺失数字_ev.mp4 10.18M │ ├── 7-66、[278] 第一个错误的版本_ev.mp4 19.30M │ ├── 7-67、[283] 移动零_ev.mp4 8.04M │ ├── 7-68、[290] 单词模式_ev.mp4 25.19M │ ├── 7-69、[292]Nim 游戏_ev.mp4 13.09M │ ├── 7-70、[303] 区域和检索 - 数组不可变_ev.mp4 6.14M │ ├── 7-71、[326] 3的幂_ev.mp4 10.75M │ ├── 7-72、[342] 4的幂_ev.mp4 9.69M │ ├── 7-73、[344] 反转字符串_ev.mp4 5.31M │ ├── 7-74、[345] 反转字符串中的元音字母_ev.mp4 14.13M │ ├── 7-75、[349] 两个数组的交集_ev.mp4 9.93M │ ├── 7-76、[350] 两个数组的交集 II_ev.mp4 12.68M │ ├── 7-77、[367] 有效的完全平方数_ev.mp4 6.30M │ ├── 7-78、[371] 两整数之和:不用+-计算两数之和_ev.mp4 26.70M │ ├── 7-79、[374] 猜数字大小_ev.mp4 7.51M │ ├── 7-80、[383] 赎金信_ev.mp4 12.84M │ ├── 7-81、[387] 字符串中的第一个字符_ev.mp4 9.11M │ ├── 7-82、[389] 找不同_ev.mp4 12.26M │ ├── 7-83、[400] 第N个数字_ev.mp4 44.44M │ ├── 7-84、[401] 二进制手表_ev.mp4 26.62M │ ├── 7-85、[404] 左叶子之和_ev.mp4 11.07M │ ├── 7-86、[405] 数字转换为十六进制数_ev.mp4 9.63M │ ├── 7-87、[409] 最长回文串_ev.mp4 18.38M │ ├── 7-88、[412] Fizz Buzz_ev.mp4 10.61M │ ├── 7-89、[414] 第三大的数_ev.mp4 23.23M │ ├── 7-90、[415] 字符串相加_ev.mp4 19.89M │ ├── 7-91、[427] 建立四叉树_ev.mp4 76.35M │ ├── 7-92、[429] N叉树的层序遍历_ev.mp4 20.72M │ ├── 7-93、[434] 字符串中的单词数_ev.mp4 12.70M │ ├── 7-94、[437] 路径总和 III_ev.mp4 17.98M │ ├── 7-95、[438] 找到字符串中所有字母异位词_ev.mp4 30.72M │ ├── 7-96、[441] 排列硬币_ev.mp4 7.68M │ ├── 7-97、[443] 压缩字符串_ev.mp4 16.68M │ ├── 7-98、[447] 回旋镖的数量_ev.mp4 27.97M │ ├── 7-99、[448] 找到所有数组中消失的数字_ev.mp4 32.64M │ ├── 7-100、[453]最小移动次数使数组元素相等_ev.mp4 23.02M │ ├── 7-101、[455] 分发饼干_ev.mp4 10.82M │ ├── 7-102、[459] 重复的子字符串_ev.mp4 21.46M │ ├── 7-103、[461] 汉明距离_ev.mp4 5.20M │ ├── 7-104、[463] 岛屿的周长_ev.mp4 13.19M │ ├── 7-105、[475] 供暖器[475] 供暖器_ev.mp4 35.15M │ ├── 7-106、[476] 数字的补数_ev.mp4 8.57M │ ├── 7-107、[482] 密钥格式化_ev.mp4 14.15M │ ├── 7-108、[485] 连续1的个数_ev.mp4 8.91M │ ├── 7-109、[492] 构造矩形_ev.mp4 17.70M │ ├── 7-110、[496] 下一个更大元素 I_ev.mp4 18.43M │ ├── 7-111、[500] 键盘行_ev.mp4 27.17M │ ├── 7-112、[501] 二叉搜索树中的众数_ev.mp4 33.61M │ ├── 7-113、[504] 七进制数_ev.mp4 13.17M │ ├── 7-114、[506]相对名次_ev.mp4 21.10M │ ├── 7-115、[507] 数_ev.mp4 14.99M │ ├── 7-116、[509] 斐波那契数_ev.mp4 5.52M │ ├── 7-117、[520] 检测大写字母_ev.mp4 13.59M │ ├── 7-118、[521] 最长特殊序列 Ⅰ_ev.mp4 9.94M │ ├── 7-119、[530] 二叉搜索树的最小绝对差_ev.mp4 13.07M │ ├── 7-120、[532] 数组中的K-diff数对_ev.mp4 16.70M │ ├── 7-121、[538] 把二叉搜索树转换为累加树_ev.mp4 14.85M │ ├── 7-122、[541] 反转字符串 II_ev.mp4 11.22M │ ├── 7-123、[543] 二叉树的直径_ev.mp4 10.75M │ ├── 7-124、[551] 学生出勤记录 I_ev.mp4 8.63M │ ├── 7-125、[557] 反转字符串中的单词_ev.mp4 12.37M │ ├── 7-126、[558] 四叉树交集_ev.mp4 58.58M │ ├── 7-127、[559] N叉树的深度_ev.mp4 10.54M │ ├── 7-128、[561] 数组拆分 I_ev.mp4 10.23M │ ├── 7-129、[563] 二叉树的坡度_ev.mp4 8.97M │ ├── 7-130、[566] 重塑矩阵_ev.mp4 13.13M │ ├── 7-131、[572] 另一个树的子树_ev.mp4 21.91M │ ├── 7-132、[575] 分糖果_ev.mp4 12.30M │ ├── 7-133、[581] 最短无序连续子数组_ev.mp4 37.84M │ ├── 7-134、[589] N叉树的前序遍历_ev.mp4 11.53M │ ├── 7-135、[590] N叉树的后序遍历_ev.mp4 12.20M │ ├── 7-136、[594] 最长和谐子序列_ev.mp4 21.28M │ ├── 7-137、[598] 范围求和_ev.mp4 14.12M │ ├── 7-138、[599] 两个列表的最小索引总和_ev.mp4 19.93M │ ├── 7-139、[605] 种花问题_ev.mp4 24.05M │ ├── 7-140、[606] 根据二叉树创建字符串_ev.mp4 16.71M │ ├── 7-141、[617] 合并二叉树_ev.mp4 8.72M │ ├── 7-142、[628] 三个数的乘积_ev.mp4 42.44M │ ├── 7-143、[633] 平方数之和_ev.mp4 11.88M │ ├── 7-144、[637] 二叉树的层平均值_ev.mp4 15.16M │ ├── 7-145、[643] 子数组平均数 I_ev.mp4 8.51M │ ├── 7-146、[645] 错误的集合_ev.mp4 23.25M │ ├── 7-148、[657] 机器人能否返回原点_ev.mp4 12.22M │ ├── 7-149、[661] 图片平滑器_ev.mp4 22.60M │ ├── 7-150、[665] 非递减数列_ev.mp4 18.44M │ ├── 7-151、[669] 修剪二叉搜索树_ev.mp4 10.90M │ ├── 7-152、[671] 二叉树中第二小的节点_ev.mp4 23.38M │ ├── 7-153、[674] 最长连续递增序列_ev.mp4 8.77M │ ├── 7-154、[680] 验证回文字符串 Ⅱ_ev.mp4 18.40M │ ├── 7-155、[682] 棒球比赛_ev.mp4 17.55M │ ├── 7-156、[686] 重复叠加字符串匹配_ev.mp4 10.71M │ ├── 7-157、[687] 最长同值路径_ev.mp4 31.72M │ ├── 7-158、[690] 员工的重要性_ev.mp4 20.70M │ ├── 7-159、[693] 交替位二进制数_ev.mp4 7.13M │ ├── 7-160、[696] 计数二进制子串_ev.mp4 29.16M │ ├── 7-161、[697] 数组的度: 巧用map int_ev.mp4 25.66M │ ├── 7-162、[700] 二叉搜索树中的搜索_ev.mp4 5.84M │ ├── 7-163、[703] 数据流中的第K大元素_ev.mp4 19.12M │ ├── 7-164、[704] 二分查找_ev.mp4 6.48M │ ├── 7-165、[705] 设计哈希集合_ev.mp4 7.62M │ ├── 7-166、[706] 设计哈希映射_ev.mp4 7.64M │ ├── 7-167、[707] 设计链表:(cpp版力扣中国测试用例的干扰)_ev.mp4 99.49M │ ├── 7-168、[709] 转换成小写字母_ev.mp4 9.34M │ ├── 7-169、[717] 1比特与2比特字符_ev.mp4 11.96M │ ├── 7-170、[720] 词典中最长的单词_ev.mp4 16.05M │ ├── 7-171、[724] 寻找数组的中心索引_ev.mp4 10.73M │ ├── 7-172、[728] 自除数_ev.mp4 12.57M │ ├── 7-173、[733] 图像渲染_ev.mp4 29.95M │ ├── 7-174、[744] 寻找比目标字母大的最小字母_ev.mp4 12.31M │ ├── 7-175、[746] 使用最小花费爬楼梯_ev.mp4 16.46M │ ├── 7-176、[747] 至少是其他数字两倍的数_ev.mp4 9.28M │ ├── 7-177、[748] 最短完整词_ev.mp4 19.60M │ ├── 7-178、[754] 到达终点数字_ev.mp4 35.96M │ ├── 7-179、[762] 二进制表示中质数个计算置位_ev.mp4 10.72M │ ├── 7-180、[766] 托普利茨矩阵_ev.mp4 6.68M │ ├── 7-181、[771] 宝石与石头_ev.mp4 5.82M │ ├── 7-182、[783] 二叉搜索树结点最小距离_ev.mp4 15.43M │ ├── 7-183、[784] 字母大小写全排列_ev.mp4 13.55M │ ├── 7-184、[788] 旋转数字_ev.mp4 12.53M │ ├── 7-185、[796] 旋转字符串_ev.mp4 7.24M │ ├── 7-186、[804] 摩尔斯密码词_ev.mp4 14.62M │ ├── 7-187、[806] 写字符串需要的行数_ev.mp4 11.93M │ ├── 7-188、[811] 子域名访问计数_ev.mp4 37.92M │ ├── 7-189、[812] 三角形面积_ev.mp4 21.31M │ ├── 7-190、[819] 最常见的单词_ev.mp4 28.63M │ ├── 7-191、[821] 字符的最短距离_ev.mp4 15.30M │ ├── 7-192、[824] 山羊拉丁文_ev.mp4 19.05M │ ├── 7-193、[830] 较大分组的位置_ev.mp4 9.64M │ ├── 7-194、[832] 翻转图像_ev.mp4 6.71M │ ├── 7-195、[836] 矩形重叠_ev.mp4 16.88M │ ├── 7-196、[840] 矩阵中的幻方_ev.mp4 44.97M │ ├── 7-197、[844] 比较含退格的字符串_ev.mp4 10.75M │ ├── 7-198、[849] 到最近的人的距离_ev.mp4 15.21M │ ├── 7-199、[852] 山脉数组的峰顶索引_ev.mp4 11.58M │ ├── 7-200、[859] 亲密字符串_ev.mp4 31.06M │ ├── 7-201、[860] 柠檬水找零_ev.mp4 17.19M │ ├── 7-202、[867] 转置矩阵_ev.mp4 8.79M │ ├── 7-203、[868] 二进制间距_ev.mp4 10.75M │ ├── 7-204、[872] 叶子相似的树_ev.mp4 11.81M │ ├── 7-205、[874] 模拟行走机器人_ev.mp4 23.74M │ ├── 7-206、[876] 链表的中间结点:快慢指针法_ev.mp4 7.86M │ ├── 7-207、[883] 三维形体投影面积_ev.mp4 17.13M │ ├── 7-208、[884] 两句话中的不常见单词.mp4 13.24M │ ├── 7-208、[884] 两句话中的不常见单词_ev.mp4 16.35M │ ├── 7-209、[888] 公平的糖果交换_ev.mp4 14.81M │ ├── 7-210、[892] 三维形体的表面积_ev.mp4 21.43M │ ├── 7-211、[893] 特殊等价字符串组_ev.mp4 33.52M │ ├── 7-212、[896] 单调数列_ev.mp4 8.82M │ ├── 7-213、[897] 递增顺序查找树_ev.mp4 16.35M │ ├── 7-214、[905] 按奇偶排序数组_ev.mp4 8.36M │ ├── 7-215、[908] 最小差值 I_ev.mp4 11.62M │ ├── 7-216、[914] 卡牌分组_ev.mp4 25.99M │ ├── 7-217、[917] 仅仅反转字母_ev.mp4 10.21M │ ├── 7-218、[922] 按奇偶排序数组 II_ev.mp4 10.56M │ ├── 7-219、[925] 长按键入_ev.mp4 7.21M │ ├── 7-220、[929] 独特的电子邮件地址_ev.mp4 23.10M │ ├── 7-221、[933] 最近的请求次数_ev.mp4 7.35M │ ├── 7-222、[937] 重新排列日志文件_ev.mp4 24.56M │ ├── 7-223、[938] 二叉搜索树的范围和_ev.mp4 9.64M │ ├── 7-224、[941] 有效的山脉数组_ev.mp4 11.65M │ ├── 7-225、[942] 增减字符串匹配_ev.mp4 13.52M │ ├── 7-226、[944] 删列造序_ev.mp4 8.49M │ ├── 7-227、[949] 给定数字能组成的时间_ev.mp4 13.82M │ ├── 7-228、[953] 验证外星语词典_ev.mp4 14.81M │ ├── 7-229、[961] 重复 N 次的元素_ev.mp4 9.24M │ ├── 7-230、[965] 单值二叉树_ev.mp4 9.64M │ ├── 7-231、[970] 强整数_ev.mp4 15.92M │ ├── 7-232、[976] 三角形的周长_ev.mp4 7.66M │ ├── 7-233、[977] 有序数组的平方_ev.mp4 5.43M │ ├── 7-234、[985]查询后的偶数和_ev.mp4 13.63M │ ├── 7-235、[989] 数组形式的整数加法_ev.mp4 8.70M │ ├── 7-236、[993] 二叉树的堂兄弟节点_ev.mp4 29.12M │ ├── 7-237、[994] 腐烂的橘子_ev.mp4 26.79M │ ├── 7-238、[997] 找到小镇的法官_ev.mp4 18.39M │ ├── 7-239、[999] 车的可用捕获量_ev.mp4 29.86M │ ├── 7-240、[1002] 查找常用字符_ev.mp4 14.86M │ ├── 7-241、[1005] K 次取反后化的数组和_ev.mp4 24.13M │ ├── 7-242、[1009] 十进制整数的反码_ev.mp4 8.22M │ ├── 7-243、[1010] 总持续时间可被 60 整除的歌曲_ev.mp4 20.21M │ ├── 7-244、[1013] 将数组分成和相等的三个部分_ev.mp4 8.91M │ ├── 7-245、[1018] 可被 5 整除的二进制前缀_ev.mp4 8.88M │ ├── 7-246、[1021] 删除最外层的括号_ev.mp4 14.69M │ ├── 7-247、[1022] 从根到叶的二进制数之和_ev.mp4 12.67M │ ├── 7-248、[1025] 除数博弈_ev.mp4 16.07M │ ├── 7-249、[1029] 两地调度_ev.mp4 21.95M │ ├── 7-250、[1030] 距离顺序排列矩阵单元格_ev.mp4 20.53M │ ├── 7-251、[1033]移动石子直到连续_ev.mp4 16.96M │ ├── 7-252、[1037] 有效的回旋镖_ev.mp4 15.58M │ ├── 7-253、[1041] 困于环中的机器人_ev.mp4 14.87M │ ├── 7-254、[1042] 不邻接植花_ev.mp4 22.68M │ └── 算法设计与编程实践---基于leetcode的企业真题库.zip 3.71M ├── 【夏曹俊23308】C++微服务架构及安全云盘项目实训 │ ├── 1-01、开班仪式直播_ev.mp4 196.08M │ ├── 2-01、云安全云盘项目模块架构分析需求概述_ev.mp4 58.16M │ ├── 3-01、vs2017安装和使用说明示例_ev.mp4 28.34M │ ├── 3-02、VS2017创建四种项目和目录结构规范_ev.mp4 21.39M │ ├── 3-03、vs项目文件作用分析和版本提交说明_ev.mp4 34.76M │ ├── 3-04、项目常规配置_sdk_平台工具集和输出_ev.mp4 23.69M │ ├── 3-05、C++编译设置_头文件_预处理器宏_ev.mp4 19.59M │ ├── 3-06、项目链接配置_库配置_编译步骤配置_ev.mp4 26.82M │ ├── 3-07、解决方案配置_多项目依赖_配置管理器_ev.mp4 18.92M │ ├── 4-01、QT5.12版本SDK安装和使用分析_ev.mp4 75.04M │ ├── 4-02、QT的VS插件安装和QT界面项目创建_ev.mp4 27.20M │ ├── 5-01、Linux系统安装使用课程说明_ev.mp4 13.27M │ ├── 5-02、vmware中安装ubuntu系统_ev.mp4 21.21M │ ├── 5-03、Linux常用命令讲解和示例_ev.mp4 47.25M │ ├── 5-04、vim编辑器快速入门_ev.mp4 27.45M │ ├── 5-05、安装卸载软件apt-get并更新数据源_ev.mp4 67.41M │ ├── 5-06、openssh-server安装和使用详解_ev.mp4 26.34M │ ├── 5-07、ubunt18.04的IP静态地址配置_ev.mp4 16.16M │ ├── 5-08、ubuntu文件和目录分析和命令演示_ev.mp4 30.13M │ ├── 5-09、文件处理和链接操作指令_ev.mp4 45.67M │ ├── 5-10、文件的权限设定和掩码设置_ev.mp4 21.21M │ ├── 5-11、Linux进程分析和进程启动三种方式_ev.mp4 51.87M │ ├── 5-12、LInux进程终止和信号发送kill_pkill_ev.mp4 23.05M │ ├── 5-13、ubuntu系统自启动程序设置_ev.mp4 15.53M │ ├── 5-14、ubuntu系统用户添加和密码存放分析_ev.mp4 24.11M │ ├── 5-15、ubuntu系统rsyslog网络转发配置_ev.mp4 41.27M │ ├── 6-01、C++编码规则分析_ev.mp4 23.58M │ ├── 6-02、c++编码规则_头文件规则详解分析_ev.mp4 27.76M │ ├── 6-03、c++编码规则_头文件规则代码示例_ev.mp4 35.42M │ ├── 6-04、C++编码规则中的类定义规则详解分析_ev.mp4 28.66M │ ├── 6-05、C++编码规则中的类定义规则代码示例_ev.mp4 29.06M │ ├── 6-06、编码规则文件_类_变量_函数命名规则_ev.mp4 38.39M │ ├── 6-07、C++Doxygen注释规则并生成API的文档_ev.mp4 74.24M │ ├── 7-01、ubuntu开发环境安装gcc_make_gdb_编译_ev.mp4 32.72M │ ├── 7-02、使用gcc_g++编译程序详解_ev.mp4 21.37M │ ├── 7-03、g++分步预处理_编译_汇编_执行代码_ev.mp4 20.61M │ ├── 7-04、gdb调试工具使用和coredump查看_ev.mp4 41.92M │ ├── 7-05、g++编译动态链接库并测试_ev.mp4 26.82M │ ├── 7-06、makefile介绍和第一个项目示例_ev.mp4 16.04M │ ├── 7-07、makefile变量使用和规则分析_ev.mp4 19.55M │ ├── 7-08、makefile多文件和动态库编译示例_ev.mp4 50.74M │ ├── 8-01、Git使用说明和原理分析_ev.mp4 26.41M │ ├── 8-02、Git在Linux上服务安装配置提交和更新_ev.mp4 42.99M │ ├── 8-03、Git日志查看和版本回滚_ev.mp4 21.34M │ ├── 8-04、Git解决提交冲突的问题_ev.mp4 21.07M │ ├── 8-05、在windows安装tortoiseGit_ev.mp4 28.23M │ ├── 8-06、Linux使用RSA公私钥免密码提交更新_ev.mp4 27.51M │ ├── 8-07、Windows使用TortoiseGit免密码_ev.mp4 18.16M │ ├── 8-08、版本号制定规则_ev.mp4 17.04M │ ├── 9-01、网络编程socket接口详解_ev.mp4 73.56M │ ├── 9-02、网络编程详解TCP的服务端代码示例_ev.mp4 79.17M │ ├── 9-03、Linux下socket编程TCP客户端代码演示_ev.mp4 37.21M │ ├── 9-04、git提交并移植socket程序到window_ev.mp4 43.30M │ ├── 10-01、安全云盘系统xdisk需求分析_ev.mp4 2.94M │ ├── 11-01、libevent实训课程说明和IO模型_ev.mp4 53.18M │ ├── 11-02、windows平台编译libevent分析及环境安装_ev.mp4 35.57M │ ├── 11-03、用vs2017编译zlib源码_ev.mp4 31.60M │ ├── 11-04、用vs2017编译openssl源码_ev.mp4 64.57M │ ├── 11-05、libevent源码vs2017编译包含openssl_ev.mp4 34.99M │ ├── 11-06、libevent集成zlib的测试程序配置修改_ev.mp4 81.74M │ ├── 11-07、libevent源码vs2017编译批处理_ev.mp4 36.86M │ ├── 11-08、libevent第一个vs2017的测试程序完成_ev.mp4 31.79M │ ├── 11-09、libevent在linux环境编译源码并测试_ev.mp4 85.60M │ ├── 11-10、、基于event监控客户端连接并获取连接_ev.mp4 178.32M │ ├── 11-11、evconnlistener绑定端口监听连接_ev.mp4 40.29M │ ├── 11-12、bufferevent服务端代码示例事件策略_ev.mp4 100.96M │ ├── 12-01、基于libevent的c++线程池原理详解_ev.mp4 59.13M │ ├── 12-02、创建好XThreadPool的单件模式代码_ev.mp4 36.14M │ ├── 12-03、使用c++11的thread完成XThread线程池_ev.mp4 15.31M │ ├── 12-04、完成线程的安装和跨平台管道激活事件_ev.mp4 73.21M │ ├── 12-05、完成线程池的线程分发和线程激活_ev.mp4 29.51M │ ├── 12-06、完成线程池的自定义任务及其分发_ev.mp4 38.39M │ ├── 12-07、完成想线程池线程中添加自定义任务_ev.mp4 27.43M │ ├── 12-08、完成线程池任务资源清理并移植到linux_ev.mp4 44.81M │ ├── 13-01、QT的工具_MVD架构和信号槽原理分析_ev.mp4 57.98M │ ├── 13-02、Qt界面编程代码示例_ev.mp4 69.93M │ ├── 14-01、云盘原型系统详细设计_ev.mp4 115.51M │ ├── 14-02、移植线程池到通信模块动态库并测试_ev.mp4 97.67M │ ├── 14-03、通信模块动态库移植到linux并完成云盘_ev.mp4 114.73M │ ├── 14-04、创建好客户端项目完成连接功能_ev.mp4 186.50M │ ├── 14-05、完成客户端和服务端数据通信_ev.mp4 51.80M │ ├── 14-06、完成了基于XMsg格式的消息通信_ev.mp4 86.80M │ ├── 14-07、完成了服务端和客户端通信获取目录_ev.mp4 204.83M │ ├── 14-08、完成了文件上传功能和目录刷新_ev.mp4 259.39M │ ├── 14-09、完成了文件下载功能和内存泄漏修正_ev.mp4 260.49M │ ├── 15-01、protobuf课程介绍和在windows编译源码_ev.mp4 89.33M │ ├── 15-02、protobuf基础概念分析_ev.mp4 40.37M │ ├── 15-03、protobuf代码示例_vs2017_ev.mp4 79.62M │ ├── 15-04、反射_根据Message对象和字段名称获取_ev.mp4 43.89M │ ├── 15-05、反射_运行时解析proto文件_ev.mp4 71.33M │ ├── 15-06、protobuf联合libevent测试程序设计_ev.mp4 18.38M │ ├── 15-07、基于bufferevent的服务端和客户端_ev.mp4 93.67M │ ├── 15-08、pb协议分析和类图设计和消息代码_ev.mp4 126.76M │ ├── 15-09、完成自定义协议和pb数据的封包和解包_ev.mp4 130.96M │ ├── 15-10、完成消息类成员回调函数注册和调用_ev.mp4 93.57M │ ├── 15-11、protobuf项目移植到linux_ev.mp4 56.50M │ ├── 16-01、课程介绍和设计文档分析类图和顺序图_ev.mp4 62.65M │ ├── 16-02、线程池代码重构加入工厂和退出处理_ev.mp4 59.34M │ ├── 16-03、完成通信模块libevent和pb的封装_ev.mp4 72.94M │ ├── 16-04、通信模块客户端项目创建和测试_ev.mp4 60.55M │ ├── 16-05、通信模块服务端项目创建和测试_ev.mp4 118.22M │ ├── 16-06、通信客户端pb数据准备和自动重连开发_ev.mp4 104.92M │ ├── 16-07、客户端和服务端基于pb数据通信_ev.mp4 96.88M │ ├── 17-01、完成消息注册的成员函数和互斥处理类_ev.mp4 86.90M │ ├── 17-02、客户端和微服务的通信获取测试目录_ev.mp4 66.75M │ ├── 17-03、apigateway代码创建_ev.mp4 112.45M │ ├── 17-04、路由经过proxy转发数据测试完成_ev.mp4 137.87M │ ├── 17-05、完成代理自动重连和微服务集群测试_ev.mp4 113.51M │ ├── 18-01、mysql数据库开发快速入门_ev.mp4 68.53M │ ├── 18-02、mysql_workbench客户端使用_ev.mp4 24.36M │ ├── 18-03、vs2017mysqlapi项目调用静态和动态库_ev.mp4 48.67M │ ├── 18-04、MysqlServer8.0在ubuntu上安装和配置_ev.mp4 35.50M │ ├── 18-05、linux上mysqlapi项目创建编译运行_ev.mp4 35.35M │ ├── 18-06、mysql_init_API库的初始化和清理_ev.mp4 29.19M │ ├── 18-07、mysql_real_connect数据库完成连接_ev.mp4 19.42M │ ├── 18-08、mysql连接超时时间和自动重连设置测试_ev.mp4 38.11M │ ├── 18-09、查询接口分析和mysql_real_query代码_ev.mp4 35.83M │ ├── 18-10、获取结果集mysql_store_result_ev.mp4 27.14M │ ├── 18-11、遍历并显示结果集mysql_fetch_row_ev.mp4 32.73M │ ├── 18-12、使用MysqlAPI通过INSERT插一千条数据_ev.mp4 47.19M │ ├── 18-13、UPDATE修改数据并根据map生成update_ev.mp4 43.53M │ ├── 18-14、DELETE和truncate清数据和清表空间_ev.mp4 31.88M │ ├── 19-01、完成支持map的Insert插入数据接口封装_ev.mp4 79.03M │ ├── 19-02、完成文件读取接口的封装_ev.mp4 34.98M │ ├── 19-03、完成二进制文件内容插入接口InsertBin_ev.mp4 49.41M │ ├── 19-04、完成文件存储接口并读取插入的二进制_ev.mp4 25.14M │ ├── 19-05、完成支持map的Update接口并测试修改_ev.mp4 30.70M │ ├── 19-06、完成UpdateBin修改二进制数据逇接口_ev.mp4 31.65M │ ├── 19-07、完成LXMysql事务的接口封装_ev.mp4 21.54M │ ├── 20-01、字符编码类型mysql设置和转换API分析_ev.mp4 33.94M │ ├── 20-02、windows上字符集gbk和utf8互转_ev.mp4 66.33M │ ├── 20-03、linux上字符集GBK和UTF8互转_ev.mp4 98.62M │ ├── 20-04、LXMysql库添加字符集转换函数_ev.mp4 85.89M │ ├── 20-05、简易获取数据的接口GetResult实现_ev.mp4 40.28M │ ├── 20-06、mysql的表锁和行锁代码示例购票竞争_ev.mp4 64.11M │ ├── 21-01、DBO数据库模块详细设计_ev.mp4 0.81M │ ├── 21-02、mysql 数据库接口封装设计_ev.mp4 22.39M │ ├── 21-03、LXMysql动态链接库测试vs2017项目创建_ev.mp4 48.40M │ ├── 21-04、完成封装的Init和Close接口_ev.mp4 27.29M │ ├── 21-05、完成Connect连接数据的接口和测试_ev.mp4 24.62M │ ├── 21-06、Query执行sql语句的接口封装和测试_ev.mp4 34.75M │ ├── 21-07、Options接口封装设置自动重连和超时_ev.mp4 48.33M │ ├── 21-08、结果集获取StoreResult和清理接口_ev.mp4 32.58M │ ├── 21-09、完成FetchRow获取一行vector数据_ev.mp4 28.30M │ ├── 21-10、完成支持map的Insert插入数据接口封装_ev.mp4 79.14M │ ├── 21-11、完成支持map的Update接口并测试修改_ev.mp4 31.11M │ ├── 22-01、注册中心详细设计_ev.mp4 84.69M │ ├── 22-02、完成注册中心客户端的连接和消息发送_ev.mp4 105.08M │ ├── 22-03、完成注册中心的客户端和服务端的注册请求和响应_ev.mp4 84.06M │ ├── 22-04、完成微服务的注册并测试异常情况_ev.mp4 72.26M │ ├── 22-05、完成了服务端和客户端的服务发现_ev.mp4 135.39M │ ├── 22-06、完成客户端多线程获取微服务列表的接口_ev.mp4 37.65M │ ├── 22-07、注册中心客户端集成入并注册测试微服务_ev.mp4 121.82M │ ├── 23-01、配置中心设计说明_ev.mp4 16.44M │ ├── 23-02、配置中心服务端客户端项目创建_ev.mp4 73.14M │ ├── 23-03、配置中心DAO存储pb配置_ev.mp4 151.22M │ ├── 23-04、配置中心DAO读取配置和多线程互斥_ev.mp4 40.28M │ ├── 23-05、完成配中心的服务端初始化_ev.mp4 53.42M │ ├── 23-06、完成了配置中心的上传配置_ev.mp4 114.94M │ ├── 23-07、完成了下载配置的服务端和客户端_ev.mp4 61.29M │ ├── 23-08、配置中心客户端多线程获取配置接口_ev.mp4 34.73M │ ├── 23-09、测试微服务集成注册中心_ev.mp4 231.25M │ ├── 23-10、配置中心客户端反射具体配置内容_ev.mp4 177.36M │ ├── 24-01、管理工具的功能设计说明_ev.mp4 19.77M │ ├── 24-02、管理工具的qt界面样式设计圆角边框_ev.mp4 82.31M │ ├── 24-03、获取配置列表的DAO层代码完成_ev.mp4 92.88M │ ├── 24-04、获取配置列表的前后端代码和自动重连_ev.mp4 79.06M │ ├── 24-05、完成了配置的列表显示和日志显示界面_ev.mp4 121.57M │ ├── 24-06、完成配置新增功能界面和业务逻辑添加_ev.mp4 76.65M │ ├── 24-07、动态解析proto文件获取类型_ev.mp4 111.17M │ ├── 24-08、动态生成message代码并创建对象_ev.mp4 53.21M │ ├── 24-09、根据proto文件反射自动生成输入界面_ev.mp4 103.35M │ ├── 24-10、完成配置的基础信息存储_ev.mp4 78.83M │ ├── 24-11、通过proto反射设置配置信息并存储_ev.mp4 124.28M │ ├── 24-12、完成配置删除确认并处理_ev.mp4 104.38M │ ├── 24-13、修改配置完成proto文件缓存和解析_ev.mp4 124.06M │ ├── 24-14、完成了配置修改重构了界面生成_ev.mp4 121.65M │ ├── 25-01、SSL_TLS加密通信的基础原理_ev.mp4 72.95M │ ├── 25-02、基于OpenSSL证书和秘钥的制作_ev.mp4 52.17M │ ├── 25-03、OpenSSL 加密SSL_TLS通信接口分析_ev.mp4 27.31M │ ├── 25-04、OpenSSL接口编程实例完成跨平台通信_ev.mp4 114.24M │ ├── 25-05、完成OpenSSL服务端SSL握手调用_ev.mp4 47.77M │ ├── 25-06、完成SSL通信客户端和服务端的握手连接_ev.mp4 59.11M │ ├── 25-07、打印通信使用的协议和x509证书信息_ev.mp4 27.58M │ ├── 25-08、完成基于OpenSSL的安全加密通信_ev.mp4 63.65M │ ├── 25-09、基于libevent和openssl通信的客户端_ev.mp4 87.49M │ ├── 25-10、基于libevent和openssl通信的服务端_ev.mp4 66.52M │ ├── 25-11、重构xplatform添加ssl通信完成客户端_ev.mp4 97.90M │ ├── 25-12、重构xplatform完成ssl消息通信服务端_ev.mp4 46.98M │ ├── 25-13、重构gateway添加从配置中心获取SSL_ev.mp4 202.45M │ ├── 26-01、注册中心高可用重构说明_ev.mp4 101.78M │ ├── 26-02、添加注册中心makefile的安装卸载_ev.mp4 52.80M │ ├── 26-03、注册中心高可用重构_通信模块断开_ev.mp4 138.23M │ ├── 26-04、注册中心客户端内存缓冲和磁盘缓冲_ev.mp4 122.71M │ ├── 26-05、注册中心客户端读取本地磁盘缓冲_ev.mp4 75.84M │ ├── 26-06、注册中心使用定时器实现心跳_ev.mp4 37.78M │ ├── 27-01、配置中心高可用重构客户端测试程序_ev.mp4 156.64M │ ├── 27-02、配置中心客户端定时通过注册中心获取_ev.mp4 60.14M │ ├── 27-03、配置中心客户端的磁盘缓存读写完成_ev.mp4 37.95M │ ├── 27-04、配置中心在linux上的部署_ev.mp4 128.34M │ ├── 27-05、网关移植linux配置接口和注册接口_ev.mp4 190.42M │ ├── 28-01、MooseFS介绍和上传下载流程说明_ev.mp4 17.06M │ ├── 28-02、安装配置管理服务器mfsmaster_元数据_ev.mp4 34.55M │ ├── 28-03、安装数据服务器mfs_chunkserver_ev.mp4 33.03M │ ├── 28-04、安装mfsmount客户端并配置存储份数_ev.mp4 24.47M │ ├── 29-01、OpenSSL生成MD5和SHA256接口和原理_ev.mp4 28.84M │ ├── 29-02、OpenSSL基于BIO接口的Base64编解码_ev.mp4 69.95M │ ├── 30-01、鉴权中心业务流程说明_ev.mp4 18.68M │ ├── 30-02、添加鉴权中心服务端和客户端处理登录_ev.mp4 87.71M │ ├── 30-03、初始化好鉴权中心表完成用户新增_ev.mp4 89.69M │ ├── 30-04、完成登录验证DAO含token生成_ev.mp4 72.13M │ ├── 30-05、完成登录客户端接收新增用户_ev.mp4 54.76M │ ├── 30-06、鉴权中心客户端添加到配置管理工具_ev.mp4 104.79M │ ├── 31-01、完成日志的DAO模块创建好表_ev.mp4 58.54M │ ├── 31-02、完成日志模块微服务和客户端_ev.mp4 141.03M │ ├── 32-01、云安全云盘项目说明_ev.mp4 27.37M │ ├── 32-02、登录界面qss样式说明_ev.mp4 23.10M │ ├── 32-03、完成鉴权中心注册和网关登录系统_ev.mp4 77.13M │ ├── 32-04、注册中心和网关的IP通过主机名或域名_ev.mp4 40.36M │ ├── 32-05、主控界面设计和目录刷新接口设计_ev.mp4 46.31M │ ├── 32-06、完成目录微服务创建接收目录获取请求_ev.mp4 69.99M │ ├── 32-07、完成自定义信号槽实现目录显示_ev.mp4 98.05M │ ├── 32-08、完成文件图标_大小显示和全选功能_ev.mp4 51.87M │ ├── 32-09、完成token鉴权消息封装网关验证目录_ev.mp4 177.84M │ ├── 32-10、完成新建目录并刷新显示_ev.mp4 86.25M │ ├── 32-11、完成目录切换后退和当前目录显示_ev.mp4 40.73M │ ├── 32-12、完成文件删除的前后端_ev.mp4 50.00M │ ├── 32-13、完成磁盘和用户空间的显示_ev.mp4 87.48M │ ├── 32-14、上传微服务处理文件上传请求创建_ev.mp4 48.17M │ ├── 32-15、完成了客户端的文件上传指令处理_ev.mp4 60.34M │ ├── 32-16、完成发送和接收文件片_ev.mp4 74.94M │ ├── 32-17、文件上传进度显示核心代码讲解_ev.mp4 61.35M │ ├── 32-18、文件下载代码分析_ev.mp4 40.07M │ ├── 32-19、上传和下载任务列表进度定时刷新_ev.mp4 66.16M │ ├── 32-20、上传和下载微服务获取和轮训负载访问_ev.mp4 34.57M │ ├── 32-21、文件上传和下载的完整性校验_ev.mp4 39.75M │ ├── 32-22、文件AES加密上传和下载解密_ev.mp4 70.81M │ ├── C++微服务架构及安全云盘项目实训.zip 668.73M │ ├── 第二期C++微服务架构及安全云盘第二次直播_ev.mp4 307.07M │ ├── 第二期C++微服务架构及安全云盘第六次直播_ev.mp4 58.54M │ ├── 第二期C++微服务架构及安全云盘第四次直播_ev.mp4 174.83M │ ├── 第二期C++微服务架构及安全云盘第三次直播_ev.mp4 155.61M │ ├── 第二期C++微服务架构及安全云盘第五次直播_ev.mp4 98.02M │ └── 第二期C++微服务架构及安全云盘第一次直播_ev.mp4 125.76M ├── 【夏曹俊23737】从零开发操作系统:从加电自检到内核引导 │ ├── 【夏曹俊23805】C++加密与解密-实战区块链核心密码学-基于openssl │ │ ├── 1-2 OpenSSL3.0介绍和在windows下使用vs2019_ev.mp4 55.37M │ │ ├── 1-3 使用vs2019创建第一个openssl3.0的测试项目_ev.mp4 26.85M │ │ ├── 1-4 linux下编译openssl3.0源码并编写测试项目_ev.mp4 47.79M │ │ ├── 2-1 base16编解码原理讲解_ev.mp4 30.58M │ │ ├── 2-2 从0开始C++实现base16编码和解码_ev.mp4 76.50M │ │ ├── 2-3 Base64原理分析_ev.mp4 12.39M │ │ ├── 2-4 OpenSSL_BIO接口解析_ev.mp4 11.60M │ │ ├── 2-5 OpenSSL_BIO接口Base64编码_ev.mp4 37.45M │ │ ├── 2-6 OpenSSL_BIO接口Base64解码并解决换行问题_ev.mp4 52.61M │ │ ├── 2-7 Base58_比特币钱包地址_算法分析_ev.mp4 24.11M │ │ ├── 2-8 比特币base58源码分析并抽取函数进行测试 单项散列_消息_ev.mp4 70.90M │ │ ├── 3-1 单向散列函数章节任务说明_ev.mp4 5.60M │ │ ├── 3-2 什么是单向散列函数_ev.mp4 19.20M │ │ ├── 3-3 单项散列函数的应用场景详解和常用算法_比特币挖矿_消息认证码_ev.mp4 26.63M │ │ ├── 3-4 MD5算法原理详解_ev.mp4 29.58M │ │ ├── 3-5 OpenSSL的MD5接口调用和源码分析_ev.mp4 31.67M │ │ ├── 3-6 使用MD5_HashList验证文件完整性_定时检测文件修改_ev.mp4 48.54M │ │ ├── 3-7 比特币中Merkle可信树基于SHA1算法代码模拟_ev.mp4 69.98M │ │ ├── 3-8 SHA2原理分析和比特币挖矿模拟原理分析_ev.mp4 18.25M │ │ ├── 3-9 基于SHA256模拟比特币挖矿代码演示_ev.mp4 21.44M │ │ ├── 3-10 SHA3和国密SM3散列算法介绍_ev.mp4 16.85M │ │ ├── 3-12 消息认证码HMAC算法介绍和安全分析_ev.mp4 15.15M │ │ ├── 3-13 OpenSSL的HMAC接口演示消息认证_ev.mp4 50.99M │ │ ├── 3-14 单向散列章节总结_ev.mp4 5.81M │ │ ├── 4-1 对称分组加密算法章节介绍和课程目标_ev.mp4 7.46M │ │ ├── 4-2 对称分组加密算法概述和ECB安全问题分析_ev.mp4 24.58M │ │ ├── 4-3 通过XOR自己实现一个对称分组加密算法原理介绍_ev.mp4 7.25M │ │ ├── 4-4 通过XOR自己实现一个对称分组加密算法代码演示_ev.mp4 64.44M │ │ ├── 4-5 DES算法原理介绍_ev.mp4 7.55M │ │ ├── 4-6 OpenSSL的DES加密接口讲解和调用演示_ev.mp4 30.67M │ │ ├── 4-7 演示操纵DES的ECB模式密文_ev.mp4 42.71M │ │ ├── 4-8 使用DES的CBC算法替换ECB演示_ev.mp4 40.15M │ │ ├── 4-9 使用C++封装DES算法实现初始化和密码填充策略_ev.mp4 48.20M │ │ ├── 4-10 封装DES的ECB算法并实现了PKCS7数据填充协议_ev.mp4 39.86M │ │ ├── 4-11 封装DES_CBC加解密算法实现PKCS7填充_ev.mp4 44.72M │ │ ├── 4-17 AES算法原理介绍_ev.mp4 16.56M │ │ ├── 4-18 封装C++加密类支持AES和3DES完成初始化_ev.mp4 73.92M │ │ ├── 4-19 完成XSec封装加解密演示用AES加解密文件_ev.mp4 43.59M │ │ ├── 4-20 国密SM4介绍添加到XSec封装中并修正DES算法的填充处理_ev.mp4 30.47M │ │ ├── 4-21 测试12类对称加密算法性能测试类的初始化和测试函数_ev.mp4 47.98M │ │ ├── 4-22 完成对称加密算法性能测试并将项目移植到Linux_ev.mp4 32.46M │ │ ├── 4-23 对称分组加密算法章节总结_ev.mp4 7.69M │ │ ├── 5-1 RSA非对称加密原理介绍和密钥对生成原理分析_ev.mp4 20.61M │ │ ├── 5-2 OpenSSL的RSA秘钥对生成代码详解_ev.mp4 50.76M │ │ ├── 5-3 RSA_PKCS1_PADDING填充协议分析_ev.mp4 14.08M │ │ ├── 5-4 完成RSA公钥加密数据,并处理填充数据_ev.mp4 42.47M │ │ ├── 5-5 完成RSA私钥解密数据_ev.mp4 36.23M │ │ ├── 5-10 签名和验签原理讲解并演示rsa的签名的代码_ev.mp4 36.61M │ │ ├── 5-12 椭圆曲线原理和加解密流程分析_ev.mp4 27.03M │ │ ├── 5-13 打印支持曲线列表并选择椭圆曲线生成秘钥_ev.mp4 40.58M │ │ ├── 5-15 椭圆曲线ECDSA签名和验签原理分析_ev.mp4 11.21M │ │ ├── 5-17 ecdh椭圆曲线秘钥交换协议分析_ev.mp4 10.03M │ │ ├── 5-20 完成椭圆曲线客户端与服务端交换秘钥示例代码_ev.mp4 39.95M │ │ ├── 5-21 非对称加密章节总结_ev.mp4 3.47M │ │ ├── 6-1 安全通信SSL_TLS_OPENSSL章节介绍_ev.mp4 5.06M │ │ ├── 6-2 SSL_TLS协议介绍_ev.mp4 13.82M │ │ ├── 6-3 TLS握手协议和记录协议详解_ev.mp4 14.52M │ │ ├── 6-4 基于OpenSSL证书和秘钥的制作_ev.mp4 55.74M │ │ ├── 6-5 OpenSSL 加密SSL_TLS通信接口分析_ev.mp4 26.87M │ │ ├── 6-6 OpenSSL接口编程实例完成跨平台通信项目_ev.mp4 113.75M │ │ ├── 6-7 完成OpenSSL服务端SSL握手调用_ev.mp4 48.14M │ │ ├── 6-8 打印通信使用的协议和x509证书信息_ev.mp4 28.04M │ │ ├── 6-9 完成基于OpenSSL的安全加密通信并用抓包验证_ev.mp4 64.46M │ │ ├── 6-10 HTTPS协议交互分析和HTTP协议介绍_ev.mp4 19.37M │ │ ├── 6-11 HTTPS网站服务器代码演示_ev.mp4 26.91M │ │ ├── 6-12 课程总结_ev.mp4 6.25M │ │ └── C++加密与解密-实战区块链核心密码学-基于openssl.zip 163.10M │ ├── 【夏曹俊26869】C++11 14 17 20 多线程从原理到线程池实战 │ │ ├── 1-1 课程介绍_ev.mp4 15.33M │ │ ├── 1-2 为什么要使用多线程_第一个线程代码示例_ev.mp4 25.19M │ │ ├── 1-3 thread 对象生命周期和线程等待和分离_ev.mp4 26.46M │ │ ├── 1-4 全局函数作为线程入口分析参数传递内存操作_ev.mp4 23.17M │ │ ├── 1-5 线程函数传递指针和引用_ev.mp4 22.49M │ │ ├── 1-6 使用成员函数作为线程入口并封装线程基类接口_ev.mp4 39.77M │ │ ├── 1-7 lambda临时函数作为线程入口_ev.mp4 14.21M │ │ ├── 2-1 多线程的状态及其切换流程分析_ev.mp4 10.49M │ │ ├── 2-2 竞争状态和临界区介绍_互斥锁mutex代码演示_ev.mp4 21.37M │ │ ├── 2-3 互斥锁的坑_线程抢占不到资源原因和解决方法_ev.mp4 16.30M │ │ ├── 2-4 超时锁timed_mutex和可重入锁recursive_ev.mp4 32.76M │ │ ├── 2-5 共享锁shared_mutex解决读写问题_ev.mp4 24.21M │ │ ├── 3-1 手动实现RAII管理mutex资源_锁自动释放_ev.mp4 21.62M │ │ ├── 3-2 c++11RAII控制锁lock_guard_ev.mp4 26.66M │ │ ├── 3-3 unique_lock可临时解锁控制超时的互斥体包装器_ev.mp4 34.94M │ │ ├── 3-4 C++14shared_lock共享锁包装器_ev.mp4 12.90M │ │ ├── 3-5 c++17scoped_lock解决互锁造成的死锁问题_ev.mp4 36.76M │ │ ├── 3-6 项目案例线程通信使用互斥锁和list实现线程通信_ev.mp4 51.84M │ │ ├── 3-7 条件变量应用场景_生产者消费者信号处理步骤_ev.mp4 26.99M │ │ ├── 3-8 condition_variable代码示例读写线程同步_ev.mp4 43.84M │ │ ├── 3-9 条件变量应用线程通信解决线程退出时的阻塞问题_ev.mp4 30.22M │ │ ├── 4-1 promise和future多线程异步传值_ev.mp4 28.55M │ │ ├── 4-2 packaged_task 异步调用函数打包_ev.mp4 31.33M │ │ ├── 4-3 async创建异步线程替代thread_ev.mp4 32.90M │ │ ├── 4-4 c++多核计算分析并实现base16编码_ev.mp4 49.90M │ │ ├── 4-5 c++11实现多核base16编码并与单核性能测试对比_ev.mp4 46.51M │ │ ├── 4-6 c++17for_each多核运算示例编码base16_ev.mp4 53.24M │ │ ├── 4-7 线程池实现步骤说明_ev.mp4 19.23M │ │ ├── 5-1 完成线程池的初始化和启动_ev.mp4 23.35M │ │ ├── 5-2 完成线程池任务调度_ev.mp4 30.31M │ │ ├── 5-3 完成线程池退出并等待任务处理结束利用lambada表达式_ev.mp4 25.14M │ │ ├── 5-4 线程池中在在运行的任务数量获取使用atomic原子变量_ev.mp4 10.14M │ │ ├── 5-5 使用智能指针管理线程对象和任务对象的生命走起_ev.mp4 25.35M │ │ ├── 5-6 异步获取线程池中任务执行结果_ev.mp4 13.95M │ │ ├── 5-7 基于线程池实现音视频批量转码测试任务_ev.mp4 36.00M │ │ ├── 5-8 完成线程池案例基于ffmpeg工具多线程转码视频_ev.mp4 20.54M │ │ ├── 6-1 c++20屏障barrier实现线程协调_ev.mp4 21.37M │ │ └── 6-2 课程总结_ev.mp4 3.83M │ ├── 1-01、从零开发操作系统课程介绍_ev.mp4 18.49M │ ├── 1-02、开发环境配置与第一个启动程序_ev.mp4 38.36M │ ├── 1-03、操作系统的基础知识:CPU、内存和指令(基础理论)_ev.mp4 37.75M │ ├── 1-04、CS,DS寄存器:代码段,数据段究竟是什么?_ev.mp4 25.14M │ ├── 1-05、逻辑地址与物理地址:为什么是段+偏移(分段机制详解)_ev.mp4 24.23M │ ├── 2-01、加电自检与计算机的启动过程_ev.mp4 9.19M │ ├── 2-02、7C00解析和主引导扇区魔数_ev.mp4 20.00M │ ├── 2-03、验证性编程:引导区与BIOS下实模式编程_ev.mp4 40.03M │ ├── 2-04、实验总结:为什么可以用附加段寄存器ES不用DS数据段寄存器_ev_ev.mp4 16.16M │ ├── 2-05、CPU寄存器梳理:CS_DS_ES究竟是什么用途_ev_ev.mp4 12.25M │ ├── 2-06、CPU的寻址基础知识与栈段寄存器初解_ev_ev.mp4 16.32M │ ├── 2-07、从硬盘引导(一):硬盘原理介绍_ev_ev.mp4 17.96M │ ├── 2-08、从硬盘引导(二):MBR与loader分块_ev_ev.mp4 22.02M │ ├── 2-09、从硬盘引导(三):MBR编码完成_ev.mp4 28.67M │ ├── 2-10、从硬盘引导(四):Loader编码完成_ev.mp4 5.10M │ ├── 2-11、从硬盘引导(五):突破512字节与寄存器段寻址再认识_ev.mp4 24.02M │ ├── 3-01、保护模式入门:内核态与用户态的由来_ev.mp4 28.65M │ ├── 3-02、保护模式(一):线性地址、逻辑地址、物理地址_ev.mp4 21.17M │ ├── 3-03、保护模式(二):IA32架构、线性地址、逻辑地址、物理地址_ev.mp4 53.06M │ ├── 3-04、保护模式(三):全局描述符GDT和线性地址_ev.mp4 107.85M │ ├── 3-05、实验环境搭建:保护模式实战(一)_ev.mp4 18.18M │ ├── 3-06、jmp $再认识,GDT、选择子与寄存器匹配:保护模式实战_ev.mp4 171.78M │ ├── 3-07、突破1M的寻址:保护模式实战(三)_ev.mp4 13.50M │ ├── 3-08、多任务的由来:LDT(局部描述符表)理论与实战_ev.mp4 97.46M │ ├── 3-09、ring0和ring3的由来:内核态与用户态切换入门_ev.mp4 38.09M │ ├── 3-10、TSS解析:特权级切换实战(一)_ev.mp4 25.03M │ ├── 3-11、CPL、DPL、RPL与门的概念:特权级切换实战(二)_ev.mp4 20.02M │ ├── 3-12、调用门与权限切换:特权级切换实战(三)_ev.mp4 56.94M │ ├── 3-13、从ring0到ring3:特权级切换实战(四)_ev.mp4 90.15M │ ├── 3-14、时钟中断:进程时间片轮转的基础_ev.mp4 35.90M │ ├── 3-15、保护模式下的中断编程实战(8259A)_ev.mp4 64.48M │ ├── 3-16、时钟中断编程与本章小结_ev.mp4 31.77M │ ├── 4-01、操作系统是用C写的_ev.mp4 11.78M │ ├── 4-02、C库与操作系统:C库是建立在操作系统之上的_ev.mp4 25.54M │ ├── 4-03、内核是常驻内存的(一):kenel的内存规划由来_ev.mp4 9.68M │ ├── 4-04、图示kenel与loader的内存分布关系_ev.mp4 19.88M │ ├── 4-05、从mbr加载loader再到loader加载kernel_ev.mp4 38.18M │ ├── 4-06、用C写内核(一):elf文件格式透视_ev.mp4 24.14M │ ├── 4-07、用C写内核(二):用elf生成占位Kernel_ev.mp4 36.23M │ ├── 4-08、用C写内核(三):bochs调试出错的Kernel_ev.mp4 39.13M │ ├── 4-09、用C写内核(四):C和汇编的联合编程_ev.mp4 25.81M │ ├── 4-10、用C写内核(五):用C改写占位Kernel_ev.mp4 19.22M │ ├── 5-01、自己的操作系统系统:Tiny OS的演示_ev.mp4 7.05M │ ├── 5-02、Tiny OS的编码文件划分:C库、kernel与汇编_ev.mp4 8.83M │ ├── 5-03、C库中输入输出系统的实现:liba.asm_ev.mp4 25.49M │ ├── 5-04、C库中字符串的实现(上):print_ev.mp4 14.95M │ ├── 5-05、C库中字符串的实现(下):readtoBuf_ev.mp4 21.78M │ ├── 5-06、C扩充内核的实现:libc.c_ev.mp4 17.94M │ ├── 5-07、启动内核入口的实现:osKernel.asm_ev.mp4 5.68M │ ├── 5-08、交互实验完成_ev.mp4 30.39M │ ├── 5-09、清屏函数与内建命令clear的实现_ev.mp4 18.30M │ ├── 5-10、shell提示符与内建命令help的实现_ev.mp4 18.28M │ ├── 5-11、关机命令poweroff的实现_ev.mp4 10.70M │ ├── 5-12、时间命令time的实现——兼论_r_n_ev.mp4 34.86M │ ├── 5-13、独立内核的操作系统完成_ev.mp4 23.56M │ ├── 6-01、从实模式内核到保护模式加载_ev.mp4 76.09M │ ├── 6-02、从清屏命令再认识保护模式下的访问控制_ev.mp4 37.45M │ ├── 6-03、从cmos时间获取认识保护模式下的时钟中断_ev.mp4 26.05M │ ├── 6-04、保护模式下多任务的形式浅析_ev.mp4 14.24M │ ├── 6-05、从加电自检到保护模式加载全部完成_ev.mp4 37.41M │ └── 6-06、课程结束与展望_ev.mp4 11.72M ├── 【夏曹俊23805】C++加密与解密-实战区块链核心密码学-基于openssl │ ├── 1-2 OpenSSL3.0介绍和在windows下使用vs2019_ev.mp4 55.37M │ ├── 1-3 使用vs2019创建第一个openssl3.0的测试项目_ev.mp4 26.85M │ ├── 1-4 linux下编译openssl3.0源码并编写测试项目_ev.mp4 47.79M │ ├── 2-1 base16编解码原理讲解_ev.mp4 30.58M │ ├── 2-2 从0开始C++实现base16编码和解码_ev.mp4 76.50M │ ├── 2-3 Base64原理分析_ev.mp4 12.39M │ ├── 2-4 OpenSSL_BIO接口解析_ev.mp4 11.60M │ ├── 2-5 OpenSSL_BIO接口Base64编码_ev.mp4 37.45M │ ├── 2-6 OpenSSL_BIO接口Base64解码并解决换行问题_ev.mp4 52.61M │ ├── 2-7 Base58_比特币钱包地址_算法分析_ev.mp4 24.11M │ ├── 2-8 比特币base58源码分析并抽取函数进行测试 单项散列_消息_ev.mp4 70.90M │ ├── 3-1 单向散列函数章节任务说明_ev.mp4 5.60M │ ├── 3-2 什么是单向散列函数_ev.mp4 19.20M │ ├── 3-3 单项散列函数的应用场景详解和常用算法_比特币挖矿_消息认证码_ev.mp4 26.63M │ ├── 3-4 MD5算法原理详解_ev.mp4 29.58M │ ├── 3-5 OpenSSL的MD5接口调用和源码分析_ev.mp4 31.67M │ ├── 3-6 使用MD5_HashList验证文件完整性_定时检测文件修改_ev.mp4 48.54M │ ├── 3-7 比特币中Merkle可信树基于SHA1算法代码模拟_ev.mp4 69.98M │ ├── 3-8 SHA2原理分析和比特币挖矿模拟原理分析_ev.mp4 18.25M │ ├── 3-9 基于SHA256模拟比特币挖矿代码演示_ev.mp4 21.44M │ ├── 3-10 SHA3和国密SM3散列算法介绍_ev.mp4 16.85M │ ├── 3-12 消息认证码HMAC算法介绍和安全分析_ev.mp4 15.15M │ ├── 3-13 OpenSSL的HMAC接口演示消息认证_ev.mp4 50.99M │ ├── 3-14 单向散列章节总结_ev.mp4 5.81M │ ├── 4-1 对称分组加密算法章节介绍和课程目标_ev.mp4 7.46M │ ├── 4-2 对称分组加密算法概述和ECB安全问题分析_ev.mp4 24.58M │ ├── 4-3 通过XOR自己实现一个对称分组加密算法原理介绍_ev.mp4 7.25M │ ├── 4-4 通过XOR自己实现一个对称分组加密算法代码演示_ev.mp4 64.44M │ ├── 4-5 DES算法原理介绍_ev.mp4 7.55M │ ├── 4-6 OpenSSL的DES加密接口讲解和调用演示_ev.mp4 30.67M │ ├── 4-7 演示操纵DES的ECB模式密文_ev.mp4 42.71M │ ├── 4-8 使用DES的CBC算法替换ECB演示_ev.mp4 40.15M │ ├── 4-9 使用C++封装DES算法实现初始化和密码填充策略_ev.mp4 48.20M │ ├── 4-10 封装DES的ECB算法并实现了PKCS7数据填充协议_ev.mp4 39.86M │ ├── 4-11 封装DES_CBC加解密算法实现PKCS7填充_ev.mp4 44.72M │ ├── 4-17 AES算法原理介绍_ev.mp4 16.56M │ ├── 4-18 封装C++加密类支持AES和3DES完成初始化_ev.mp4 73.92M │ ├── 4-19 完成XSec封装加解密演示用AES加解密文件_ev.mp4 43.59M │ ├── 4-20 国密SM4介绍添加到XSec封装中并修正DES算法的填充处理_ev.mp4 30.47M │ ├── 4-21 测试12类对称加密算法性能测试类的初始化和测试函数_ev.mp4 47.98M │ ├── 4-22 完成对称加密算法性能测试并将项目移植到Linux_ev.mp4 32.46M │ ├── 4-23 对称分组加密算法章节总结_ev.mp4 7.69M │ ├── 5-1 RSA非对称加密原理介绍和密钥对生成原理分析_ev.mp4 20.61M │ ├── 5-2 OpenSSL的RSA秘钥对生成代码详解_ev.mp4 50.76M │ ├── 5-3 RSA_PKCS1_PADDING填充协议分析_ev.mp4 14.08M │ ├── 5-4 完成RSA公钥加密数据,并处理填充数据_ev.mp4 42.47M │ ├── 5-5 完成RSA私钥解密数据_ev.mp4 36.23M │ ├── 5-10 签名和验签原理讲解并演示rsa的签名的代码_ev.mp4 36.61M │ ├── 5-12 椭圆曲线原理和加解密流程分析_ev.mp4 27.03M │ ├── 5-13 打印支持曲线列表并选择椭圆曲线生成秘钥_ev.mp4 40.58M │ ├── 5-15 椭圆曲线ECDSA签名和验签原理分析_ev.mp4 11.21M │ ├── 5-17 ecdh椭圆曲线秘钥交换协议分析_ev.mp4 10.03M │ ├── 5-20 完成椭圆曲线客户端与服务端交换秘钥示例代码_ev.mp4 39.95M │ ├── 5-21 非对称加密章节总结_ev.mp4 3.47M │ ├── 6-1 安全通信SSL_TLS_OPENSSL章节介绍_ev.mp4 5.06M │ ├── 6-2 SSL_TLS协议介绍_ev.mp4 13.82M │ ├── 6-3 TLS握手协议和记录协议详解_ev.mp4 14.52M │ ├── 6-4 基于OpenSSL证书和秘钥的制作_ev.mp4 55.74M │ ├── 6-5 OpenSSL 加密SSL_TLS通信接口分析_ev.mp4 26.87M │ ├── 6-6 OpenSSL接口编程实例完成跨平台通信项目_ev.mp4 113.75M │ ├── 6-7 完成OpenSSL服务端SSL握手调用_ev.mp4 48.14M │ ├── 6-8 打印通信使用的协议和x509证书信息_ev.mp4 28.04M │ ├── 6-9 完成基于OpenSSL的安全加密通信并用抓包验证_ev.mp4 64.46M │ ├── 6-10 HTTPS协议交互分析和HTTP协议介绍_ev.mp4 19.37M │ ├── 6-11 HTTPS网站服务器代码演示_ev.mp4 26.91M │ └── 6-12 课程总结_ev.mp4 6.25M ├── 【夏曹俊24960】FFmpeg 4.3 音视频基础到工程应用-多路H265监控录放C++开发 │ ├── 视频 │ │ ├── 1-1 学习引导和章节介绍必看_ev.mp4 26.06M │ │ ├── 1-2 windows下ffmpeg源码编译-VS2019环境准备_ev.mp4 26.71M │ │ ├── 1-3 windows下ffmpeg源码编译-依赖安装_ev.mp4 36.76M │ │ ├── 1-4 windows下ffmpeg源码编译-x264源码编译_ev.mp4 22.13M │ │ ├── 1-5 windows下ffmpeg源码编译-音频fdk-aac编译_ev.mp4 22.68M │ │ ├── 1-6 windows下ffmpeg源码编译-x265源码编译_ev.mp4 16.64M │ │ ├── 1-7 windows下ffmpeg源码编译-编译4.3版本源码_ev.mp4 54.07M │ │ ├── 1-8 windows下ffmpeg源码编译项目测试和调试pdb准备_ev.mp4 52.77M │ │ ├── 1-9 Linux下ffmpeg源码编译-x264_x265_aac_ev.mp4 30.63M │ │ ├── 1-10 Linux下ffmpeg源码编译-编写测试makefile_ev.mp4 22.10M │ │ ├── 1-11 QT5.14安装和项目创建并切换不同的QT版本_ev.mp4 35.19M │ │ ├── 1-12 章节总结和ffmpeg代码调试设置_ev.mp4 14.56M │ │ ├── 2-1 学习引导和章节介绍必看_ev.mp4 15.90M │ │ ├── 2-2 RGB像素格式原理-实验QT渲染_ev.mp4 48.73M │ │ ├── 2-3 QT&SDL渲染合并两幅图像案例-需求和技术分析_ev.mp4 8.31M │ │ ├── 2-4 QT&SDL渲染合并两幅图像案例-SDL源码编译和接口分析_ev.mp4 18.79M │ │ ├── 2-5 QT&SDL渲染合并两幅图像案例-SDL2渲染RGB图像示例_ev.mp4 50.80M │ │ ├── 2-6 QT&SDL渲染合并两幅图像案例-SDL2渲染到QT窗口_ev.mp4 67.27M │ │ ├── 2-7 QT&SDL渲染合并两幅图像案例-合并图像渲染后保存到文件_ev.mp4 64.34M │ │ ├── 2-8 QT&SDL渲染YUV数据-YUV格式详解并生成YUV文件_ev.mp4 16.76M │ │ ├── 2-9 QT&SDL渲染YUV数据-播放YUV格式视频文件_ev.mp4 43.11M │ │ ├── 2-10 工厂模式封装SDL-XVideoView接口设计_ev.mp4 50.29M │ │ ├── 2-11 工厂模式封装SDL-窗口渲染器和材质的初始化_ev.mp4 84.66M │ │ ├── 2-12 工厂模式封装SDL-渲染Draw接口并测试渲染YUV420P_ev.mp4 29.47M │ │ ├── 2-13 工厂模式封装SDL-渲染画面随着窗口大小自动缩放并抗锯齿_ev.mp4 38.76M │ │ ├── 2-14 工厂模式封装SDL-资源清理接口和接收窗口退出事件_ev.mp4 57.94M │ │ ├── 2-15 章总结_代码下载编译说明和作业_ev.mp4 30.13M │ │ ├── 3-1 学习引导和章节介绍必看_ev.mp4 18.35M │ │ ├── 3-2 AVFrame结构体和相关ffmpeg接口详解_ev.mp4 24.17M │ │ ├── 3-3 测试AVFrame的空间分配和引用计数接口并测试字节对齐_ev.mp4 47.54M │ │ ├── 3-4 YUV数据转AVFrame并添加渲染接口_ev.mp4 85.48M │ │ ├── 3-5 帧率控制策略和sleep时间误差分析_ev.mp4 16.56M │ │ ├── 3-6 测试sleep和wait的精确度并实现精确控制帧率_ev.mp4 41.02M │ │ ├── 3-7 多线程控制帧率渲染AVFrame的YUV数据_ev.mp4 113.94M │ │ ├── 3-8 界面显示fps和并可设置fps_控制渲染帧率_ev.mp4 24.03M │ │ ├── 3-9 章总结_代码下载编译说明和作业_ev.mp4 12.11M │ │ ├── 4-1 学习引导和章节介绍必看_ev.mp4 11.21M │ │ ├── 4-2 sws_scale接口-像素格式转换函数分析_ev.mp4 19.43M │ │ ├── 4-3 sws_scale接口-示例YUV转换为RGBA并写入文件_ev.mp4 69.53M │ │ ├── 4-4 sws_scale接口-示例_像素格式RGBA转换为YUV_ev.mp4 46.93M │ │ ├── 4-5 多路YUV_RGB文件播放器-需求和设计说明_ev.mp4 14.87M │ │ ├── 4-6 多路YUV_RGB文件播放器-QT界面设计和打开文件处理_ev.mp4 50.45M │ │ ├── 4-7 多路YUV_RGB文件播放器-XVideoView支持多路_ev.mp4 57.20M │ │ ├── 4-8 多路YUV_RGB文件播放器-读取像素数据到AVFrame_ev.mp4 59.73M │ │ ├── 4-9 多路YUV_RGB文件播放器-支持多格式两路播放_ev.mp4 38.43M │ │ ├── 4-10 多路YUV_RGB文件播放器-多路视频播放和设置不同的帧率_ev.mp4 37.19M │ │ ├── 4-11 章总结_代码下载编译说明和作业_ev.mp4 48.13M │ │ ├── 5-1 学习引导和章节介绍必看_ev.mp4 20.73M │ │ ├── 5-2 视频编码原理概述_ev.mp4 21.09M │ │ ├── 5-3 FFMpeg编码接口和AVPacket结构体详解_ev.mp4 29.51M │ │ ├── 5-4 FFmpeg编码器获取和上下文打开_ev.mp4 51.24M │ │ ├── 5-5 完成了视频帧创建和编码_ev.mp4 58.34M │ │ ├── 5-6 完成h264和h265编码并使用VLC测试播放_ev.mp4 30.99M │ │ ├── 5-7 H264原理-宏块、帧间预测、I帧_帧内预测PB帧GOP_ev.mp4 72.27M │ │ ├── 5-8 H264原理-变换、量化、熵编码变长和算数编码CABAC分析_ev.mp4 24.94M │ │ ├── 5-9 编码参数设置-ultrafast最快和zerolatency_ev.mp4 39.84M │ │ ├── 5-10 编码参数设置-x264预设编码器preset_tune_ev.mp4 24.45M │ │ ├── 5-11 编码参数设置-ABR、CQP质量、X264和x265QP参数_ev.mp4 40.86M │ │ ├── 5-12 编码参数设置-CBR恒定比特率_CRF恒定速率因子_VBV_ev.mp4 33.15M │ │ ├── 5-13 H264码流中NALU_SPS_PPS_IDR帧的分析_ev.mp4 20.25M │ │ ├── 5-14 代码测试解析出AVPacket中的NALU类型SPS_P_ev.mp4 38.32M │ │ ├── 5-15 XEncode编码封装-上下文创建和测试代码_ev.mp4 33.47M │ │ ├── 5-16 XEncode编码封装-线程安全和支持crf参数_ev.mp4 36.05M │ │ ├── 5-17 XEncode编码封装-编码和AVFrame创建接口_ev.mp4 54.66M │ │ ├── 5-18 XEncode编码封装-解决丢帧 添加获取编码缓冲区接口_ev.mp4 24.96M │ │ ├── 5-19 章总结_代码下载编译说明_ev.mp4 9.35M │ │ ├── 6-1 学习引导和章节介绍必看_ev.mp4 19.71M │ │ ├── 6-2 FFmpeg视频解码接口详细分析_ev.mp4 21.81M │ │ ├── 6-3 从h264文件中读取AVPacket_ev.mp4 42.18M │ │ ├── 6-4 多线程软解码-基于ffmpeg接口完成视频解码_ev.mp4 26.09M │ │ ├── 6-5 多线程软解码-解码后渲染并测试多线程解码帧率_ev.mp4 36.27M │ │ ├── 6-6 硬解码-硬件GPU加速解码DXVA2并测试CPU使用率和帧率_ev.mp4 63.37M │ │ ├── 6-7 硬解码-XVideoView支持渲染硬解码NV12格式_ev.mp4 105.38M │ │ ├── 6-8 XDecode封装-重构XEncode抽象基类XCodec_ev.mp4 81.48M │ │ ├── 6-9 XDecode封装-解码支持硬解并进行播放测试_ev.mp4 31.79M │ │ ├── 6-10 硬解码不复制到内存直接渲染-原理和接口分析_ev.mp4 25.77M │ │ ├── 6-11 硬解码不复制到内存直接渲染-DXVA直接渲染实现_ev.mp4 71.76M │ │ ├── 6-12 章总结和作业要求_ev.mp4 5.77M │ │ ├── 7-1 学习引导和章节介绍必看_ev.mp4 13.08M │ │ ├── 7-2 封装分析和MP4封装格式详解_ev.mp4 25.52M │ │ ├── 7-3 FFmpeg解封装-流程和接口详解_ev.mp4 32.28M │ │ ├── 7-4 FFmpeg解封装-解出数据并区分音频视_ev.mp4 67.93M │ │ ├── 7-5 FFmpeg解封装-解封后视频解码并渲染_ev.mp4 62.78M │ │ ├── 7-6 FFmpeg重封装-流程分析和接口详解_ev.mp4 39.00M │ │ ├── 7-7 FFmpeg重封装-av_seek_frame进度控制函数_ev.mp4 15.25M │ │ ├── 7-8 FFmpeg重封装-剪切中间10秒视频并重新计算pts_dt_ev.mp4 73.33M │ │ ├── 7-9 FFmpeg重封装-完成重封装mp4文件基本代码_ev.mp4 77.91M │ │ ├── 7-10 XDemux封装-抽象出XFormat重构解封装_ev.mp4 116.24M │ │ ├── 7-11 XMux封装-封装代码重构并测试重新封装音视频文件_ev.mp4 78.33M │ │ ├── 7-12 根据输入的文件名和时间参数完成截断视频功能_ev.mp4 114.78M │ │ ├── 7-13 完成视频重编码为h265并写重新封装MP4_ev.mp4 111.99M │ │ ├── 7-14 章总结和代码说明_ev.mp4 8.04M │ │ ├── 8-1 学习引导和章节介绍必看_ev.mp4 16.04M │ │ ├── 8-2 使用VLC模拟一个rtsp服务器_ev.mp4 7.32M │ │ ├── 8-3 RTSP协议详细分析包括鉴权协议分析_ev.mp4 36.62M │ │ ├── 8-4 大华和海康相机设置和rtsp协议抓包分析_ev.mp4 105.05M │ │ ├── 8-5 ffmpeg的rtsp相关接口分析和多线程处理解封装说明_ev.mp4 12.58M │ │ ├── 8-6 完成XThread线程类的启动和安全退出_XLOG日志宏_ev.mp4 61.50M │ │ ├── 8-7 开发XDemuTask线程类使用上下文的回调函数实现超时_ev.mp4 96.14M │ │ ├── 8-8 解封装rtsp断网或摄像机重启后自动重连处理_ev.mp4 51.84M │ │ ├── 8-9 解封装解码线程责任链设计模式和线程安全的list类图设计_ev.mp4 17.38M │ │ ├── 8-10 完成责任链代码和返回智能指针类型的解封装视频参数_ev.mp4 59.57M │ │ ├── 8-11 完成解码线程初始化和并实现线程安全的XAVPacketL_ev.mp4 70.90M │ │ ├── 8-12 完成通过责任链接收解封装AVPacket数据并解码视频_ev.mp4 37.62M │ │ ├── 8-13 完成rtsp的多线程责任链解封装解码和渲染_ev.mp4 78.28M │ │ ├── 8-14 封装音视频处理线程代码初始化传递音视频参数_ev.mp4 88.84M │ │ ├── 8-15 完成相机录制重新封装处理pts计算问题_ev.mp4 113.23M │ │ ├── 8-16 章总结和代码测试本地模拟rtsp_ev.mp4 22.32M │ │ ├── 9-1 学习引导和章节介绍必看_ev.mp4 17.30M │ │ ├── 9-2 XViewer多路H265监控录放开发项目需求文档详细分_ev.mp4 47.33M │ │ ├── 9-3 XCodec封装音视频编解码和渲染的动态链接库编译和测试_ev.mp4 63.93M │ │ ├── 9-4 预览界面设计说明XViewer项目创建和配置并设置程序图_ev.mp4 47.67M │ │ ├── 9-5 XViewer窗口自定义标题_关闭_最小化按钮和窗口拖动_ev.mp4 70.95M │ │ ├── 9-6 右键菜单调整预览窗口数量1_4_9_16通过QGridL_ev.mp4 79.07M │ │ ├── 9-7 XViewer窗口布局设计和窗口最大化和恢复处理_ev.mp4 80.14M │ │ ├── 9-8 完成摄像机管理的数据的增删改模型层代码_ev.mp4 83.04M │ │ ├── 9-9 XCameraConfig持久化写入和读取文件中的摄像机_ev.mp4 33.35M │ │ ├── 9-10 完成相机配置读取和列表显示列表显示_ev.mp4 55.50M │ │ ├── 9-11 代码生成新增摄像机配置界面_并使用qss设置按钮样式_ev.mp4 58.70M │ │ ├── 9-12 完成摄像机管理的修改和删除功能_ev.mp4 61.66M │ │ ├── 9-13 101通过QListWidget拖拽实现指定播放rtsp和窗_ev.mp4 49.19M │ │ ├── 9-14 通过拖拽配置完成多窗口rtsp相机的渲染_ev.mp4 79.53M │ │ ├── 9-15 多路音视频录制模块设计说明和XCameraRecord_ev.mp4 68.62M │ │ ├── 9-16 定时创建新的视频文件并解决录制文件开发花屏问题_ev.mp4 95.47M │ │ ├── 9-17 多路相机录制界面交互功能完成_ev.mp4 179.41M │ │ ├── 9-18 回放界面设计并实现与预览界面的切换按钮_ev.mp4 66.95M │ │ ├── 9-19 自定义日历控件显示有视频日期继承QCalendarWi_ev.mp4 58.38M │ │ ├── 9-20 点击摄像机刷新日历改变有视频文件日期的背景_ev.mp4 90.40M │ │ ├── 9-21 点击视频时间列表获取视频绝对路径_ev.mp4 35.77M │ │ ├── 9-22 添加回放日历中的视频播放器_ev.mp4 65.90M │ │ ├── 9-23 完成回放视频播放器的播放速度控制_项目0.1版本完成_ev.mp4 49.51M │ │ ├── 9-24 章总结和XViewer0.1编码和准备发布版本_ev.mp4 60.40M │ │ ├── 10-1 音频核心基础声波频率_采样频率_采样大小_信噪比_多通_ev.mp4 24.34M │ │ ├── 10-2 学习引导和章节介绍必看_ev.mp4 16.04M │ │ ├── 10-3 PCM格式_音频编码分析_SDL音频播放接口介绍_ev.mp4 18.23M │ │ ├── 10-4 完成SDL播放PCM音频文件项目_ev.mp4 64.93M │ │ ├── 10-5 完成了XAudioPlay类的单件模式初始化_ev.mp4 45.88M │ │ ├── 10-6 完成XAudioPlay播放音频通过缓冲队列传递数据_ev.mp4 62.10M │ │ ├── 10-7 音频播放音量和播放速度_慢放和快放音频处理_ev.mp4 43.88M │ │ ├── 10-8 mp4中音频解码解封装手动转换平面格式并使用用SDL播_ev.mp4 176.74M │ │ ├── 10-9 音视频同步_初始化_渲染播放和时间同步协作图分析_ev.mp4 18.69M │ │ ├── 10-10 音视频播放XPlayer视频打开和线程初始化_ev.mp4 70.30M │ │ ├── 10-11 完成音视频文件多线程同步播放_ev.mp4 160.26M │ │ ├── 10-12 章总结和代码说明_ev.mp4 5.73M │ │ ├── 11-1 学习引导和章节介绍必看_ev.mp4 5.15M │ │ ├── 11-2 xviewer0.2监控工具支持音视频同步播放_ev.mp4 144.49M │ │ ├── 11-3 完成QT界面设置音视频播放速度_慢放和快放_ev.mp4 70.70M │ │ ├── 11-4 完成QT进度条显示视频播放进度_ev.mp4 82.82M │ │ ├── 11-5 完成音视频的暂停和播放_ev.mp4 102.82M │ │ ├── 11-6 完成SEEK进度条控制播放进度_ev.mp4 118.75M │ │ ├── 12-1 修正无法删除摄像机和修改线程退出函数后录制回放出错_ev.mp4 41.07M │ │ ├── 12-2 Onvif协议分析和测试工具使用_ev.mp4 56.83M │ │ ├── 12-3 gsoap的wsdl2h_vs2019支持ssl编译_ev.mp4 69.97M │ │ ├── 12-4 生成支持鉴权的onvif代码gsoap的soapcpp_ev.mp4 55.15M │ │ ├── 12-5 创建第一个test_onvif项目_ev.mp4 40.24M │ │ ├── 12-6 初始化和清理相机探测probe的soap消息头_ev.mp4 84.47M │ │ ├── 12-7 完成gsoap的onvif_discovery探测设备_ev.mp4 74.27M │ │ ├── 12-8 封装gsoap代码使用c++调用重构设备探测_ev.mp4 68.91M │ │ ├── 12-9 完成鉴权并获取onvif设备能力GetCapabili_ev.mp4 84.57M │ │ ├── 12-10 完成onvif鉴权和获取媒体信息GetProfiles_ev.mp4 48.48M │ │ ├── 12-11 完成onvif的rtsp地址获取GetStreamUr_ev.mp4 65.88M │ │ └── 12-12 基于gsoap的ffmpeg预览onvif摄像机设备_ev.mp4 46.68M │ └── 资料 │ ├── 1环境准备步骤说明VS2019控制台和msys2运行环境准备.zip.zip 130.41M │ ├── 3完成x264源码编译和安装.zip 17.87M │ ├── 4完成x265源码编译和安装.zip 47.80M │ ├── 5完成音频编码fdk-aac源码编译和安装.zip 11.38M │ ├── 6ffmpeg4.3在vs2019完成源码编译.zip 27.07M │ ├── 7第一个vs2019ffmpeg项目创建和源码pdb调试设置.zip 42.98M │ ├── 8Linux编译x264_x265_aac.zip 27.10M │ ├── 9.17最新PPT1章-5章.zip 40.58M │ ├── 9Linux编译ffmpeg4.3并编写测试程序makefile.zip 17.15M │ ├── 10QT5.14安装和项目创建并切换不同的QT版本.zip 0.00M │ ├── 11RGB像素格式原理讲解并使用QT渲染RGB数据.zip 0.01M │ ├── 12-2Onvif协议分析和测试工具使用.zip 80.08M │ ├── 12-4.zip 7.88M │ ├── 12-5.zip 7.76M │ ├── 12-6.zip 7.85M │ ├── 12-7.zip 7.83M │ ├── 12-8.zip 7.88M │ ├── 12-9.zip 9.88M │ ├── 12-10.zip 9.88M │ ├── 12-11.zip 9.85M │ ├── 12-12.zip 22.60M │ ├── 12.3.zip 92.89M │ ├── 13SDL2源码编译安装和渲染视频接口详解.zip 79.56M │ ├── 14SDL2渲染RGB数据画面定时变化.zip 0.01M │ ├── 15SDL渲染RGB数据到QT的控件中通过定时器刷新.zip 0.01M │ ├── 16合并两幅图像法使用SDL渲染并用QT保存文件.zip 0.49M │ ├── 17YUV格式详解并使用ffmpeg生成yuv文件.zip 25.26M │ ├── 18使用SDL_QT直接播放渲染YUV格式文件.zip 0.01M │ ├── 19XVideoView工厂模式封装SDL接口设计和代码实现.zip 0.01M │ ├── 20XSDL封装完成窗口渲染器和材质的初始化.zip 0.01M │ ├── 22渲染画面随着窗口大小自动缩放并解决锯齿问题.zip 0.02M │ ├── 23.1第二章总结_代码下载编译说明和作业.zip 82.49M │ ├── 23完成XSDL资源清理接口接收窗口退出事件并自动处理窗口缩放.zip 0.02M │ ├── 25测试AVFrame的空间分配引用计数接口并测试字节对齐.zip 0.01M │ ├── 26读取YUV数据到AVFrame并添加渲染AVFrame的接口.zip 0.02M │ ├── 28测试sleep和wait的精确度并实现精确控制帧率的MSleep.zip 0.01M │ ├── 29多线程控制帧率渲染AVFrame的YUV数据.zip 0.02M │ ├── 30.1第三章总结_代码下载编译说明和作业.zip 82.27M │ ├── 30渲染界面中添加显示fps和设置fps的控件完成设置渲染帧率.zip 0.02M │ ├── 32像素格式转换YUV420P转换为RGBA并写入文件.zip 0.01M │ ├── 33sws_scale像素格式转换RGBA转YUV420P.zip 0.01M │ ├── 35YUV_RGB播放器QT界面设计和打开文件处理.zip 0.02M │ ├── 36完成多路XVideoView窗口初始化并生成测试的YUV和RGB文件.zip 37.10M │ ├── 37XVideoView_Read接口读取像素数据并初始化AVFrame空间.zip 0.02M │ ├── 38完成了支持YUV和RGB格式两路视频同时播放.zip 0.02M │ ├── 39.1第四章总结_代码下载编译说明和作业.zip 82.01M │ ├── 39完成了两路视频帧率显示并能设置不同的播放帧率.zip 0.02M │ ├── 42FFmpeg编码器获取和上下文打开.zip 0.01M │ ├── 43完成了视频帧创建和编码.zip 0.01M │ ├── 44完成h264和h265编码并使用VLC测试播放.zip 0.01M │ ├── 47x264预设编码器preset_tune设置编码速度和质量.zip 5.28M │ ├── 48代码试验ultrafast最快编码和zerolatency零延时参数设定.zip 0.01M │ ├── 49ABR平均比特率CQP恒定质量X264和x265QP参数选择试验.zip 0.01M │ ├── 50CBR恒定比特率_CRF恒定速率因子_VBV代码测试.zip 0.01M │ ├── 52代码测试解析出AVPacket中的NALU类型SPS_PPS和IDR.zip 0.01M │ ├── 53XEncode编码封装完成上下文创建和测试代码.zip 0.01M │ ├── 54XEncode添加线程安全锁并添加支持crf参数的设置.zip 0.01M │ ├── 55XEncode完成编码和AVFrame创建接口封装.zip 0.01M │ ├── 56.1第五章总结_代码下载编译说明.zip.zip 102.75M │ ├── 56XEncode解决丢帧添加获取编码缓冲区接口_编码封装完成.zip 0.01M │ ├── 58av_parser_parse2从h264文件中截取AVPacket.zip 1.98M │ ├── 59基于ffmpeg接口完成视频解码.zip 0.01M │ ├── 60完成解码视频渲染并测试多线解码帧率.zip 1.99M │ ├── 61完成硬件GPU加速解码DXVA2并测试CPU使用率和帧率.zip 1.99M │ ├── 62修改XVideoView支持渲染硬解码NV12格式数据.zip 1.99M │ ├── 63重构XEncode添加基类XCodec并完成XDecode封装.zip 1.99M │ ├── 64-3_DXVA硬解到GPU不复制内存渲染代码实现.zip 1.99M │ ├── 64.4第六章总结和作业要求.zip 0.25M │ ├── 64完成XDecode解码支持硬解并做了播放测试.zip 1.99M │ ├── 66FFmpeg解封装流程和接口详解.zip 0.00M │ ├── 67FFmpeg解封装代码示例并区分音频视频包.zip 0.01M │ ├── 68完成解封装后对视频进行解码和渲染代码.zip 0.02M │ ├── 71完成重封装mp4文件测试基本代码.zip 0.01M │ ├── 72重封装剪切中间10秒视频并重新计算pts_dts.zip 0.01M │ ├── 73完成XFormat和XDemux重构解封装并测试接口.zip 0.01M │ ├── 74完成封装代码重构XMux并测试重新封装音视频文件.zip 0.01M │ ├── 75根据输入的文件名和时间参数完成截断视频功能.zip 0.01M │ ├── 76完成视频重编码为h265并写重新封装MP4.zip 0.03M │ ├── 77.1使用VLC模拟一个rtsp服务器.zip 0.00M │ ├── 80完成XThread线程类的启动和安全退出_XLOG日志宏代码.zip 0.03M │ ├── 81开发XDemuTask线程类使用上下文的回调函数实现超时退出AVIOInterruptCB.zip 0.04M │ ├── 82解封装rtsp断网或摄像机重启后自动重连处理.zip 0.04M │ ├── 84完成责任链代码和返回智能指针类型的解封装视频参数.zip 0.04M │ ├── 85完成解码线程初始化和并实现线程安全的XAVPacketLis.zip 0.04M │ ├── 86完成通过责任链接收解封装AVPacket数据并解码视频.zip 0.04M │ ├── 87完成rtsp的多线程责任链解封装解码和渲染.zip 0.04M │ ├── 88封装音视频处理线程代码初始化传递音视频参数.zip 0.04M │ ├── 89完成相机录制重新封装处理pts计算问题.zip 0.04M │ ├── 91XCodec封装音视频编解码和渲染的动态链接库编译和测试.zip 0.04M │ ├── 92预览界面设计说明XViewer项目创建和配置并设置程序图标.zip 0.02M │ ├── 93XViewer窗口自定义标题_关闭_最小化按钮和窗口拖动的鼠标事件处理.zip 0.21M │ ├── 94XViewer窗口布局设计和窗口最大化和恢复处理.zip 0.21M │ ├── 95右键菜单调整预览窗口数量1_4_9_16通过QGridLayout.zip 0.21M │ ├── 96完成摄像机管理的数据的增删改模型层代码.zip 0.21M │ ├── 97XCameraConfig持久化写入和读取文件中的摄像机配置.zip 0.21M │ ├── 98完成相机配置读取和列表显示列表显示.zip 0.21M │ ├── 99代码生成新增摄像机配置界面_并使用qss设置按钮样式.zip 0.21M │ ├── 100完成摄像机管理的修改和删除功能.zip 0.21M │ ├── 101通过QListWidget拖拽实现指定播放rtsp和窗口.zip 0.22M │ ├── 102通过拖拽配置完成多窗口rtsp相机的渲染.zip 0.22M │ ├── 103多路音视频录制模块设计说明和XCameraRecord录制测试.zip 0.22M │ ├── 104定时创建新的视频文件并解决录制文件开发花屏问题.zip 0.26M │ ├── 105多路相机录制界面交互功能完成.zip 0.26M │ ├── 106回放界面设计并实现与预览界面的切换按钮.zip 0.22M │ ├── 107自定义日历控件显示有视频日期继承QCalendarWidget.zip 0.22M │ ├── 108点击摄像机刷新日历改变有视频文件日期的背景.zip 0.22M │ ├── 109点击视频时间列表获取视频绝对路径.zip 0.22M │ ├── 110添加回放日历中的视频播放器.zip 0.26M │ ├── 111完成回放视频播放器的播放速度控制_项目0.1版本完成.zip 0.27M │ ├── 114完成SDL播放PCM音频文件项目.zip 9.40M │ ├── 115完成了XAudioPlay类的单件模式初始化.zip 0.01M │ ├── 116完成XAudioPlay播放音频通过缓冲队列传递数据.zip 0.01M │ ├── 117音频播放音量和播放速度_慢放和快放音频处理.zip 9.41M │ ├── 118mp4中音频解码解封装手动转换平面格式并使用用SDL播放.zip 14.79M │ ├── 120音视频播放XPlayer视频打开和线程初始化.zip 0.05M │ ├── 121完成音视频文件多线程同步播放.zip 0.05M │ ├── 122xviewer0.2监控工具支持音视频同步播放.zip 0.28M │ ├── 123完成QT界面设置音视频播放速度_慢放和快放.zip 0.10M │ ├── 124完成QT进度条显示视频播放进度.zip 0.28M │ ├── 125完成音视频的暂停和播放.zip 0.28M │ ├── 126完成SEEK进度条控制播放进度.zip 0.28M │ ├── 127修正无法删除摄像机和修改线程退出函数后局.zip 0.29M │ ├── 第七章代码_包含库和头文件.zip 105.36M │ ├── 第八章代码_包含库和头文件.zip 106.80M │ ├── 第九章代码XView0.1包含发布文件.zip 134.50M │ ├── 第十章音频代码.zip 121.51M │ └── XViewer开发需求v0.1.pdf 0.54M ├── 【夏曹俊26869】C++11 14 17 20 多线程从原理到线程池实战 │ ├── 1-1 课程介绍_ev.mp4 15.33M │ ├── 1-2 为什么要使用多线程_第一个线程代码示例_ev.mp4 25.19M │ ├── 1-3 thread 对象生命周期和线程等待和分离_ev.mp4 26.46M │ ├── 1-4 全局函数作为线程入口分析参数传递内存操作_ev.mp4 23.17M │ ├── 1-5 线程函数传递指针和引用_ev.mp4 22.49M │ ├── 1-6 使用成员函数作为线程入口并封装线程基类接口_ev.mp4 39.77M │ ├── 1-7 lambda临时函数作为线程入口_ev.mp4 14.21M │ ├── 2-1 多线程的状态及其切换流程分析_ev.mp4 10.49M │ ├── 2-2 竞争状态和临界区介绍_互斥锁mutex代码演示_ev.mp4 21.37M │ ├── 2-3 互斥锁的坑_线程抢占不到资源原因和解决方法_ev.mp4 16.30M │ ├── 2-4 超时锁timed_mutex和可重入锁recursive_ev.mp4 32.76M │ ├── 2-5 共享锁shared_mutex解决读写问题_ev.mp4 24.21M │ ├── 3-1 手动实现RAII管理mutex资源_锁自动释放_ev.mp4 21.62M │ ├── 3-2 c++11RAII控制锁lock_guard_ev.mp4 26.66M │ ├── 3-3 unique_lock可临时解锁控制超时的互斥体包装器_ev.mp4 34.94M │ ├── 3-4 C++14shared_lock共享锁包装器_ev.mp4 12.90M │ ├── 3-5 c++17scoped_lock解决互锁造成的死锁问题_ev.mp4 36.76M │ ├── 3-6 项目案例线程通信使用互斥锁和list实现线程通信_ev.mp4 51.84M │ ├── 3-7 条件变量应用场景_生产者消费者信号处理步骤_ev.mp4 26.99M │ ├── 3-8 condition_variable代码示例读写线程同步_ev.mp4 43.84M │ ├── 3-9 条件变量应用线程通信解决线程退出时的阻塞问题_ev.mp4 30.22M │ ├── 4-1 promise和future多线程异步传值_ev.mp4 28.55M │ ├── 4-2 packaged_task 异步调用函数打包_ev.mp4 31.33M │ ├── 4-3 async创建异步线程替代thread_ev.mp4 32.90M │ ├── 4-4 c++多核计算分析并实现base16编码_ev.mp4 49.90M │ ├── 4-5 c++11实现多核base16编码并与单核性能测试对比_ev.mp4 46.51M │ ├── 4-6 c++17for_each多核运算示例编码base16_ev.mp4 53.24M │ ├── 4-7 线程池实现步骤说明_ev.mp4 19.23M │ ├── 5-1 完成线程池的初始化和启动_ev.mp4 23.35M │ ├── 5-2 完成线程池任务调度_ev.mp4 30.31M │ ├── 5-3 完成线程池退出并等待任务处理结束利用lambada表达式_ev.mp4 25.14M │ ├── 5-4 线程池中在在运行的任务数量获取使用atomic原子变量_ev.mp4 10.14M │ ├── 5-5 使用智能指针管理线程对象和任务对象的生命走起_ev.mp4 25.35M │ ├── 5-6 异步获取线程池中任务执行结果_ev.mp4 13.95M │ ├── 5-7 基于线程池实现音视频批量转码测试任务_ev.mp4 36.00M │ ├── 5-8 完成线程池案例基于ffmpeg工具多线程转码视频_ev.mp4 20.54M │ ├── 6-1 c++20屏障barrier实现线程协调_ev.mp4 21.37M │ └── 6-2 课程总结_ev.mp4 3.83M ├── 【夏曹俊28411】《C++ 11 14 17 20内存管理-指针、智能指针和内存池基础与提升》 │ ├── 课件 │ │ ├── 1第一个指针程序-详解指针代码.zip 0.00M │ │ ├── 3各种内存空间-堆_栈_全局地址代码演示.zip 0.00M │ │ ├── 5数组的堆栈空间初始化和c 11的for遍历.zip 0.01M │ │ ├── 6图解栈中二维数组的初始化和遍历.zip 0.01M │ │ ├── 7图解堆中两种二维数组空间分配设置和清理.zip 0.01M │ │ ├── 8void指针和c 11的指针类型转换.zip 0.00M │ │ ├── 9常量指针与指针常量 (1).zip 0.00M │ │ ├── 9常量指针与指针常量.zip 0.00M │ │ ├── 11unique_ptr的指针和数组多种初始化方式分析.zip 0.00M │ │ ├── 12unique_ptr智能指针和数组的访问.zip 0.00M │ │ ├── 13unique_ptr重置和移动内存资源.zip 0.01M │ │ ├── 14unique_ptr释放所有权和自定义空间删除方法.zip 0.01M │ │ ├── 16shared_ptr共享智能指针演示初始化和空间清理.zip 0.01M │ │ ├── 17shared_ptr共享指针定制删除函数和指向同一个对象的不同成员.zip 0.01M │ │ ├── 18weak_ptr解决shared_ptr循环引用内存泄漏问题.zip 0.01M │ │ ├── 20c 17内存池synchronized_pool_resource空间申请源码分析.zip 0.01M │ │ ├── 21c 17内存池空间释放代码分析.zip 0.01M │ │ ├── 22重载operator的new和delete包括数组.zip 0.00M │ │ ├── 23类成员操作符new重载和放置placement_new.zip 0.01M │ │ ├── 24分配器allocator详解c 17_20新特性说明allocator_traits.zip 0.01M │ │ ├── 25自定义allocator演示vector和list分配器.zip 0.01M │ │ ├── 26未初始化内存复制分析uninitialized_copy.zip 0.01M │ │ ├── 27c 1720construct_atdestroy对象构造和销毁.zip 0.01M │ │ ├── 28指针作为函数参数传递-使用模板传递数组.zip 0.01M │ │ ├── 29智能指针作为函数的参数和返回值unique_ptr.zip 0.01M │ │ ├── 30使用string作为函数参数内存的输入和输出.zip 0.01M │ │ ├── 31使用vector传递内存并接收函数返回的内存空间.zip 0.01M │ │ ├── 32限制栈中创建对象和调用delete销毁对象.zip 0.00M │ │ ├── 34多继承中的二义性和虚基类内存问题分析.zip 0.01M │ │ ├── 35虚函数原理和内存分析.zip 0.00M │ │ ├── 36虚函数表指针直接访问函数的代码实验.zip 0.01M │ │ ├── 38项目创建和XCrypt加密代码完成.zip 3.06M │ │ ├── 39XCrypt数据解密接口完成.zip 3.34M │ │ ├── 40完成线程基类XIOStream和XReadTask线程读取文件.zip 0.01M │ │ ├── 41完成XData使用内存池管理数据内存.zip 0.02M │ │ ├── 42完成责任链读取文件的数据传递到加密线程.zip 0.02M │ │ ├── 43完成XCryptTask加密线程任务处理.zip 0.02M │ │ ├── 44完成XWriteTask写入加密数据.zip 0.02M │ │ ├── 45完成文件的加密和加密测试.zip 0.02M │ │ ├── 46完成XFileCrypt实现组合加密和解密文件.zip 0.02M │ │ ├── 47使用c 17的目录访问接口完成批量文件的加密和解密工具.zip 6.60M │ │ └── C 11141720内存管理-指针、智能指针和内存池从基础到实战.pdf 1.50M │ ├── 01cpp内存课程介绍_ev.mp4 20.80M │ ├── 02第一个指针程序-详解指针代码_ev.mp4 22.05M │ ├── 03图示进程的内存空间划分分析代码区_ev.mp4 8.12M │ ├── 04各种内存空间-堆_栈_全局地址代码演示_ev.mp4 15.30M │ ├── 05图解堆栈空间分配对应的指针代码_ev.mp4 3.97M │ ├── 06数组的堆栈空间初始化和c++11的for遍历_ev.mp4 44.97M │ ├── 07图解栈中二维数组的初始化和遍历_ev.mp4 28.69M │ ├── 08图解堆中两种二维数组空间分配设置和清理_ev.mp4 22.00M │ ├── 09void指针和c++11的指针类型转换_ev.mp4 14.81M │ ├── 10常量指针与指针常量_ev.mp4 9.10M │ ├── 11示例指针操作二维数组对opencv灰度图做反色_ev.mp4 23.39M │ ├── 12unique_ptr的指针和数组多种初始化方式分析_ev.mp4 20.18M │ ├── 13unique-ptr智能指针和数组的访问_ev.mp4 18.63M │ ├── 14unique-ptr重置和移动内存资源_ev.mp4 12.83M │ ├── 15unique-ptr释放所有权和自定义空间删除方法_ev.mp4 28.53M │ ├── 16图解shared-ptr共享智能指针原理分析_ev.mp4 8.66M │ ├── 17shared-ptr共享智能指针演示初始化和空间清理_ev.mp4 16.41M │ ├── 18shared-ptr共享指针定制删除函数和指向同一个_ev.mp4 14.34M │ ├── 19weak-ptr解决shared-ptr循环引用内存_ev.mp4 26.20M │ ├── 20指针作为函数参数传递-使用模板传递数组_ev.mp4 31.42M │ ├── 21智能指针作为函数的参数和返回值unique-ptr_ev.mp4 16.11M │ ├── 22使用string作为函数参数内存的输入和输出_ev.mp4 22.55M │ ├── 23使用vector传递内存并接收函数返回的内存空间_ev.mp4 19.81M │ ├── 24重载operator的new和delete包括数组_ev.mp4 23.80M │ ├── 25类成员操作符new重载和放置placement-ne_ev.mp4 27.75M │ ├── 26分配器allocator详解c++17-20新特性说_ev.mp4 26.58M │ ├── 27自定义allocator演示vector和list分_ev.mp4 52.22M │ ├── 28未初始化内存复制分析uninitialized-co_ev.mp4 19.16M │ ├── 29c++1720construct对象构造和销毁_ev.mp4 15.28M │ ├── 30限制栈中创建对象和调用delete销毁对象_ev.mp4 12.27M │ ├── 31多继承中的二义性和虚基类内存问题分析_ev.mp4 13.55M │ ├── 32虚函数原理和内存分析_ev.mp4 13.55M │ ├── 33虚函数表指针直接访问函数的代码实验_ev.mp4 19.47M │ ├── 34c++17内存池memory-resource内存池_ev.mp4 11.84M │ ├── 35c++17内存池synchronized空间申请源码_ev.mp4 32.40M │ ├── 36c++17内存池空间释放代码分析_ev.mp4 19.73M │ ├── 37基于内存池批量加解密程序项目需求和类图分析_ev.mp4 11.24M │ ├── 38项目创建和XCrypt加密代码完成_ev.mp4 60.79M │ ├── 39XCrypt数据解密接口完成_ev.mp4 18.79M │ ├── 40完成线程基类XIOStream和XReadTask线_ev.mp4 31.20M │ ├── 41完成XData使用内存池管理数据内存_ev.mp4 26.02M │ ├── 42完成责任链读取文件的数据传递到加密线程_ev.mp4 49.52M │ ├── 43完成XCryptTask加密线程任务处理_ev.mp4 35.92M │ ├── 44完成XWriteTask写入加密数据_ev.mp4 17.62M │ ├── 45完成文件的加密和加密测试_ev.mp4 15.59M │ ├── 46完成XFileCrypt实现组合加密和解密文件_ev.mp4 19.17M │ └── 47使用c++17的目录访问接口完成批量文件的加密和解密_ev.mp4 24.58M ├── 【夏曹俊7559】C++与Lua联合编程实战(提高c++程序员开发效率) │ ├── 1-01、课程介绍(为什么用c++和Lua_ev_ev.mp4 31.06M │ ├── 1-02、环境准备和编译_ev_ev.mp4 49.49M │ ├── 1-03、第一个c++和lua结合的程序_ev.mp4 21.28M │ ├── 2-01、Lua变量和字符串处理_ev.mp4 57.09M │ ├── 2-02、Lua条件判断和循环语句_ev.mp4 51.89M │ ├── 2-03、Lua表和函数语法_ev.mp4 62.23M │ ├── 3-01、Lua调用c++函数传递普通参数_ev.mp4 27.65M │ ├── 3-02、Lua调用c++函数传递普通数组参数_ev.mp4 18.21M │ ├── 3-03、Lua调用c++函数传递表和参数类型检查_ev.mp4 28.25M │ ├── 3-04、Lua调用c++函数获取返回值_ev.mp4 19.26M │ ├── 4-01、c++给lua传递变量和访问lua的全局变量_ev_ev.mp4 18.71M │ ├── 4-02、c++调用lua给lua传递表和访问lua的表_ev_ev.mp4 28.64M │ ├── 4-03、c++调用lua函数(基础调用_ev_ev.mp4 17.35M │ ├── 4-04、C++调用Lua函数错误显示和Lua堆栈清理_ev_ev.mp4 7.96M │ ├── 4-05、C++调用Lua函数传递参数_ev_ev.mp4 10.07M │ ├── 4-06、C++调用Lua函数的错误处理_ev_ev.mp4 18.02M │ ├── 4-07、c++调用lua函获取返回表_ev_ev.mp4 13.89M │ ├── 5-01、Lua&MFC项目建立并初始化_ev_ev.mp4 39.00M │ ├── 5-02、Lua和MFC结合值接口开放_ev_ev.mp4 44.50M │ ├── 5-03、Lua&MFC项目完成和课程总结_ev_ev.mp4 24.14M │ ├── 5-04、课程总结_ev_ev.mp4 3.57M │ └── 【夏曹俊】C++与Lua联合编程实战(提高c++程序员开发效率).zip 2.60M ├── 【夏曹俊8059】C++实战手把手教您用ffmpeg和QT开发播放器实战视频课程 │ ├── 1-01、音视频基础知识mpeg4封装格式音视频编码格式讲解_ev.mp4 19.23M │ ├── 1-01、音视频基础知识mpeg4封装格式音视频编码格式讲解_ev_ev (1).mp4 18.61M │ ├── 1-01、音视频基础知识mpeg4封装格式音视频编码格式讲解_ev_ev.mp4 18.61M │ ├── 1-01、音视频基础知识mpeg4封装格式音视频编码格式讲解_ev_ev_ev.mp4 18.51M │ ├── 1-02、音视频解封装和解码原理分析_ev.mp4 36.75M │ ├── 1-02、音视频解封装和解码原理分析_ev_ev (1).mp4 36.14M │ ├── 1-02、音视频解封装和解码原理分析_ev_ev.mp4 36.14M │ ├── 1-02、音视频解封装和解码原理分析_ev_ev_ev.mp4 35.97M │ ├── 1-03、图形像素格式RGB和YUV格式分析.mp4 21.09M │ ├── 1-03、图形像素格式RGB和YUV格式分析_ev (1).mp4 25.81M │ ├── 1-03、图形像素格式RGB和YUV格式分析_ev.mp4 25.81M │ ├── 1-03、图形像素格式RGB和YUV格式分析_ev_ev.mp4 25.81M │ ├── 1-04、PCM音频采样率_通道_planar等格式参数分析.mp4 13.71M │ ├── 1-04、PCM音频采样率_通道_planar等格式参数分析_ev (1).mp4 17.33M │ ├── 1-04、PCM音频采样率_通道_planar等格式参数分析_ev.mp4 17.33M │ ├── 1-04、PCM音频采样率_通道_planar等格式参数分析_ev_ev.mp4 17.23M │ ├── 1-05、MP4标准和h264格式的NAL的GOP分析.mp4 23.89M │ ├── 1-05、MP4标准和h264格式的NAL的GOP分析_ev (1).mp4 29.26M │ ├── 1-05、MP4标准和h264格式的NAL的GOP分析_ev.mp4 29.26M │ ├── 1-05、MP4标准和h264格式的NAL的GOP分析_ev_ev.mp4 29.02M │ ├── 2-01、QT开发环境下载和安装.mp4 20.19M │ ├── 2-01、QT开发环境下载和安装_ev (1).mp4 24.80M │ ├── 2-01、QT开发环境下载和安装_ev.mp4 24.80M │ ├── 2-01、QT开发环境下载和安装_ev_ev.mp4 24.67M │ ├── 2-02、QtSDK路径目录文件说明_ev (1).mp4 20.51M │ ├── 2-03、创建第一个qtcreator项目_并确定文件和目录的作用.mp4 24.50M │ ├── 2-03、创建第一个qtcreator项目_并确定文件和目录的作用_ev.mp4 27.20M │ ├── 2-04、在linux中安装qt及其依赖并编写测试项目_ev.mp4 16.41M │ ├── 2-05、windows下qtcreator调试环境安装配置使用_ev.mp4 21.96M │ ├── 2-06、vs创建QT项目并详细介绍vs项目设置_ev.mp4 26.59M │ ├── 2-07、VS设置qt库版本导出为qtcreator项目_ev.mp4 19.84M │ ├── 3-01、windows下ffmpeg库下载安装方法和库文件说明_ev_ev.mp4 14.55M │ ├── 3-02、VS2015配置开发显示ffmpeg配置信息测试项目_ev_ev.mp4 29.05M │ ├── 3-03、VS2015配置32位和64位通用的ffmpeg测试程序_ev_ev.mp4 22.02M │ ├── 3-04、QtCreator配置32位和64位windows通用_ev_ev.mp4 31.08M │ ├── 3-05、项目移植到ubuntu中并配置跨平台的pro文件_ev_ev.mp4 46.00M │ ├── 4-01、ffmpeg SDK软硬解码流程说明_ev_ev.mp4 10.34M │ ├── 4-02、ffmpeg音视频解封装用到的函数和结构体详解_ev_ev.mp4 17.85M │ ├── 4-03、avformat_open_input函数详解_ev_ev.mp4 16.68M │ ├── 4-04、初始化解封装使用avformat_open_input打开_ev_ev.mp4 38.32M │ ├── 4-05、AVFormatContext结构分析_ev_ev.mp4 11.32M │ ├── 4-06、avformat_close_input清理封装上下文_ev_ev.mp4 15.91M │ ├── 4-07、avformat_find_stream_info探测封装_ev_ev.mp4 18.05M │ ├── 4-08、AVStream和AVCodecParameters分析_ev_ev.mp4 33.16M │ ├── 4-09、通过遍历获取AVStream音频流信息并打印参数_ev_ev.mp4 23.41M │ ├── 4-10、通过遍历和av_find_best_stream方法获取视频_ev_ev.mp4 44.84M │ ├── 4-11、av_read_frame读取帧数据函数分析和产生的空间问题_ev_ev.mp4 12.10M │ ├── 4-12、AVPacket结构解析空间申请-初始化-复制-引用计数函数_ev_ev.mp4 19.65M │ ├── 4-13、av_seek_frame改变播放进度函数详解_ev_ev.mp4 17.14M │ ├── 4-14、av_read_frame和av_seek_frame代码示_ev_ev.mp4 49.87M │ ├── 5-01、AVCodecContext解码上下文初始化讲解_ev.mp4 16.88M │ ├── 5-02、音视频解码上下文创建配置和打开avcodec_open2打开_ev.mp4 33.66M │ ├── 5-03、AVFrame格式解析和空间处理函数_ev.mp4 16.36M │ ├── 5-04、avcodec_send_packet解码函数_ev.mp4 12.53M │ ├── 5-05、avcodec_receive_frame完成音视频解码代码_ev.mp4 27.96M │ ├── 5-06、sws_getContext和sws_scale像素格式_ev.mp4 24.10M │ ├── 5-07、sws_getContext像素格式上下文初始化代码演示_ev.mp4 26.83M │ ├── 5-08、sws_scale像素格式转换代码演示_ev.mp4 15.34M │ ├── 5-09、音频重采样SwrContext格式和swr_convert_ev.mp4 9.26M │ ├── 5-10、swr_init音频重采样上下文初始化和swr_conver_ev.mp4 31.35M │ ├── 6-01、Qt音频播放接口QAudioOutput详解_ev.mp4 19.67M │ ├── 6-02、Qt播放音频代码演示(源码)_ev.mp4 23.46M │ ├── 6-03、Qt的opengl编程分析及QOpenGLWidget使用_ev.mp4 14.18M │ ├── 6-04、顶点和片元作色器原理讲解和yuv转rgb的glsl代码讲解_ev.mp4 50.06M │ ├── 6-05、创建和显示材质glTexImage2D_ev.mp4 14.36M │ ├── 6-06、建QtOpengl项目窗口控件重载QOpenGLWidget_ev.mp4 26.23M │ ├── 6-07、shader代码并用QGLShaderProgram载入(源_ev.mp4 36.76M │ ├── 6-08、写入顶点和材质坐标glVertexAttribPointer_ev.mp4 20.65M │ ├── 6-09、完成材质的初始化和显存和内存空间分配glTexImage2D_ev.mp4 27.68M │ ├── 6-10、完成对yuv文件使用OpenGLShader播放(源码)_ev.mp4 39.72M │ ├── 7-01、面向对象的五大原则_ev.mp4 20.01M │ ├── 7-02、XPlay2.0项目类图分析_ev.mp4 23.70M │ ├── 7-03、XDemu类Open接口开发并测试打开本地文件_ev.mp4 47.07M │ ├── 7-04、XDemu类Read接口开发测试并分析内存泄露(源码)_ev.mp4 24.55M │ ├── 7-05、AVCodecParameters音视频参数获取和复制(源码_ev.mp4 23.10M │ ├── 7-06、av_seek_frameXDemu类Seek接口和清理关闭_ev.mp4 29.80M │ ├── 7-07、XDecode音视频解码器开关清理avcodec_open2_ev.mp4 35.61M │ ├── 7-08、XDecode的音视频解码Send和Recv接口开发并测试_ev.mp4 36.51M │ ├── 7-09、XVideoWidget初始化接口完成并测试调用(源码)_ev.mp4 39.63M │ ├── 7-10、XVideoWidget显示完成并添加测试线程完成视频图像_ev.mp4 44.83M │ ├── 8-01、XResample音频重采样Open和Close接口完成-源_ev.mp4 21.67M │ ├── 8-02、XResample接口完成并添加测试代码(源码)_ev.mp4 33.44M │ ├── 8-03、XAudioPlay音频播放接口Open和Close接口完成_ev.mp4 36.29M │ ├── 8-04、XAudioPlay音频接口完成并测试音频播放成功(源码)_ev.mp4 20.30M │ ├── 8-05、XAudioThread打开音频解码、重采样、播放成功(源码_ev.mp4 28.83M │ ├── 8-06、XAudioThread缓冲队列Push完成_ev.mp4 18.23M │ ├── 8-07、XAudioThread完成功能并编写测试代码(源码)_ev.mp4 25.54M │ ├── 8-08、XVideoThread视频解码线程和显示接口完成并测试(源_ev.mp4 49.47M │ ├── 8-09、XDemuxThread的Open接口完成_ev.mp4 26.37M │ ├── 8-10、XDemuxThread音视频播放测试完成(源码)_ev.mp4 20.99M │ ├── 9-01、音视频同步策略分析并计算出当前音频播放的pts_ev.mp4 38.58M │ ├── 9-02、测试播放rtmp香港卫视直播解决视频显示的行对齐问题(源码)_ev.mp4 27.71M │ ├── 9-03、通过界面选择打开视频文件(源码)_ev.mp4 36.36M │ ├── 9-04、抽象出XDecodeThread类添加Push和Pop函数_ev.mp4 51.07M │ ├── 9-05、XDecodeThread添加Clear清理音视频缓冲(源)_ev.mp4 16.43M │ ├── 9-06、模块添加Close关闭线程和清理资源解决程序退出会宕掉bug_ev.mp4 28.28M │ ├── 9-07、使用VS的诊断工具查看内存泄漏问题并修正音频播放线程内存泄漏_ev.mp4 16.91M │ ├── 9-08、使用QSlider进度条显示播放的进度_ev.mp4 27.68M │ ├── 9-09、窗口尺寸变化和双击全屏播放视频(源码)_ev.mp4 17.59M │ ├── 9-10、各个模块添加暂停功能SetPause完成音视频播放暂停(源码_ev.mp4 59.27M │ ├── 9-11、完成了Seek视频进度跳转到关键帧位置(源码)_ev.mp4 36.74M │ ├── 9-12、完成了音视频Seek封装功能_ev.mp4 33.26M │ ├── 9-13、重构XDemuxThread和XDecode ff解耦合_ev.mp4 45.69M │ ├── 9-14、重载XSlider解决滑动条拖动bug支持点击滑动条转到位置_ev.mp4 22.34M │ ├── 9-15、系统移植到ubuntu的linux64位环境(课程全部源码)_ev.mp4 49.77M │ ├── 10-01、课程介绍_ev.mp4 9.29M │ ├── 10-02、QT开发环境准备_ev.mp4 31.95M │ ├── 10-03、ffmpeg介绍和开发环境准备_ev.mp4 37.97M │ ├── 10-04、学习方法说明和课程代码下载演示_ev.mp4 4.57M │ ├── 10-05、ubuntu下安装qt5.8并编译安装ffmpeg_ev.mp4 40.02M │ ├── 11-01、2.1ffmpeg打开视频文件_ev.mp4 38.75M │ ├── 11-02、2.2ffmpeg读取视频帧_ev.mp4 56.75M │ ├── 11-03、2.3打开ffmpeg的视频解码器.mp4 17.13M │ ├── 11-03、2.3打开ffmpeg的视频解码器_ev.mp4 19.15M │ ├── 11-04、2.4ffmpeg视频解码并分析H264压缩算法.mp4 25.21M │ ├── 11-04、2.4ffmpeg视频解码并分析H264压缩算法_ev.mp4 28.99M │ ├── 11-05、2.5打开ffmpeg格式转换和缩放器.mp4 28.42M │ ├── 11-05、2.5打开ffmpeg格式转换和缩放器_ev.mp4 31.53M │ ├── 11-07、2.7重构封装FFmpeg类完成打开和关闭视频接口.mp4 33.06M │ ├── 11-07、2.7重构封装FFmpeg类完成打开和关闭视频接口_ev.mp4 38.16M │ ├── 11-08、2.8重构FFmpeg读取视频帧接口_ev.mp4 19.72M │ ├── 11-09、2.9重构ffmpeg解码接口_ev.mp4 28.32M │ ├── 11-10、2.10重构封装FFmpeg缩放接口_ev.mp4 23.13M │ ├── 12-01、3.1基于QT的播放器界面绘制_ev.mp4 23.04M │ ├── 12-02、3.2通过QT显示转码后的RGB数据_ev.mp4 42.39M │ ├── 12-03、.3创建解码线程控制播放速度_ev.mp4 38.44M │ ├── 12-04、3.4通过QT打开外部视频_ev.mp4 17.91M │ ├── 13-01、4.1视频总时间显示_ev.mp4 17.46M │ ├── 13-02、4.2视频播放的当前时间显示_ev.mp4 21.02M │ ├── 13-03、4.3进度条显示播放进度_ev.mp4 12.21M │ ├── 13-04、4.4进度条拖动控制播放位置_ev.mp4 40.24M │ ├── 13-05、4.5控制视频的播放和暂停_ev.mp4 37.66M │ ├── 13-06、4.6视频显示和窗口大小同步变化_ev.mp4 40.09M │ ├── 13-07、4.7重载QT滑动条点击控制播放进度_ev.mp4 15.88M │ ├── 14-01、5.1QT音频库介绍和示例_ev.mp4 17.43M │ ├── 14-02、5.2QT音频播放类封装_ev.mp4 13.65M │ ├── 14-03、5.3QT音频播放的启动和停止接口实现_ev.mp4 12.99M │ ├── 14-04、5.4QT音频播放暂停和缓冲写入接口实现]_ev.mp4 10.15M │ ├── 14-05、5.5ffmpeg音频解码器打开_ev.mp4 26.44M │ ├── 14-06、5.6ffmpeg音频解码_ev.mp4 14.93M │ ├── 14-07、5.7ffmpeg音频重采样标准化音频的输出格式_ev.mp4 49.90M │ ├── 14-08、5.8完成音视频的播放_ev.mp4 39.48M │ ├── 14-09、5.9通过多线程和缓冲队列实现音视频同步_ev.mp4 25.86M │ ├── 14-10、将XPLay播放器项目移植到ubuntu下并修正出现的声音问题_ev.mp4 42.27M │ ├── 15-01、6.1代码下载说明_ev.mp4 4.88M │ ├── 15-02、6.2课程总结_ev.mp4 12.73M │ └── 【夏曹俊】C++实战手把手教您用ffmpeg和QT开发播放器实战视频课程.zip 294.05M ├── 【夏曹俊8175】VC++Windows多线程实战图片编辑器视频课程 │ ├── 1-01、课程简介_ev_ev.mp4 12.22M │ ├── 1-02、VS2013配置说明_ev_ev.mp4 21.52M │ ├── 1-03、VS2013项目文件讲解_ev.mp4 6.92M │ ├── 1-04、VS+QT开发环境准备_ev.mp4 32.58M │ ├── 1-05、多线程编程基础知识_ev.mp4 9.26M │ ├── 2-01、WindowsAPI创建线程_ev.mp4 13.94M │ ├── 2-02、使用C++封装线程类_ev.mp4 15.01M │ ├── 2-03、多线程处理10亿大小的数组_ev.mp4 31.47M │ ├── 2-04、将线程类编入DLL库中并演示使用_ev.mp4 35.56M │ ├── 2-05、线程的挂起和恢复_ev.mp4 17.99M │ ├── 2-06、线程同步临界区调用_ev.mp4 28.36M │ ├── 2-07、临界区使用C++类封装_ev.mp4 18.27M │ ├── 2-08、通过命名互斥量控制程序只能运行一个实例_ev.mp4 10.64M │ ├── 2-09、C++11线程类和互斥类_ev.mp4 16.90M │ ├── 2-10、使用C++11线程和互斥类实现多线程购票_ev_ev.mp4 12.70M │ ├── 3-01、多线程图片编辑器项目说明_ev_ev.mp4 4.90M │ ├── 3-02、建立设置QT项目的并设计完界面_ev_ev.mp4 35.80M │ ├── 3-03、打开外部图片并使用QT显示_ev_ev.mp4 31.31M │ ├── 3-04、单线程完成图片亮度设置_ev_ev.mp4 32.68M │ ├── 3-05、创建图片处理线程_ev_ev.mp4 20.66M │ ├── 3-06、开启多线程完成亮度设置_ev_ev.mp4 45.57M │ ├── 3-07、控制滑动条显示图片处理进度_ev_ev.mp4 27.47M │ ├── 3-08、显示图片多线程亮度设置所耗费的时间_ev_ev.mp4 8.04M │ └── VC++Windows多线程实战图片编辑器视频课程.zip 0.16M ├── 【夏曹俊8237】零基础学会在Linux上编译调试C++项目视频课程 │ ├── 1-01、课程介绍_ev_ev.mp4 4.81M │ ├── 1-02、VMWare虚拟机安装_ev_ev.mp4 11.56M │ ├── 1-03、Ubuntu系统在虚拟机中安装_ev.mp4 16.46M │ ├── 1-04、Ubuntu系统在虚拟机中安装1_ev.mp4 16.60M │ ├── 1-05、远程访问Linux_Openssh安装_ev.mp4 21.61M │ ├── 1-06、Ubuntu网络配置_ev.mp4 22.41M │ ├── 1-07、通过共享在windows上直接编辑Linux代码_ev.mp4 32.99M │ ├── 2-01、Linux_GCC介绍_ev.mp4 4.52M │ ├── 2-02、Linux_GCC参数设置_ev.mp4 17.72M │ ├── 2-03、GCC多文件编译_ev.mp4 12.63M │ ├── 2-04、Linux静态编译_ev.mp4 7.05M │ ├── 2-05、Linux动态库编译和调用_ev.mp4 7.72M │ ├── 3-01、GDB介绍和list指令_ev.mp4 27.83M │ ├── 3-02、GDB设置取消断点和单步调试_ev.mp4 14.60M │ ├── 3-03、GDB打印和设置内存变量_ev.mp4 7.65M │ ├── 3-04、GDB常用指令总结_ev.mp4 10.44M │ ├── 3-05、程序宕掉后通过gdb查看出错信息(core dump)_ev.mp4 9.46M │ ├── 4-01、Makfile介绍_ev_ev.mp4 5.52M │ ├── 4-02、编写第一个Makefile(修改音视频不同步)_ev_ev.mp4 11.15M │ ├── 4-03、Makefile文件包含的五部分内容_ev_ev.mp4 6.67M │ ├── 4-04、编写多文件并包含动态链接库的Makefile_ev_ev.mp4 35.91M │ ├── 4-05、编写运行引用了so动态库程序的脚本_ev_ev.mp4 5.27M │ ├── 4-06、Makefile优化添加变量_ev_ev.mp4 12.50M │ ├── 4-07、Makefile优化添加清理代码块_ev_ev.mp4 4.46M │ ├── 4-08、Makefile优化使用自动变量_ev_ev.mp4 16.74M │ ├── 4-09、Makefile编写安装和卸载_ev_ev.mp4 7.13M │ ├── 5-01、实战介绍并创建自定义socket动态库项目_ev_ev.mp4 11.90M │ ├── 5-02、封装并创建socket函数_ev_ev.mp4 18.57M │ ├── 5-03、绑定bind端口开始监听连接并完成代码编译_ev_ev.mp4 24.95M │ ├── 5-04、创建测试自定义socket库的项目_ev_ev.mp4 11.79M │ ├── 5-05、完成accept接收浏览器的连接请求_ev_ev.mp4 20.40M │ ├── 5-06、Recv浏览器发送http头信息并打印_ev_ev.mp4 7.69M │ └── 【夏曹俊】零基础学会在Linux上编译调试C++项目视频课程.zip 0.20M ├── 【夏曹俊8486】C++socket网络编程大全实战http服务器(支持php)视频课程 │ ├── 1-01、课程内容介绍_ev_ev.mp4 48.28M │ ├── 1-02、学习方法说明和课程代码下载演示_ev_ev.mp4 5.10M │ ├── 1-03、TCPIP协议分层讲解_ev.mp4 10.43M │ ├── 1-04、网络包抓包分析_ev.mp4 15.19M │ ├── 1-05、在windows和Linux系统之间配置共享_ev.mp4 31.81M │ ├── 2-01、系统socket库介绍_ev.mp4 8.89M │ ├── 2-02、windows上加载socket库_ev.mp4 11.56M │ ├── 2-03、在windows平台创建socket_ev.mp4 15.10M │ ├── 2-04、移植到Linux并设置单进程创建socket的数量_ev.mp4 31.66M │ ├── 3-01、TCP协议特点讲解_ev.mp4 5.97M │ ├── 3-02、TCP协议头和窗口分析_ev.mp4 9.97M │ ├── 3-03、创建TCPServer设置服务器信息并讲解网络字节序_ev.mp4 16.11M │ ├── 3-04、bind端口_ev.mp4 8.46M │ ├── 3-05、listen开始监听_ev.mp4 9.11M │ ├── 3-06、accept读取用户的连接信息_ev.mp4 9.31M │ ├── 3-07、取出连接客户端IP地址和端口号_ev.mp4 15.77M │ ├── 3-08、服务端recv客户端发送数据_ev.mp4 9.09M │ ├── 3-09、服务端循环接收客户端数据_ev.mp4 14.60M │ ├── 3-10、服务端回应send客户端数据_ev.mp4 10.55M │ ├── 3-11、Tcpserver开启多线程并发处理_ev.mp4 31.96M │ ├── 3-12、Tcpserver移植到windows_ev.mp4 8.63M │ ├── 4-01、创建XTcp类接口_ev.mp4 12.74M │ ├── 4-02、封装socket和bind接口_ev.mp4 9.57M │ ├── 4-03、封装跨平台accpet和close接口_ev.mp4 10.97M │ ├── 4-04、封装跨平台send和recv接口_ev.mp4 10.77M │ ├── 4-05、XTcp类在windows中测试_ev.mp4 18.28M │ ├── 4-06、XTcp类在Linux中的测试_ev.mp4 7.30M │ ├── 4-07、创建XTcp动态dll链接库项目_ev.mp4 25.60M │ ├── 4-08、测试XTcp的dll动态链接库_ev.mp4 16.78M │ ├── 4-09、创建XTcp动态so链接库项目(Linux)_ev.mp4 11.50M │ ├── 4-10、测试XTcp的so动态链接库_ev.mp4 23.39M │ ├── 5-01、创建tcpclient项目_ev.mp4 8.11M │ ├── 5-02、tcp三次握手协议详解_ev.mp4 6.05M │ ├── 5-03、完成XTcp库connect函数封装_ev.mp4 16.21M │ ├── 5-04、移植到Linux并测试与服务端通信_ev.mp4 10.27M │ ├── 5-05、tcp编程总结_ev.mp4 3.93M │ ├── 6-01、Windows中设置socket阻塞和非阻塞_ev.mp4 20.31M │ ├── 6-02、Linux中设置socket阻塞和非阻塞_ev.mp4 20.94M │ ├── 6-03、通过select实现connect的跨平台超时处理_ev.mp4 29.57M │ ├── 6-04、并发测试工具ab使用讲解_ev.mp4 8.40M │ ├── 6-05、epoll高并发多路复用讲解_ev.mp4 4.59M │ ├── 6-06、通过epoll接收用户连接_ev.mp4 17.72M │ ├── 6-07、基于epoll的高性能服务端开发和高并发测试_ev.mp4 34.77M │ ├── 7-01、http协议详解通过抓包和telnet模拟分析_ev.mp4 33.10M │ ├── 7-02、Xhttp项目创建接受浏览器请求_ev.mp4 21.66M │ ├── 7-03、响应浏览器的页面请求完成http的响应协议_ev.mp4 20.16M │ ├── 7-04、通过正则表达式分析浏览器请求_ev.mp4 30.41M │ ├── 7-05、获取请求文件大小并生成http协议头_ev.mp4 21.84M │ ├── 7-06、发送用户请求的页面和图片_ev.mp4 20.17M │ ├── 7-07、完成http1.1协议并移植到windows_ev_ev.mp4 14.56M │ ├── 7-08、通过正则表达式获取请求页面文件后缀php_ev_ev.mp4 25.23M │ ├── 7-09、调用php-cgi完成php脚本解析_ev_ev.mp4 19.78M │ ├── 7-10、完成php脚本解析并返回给浏览器_ev_ev.mp4 16.37M │ ├── 7-11、支持给php传递基于URLGET变量_ev_ev.mp4 21.30M │ ├── 7-12、封装XhttpServer对外接口类_ev_ev.mp4 19.21M │ ├── 7-13、封装XHttpClient处理单个请求的接口_ev_ev.mp4 17.36M │ ├── 7-14、封装http协议响应类XHttpResponse_ev_ev.mp4 27.45M │ ├── 7-15、完成Xhttp封装移植到linux解决中断问题_ev_ev.mp4 36.98M │ ├── 8-01、UDP协议讲解_ev_ev.mp4 9.25M │ ├── 8-02、创建UDPserver监听端口_ev_ev.mp4 21.77M │ ├── 8-03、recvfrom接受客户端数据_ev_ev.mp4 12.49M │ ├── 8-04、sendto客户端和服务端互相发送数据_ev_ev.mp4 23.81M │ ├── 8-05、UDPclient和Server移植到linux_ev_ev.mp4 19.14M │ ├── 8-06、UDP广播包发送接收_ev_ev.mp4 19.46M │ ├── 9-01、syslog项目介绍linux系统日志配置_ev_ev.mp4 7.36M │ ├── 9-02、创建xsyslog在动态库中封装udp类_ev_ev.mp4 21.86M │ ├── 9-03、封装UDP的recv和send_ev_ev.mp4 24.77M │ ├── 9-04、使用UDP接收Linux日志_ev_ev.mp4 11.68M │ ├── 9-05、使用正则表达式分析syslog日志并告警用户非法登录_ev_ev.mp4 14.27M │ └── 【夏曹俊】C++socket网络编程大全实战http服务器(支持php)视频课程.zip 20.55M └── 【夏曹俊8934】c++实战学习OpenCV3.2+QT5+ffmpeg实战开发视频编辑器视频教程 ├── 1-1、课程介绍_ev.mp4 33.36M ├── 1-2、opencv源码在windows下载编译安装_ev.mp4 15.04M ├── 1-3、Ubuntu下编译opencv源码_ev.mp4 20.21M ├── 1-4、windows 上创建opencv示例项目编译并执行._ev_ev.mp4 21.90M ├── 1-5、ubuntu上创建opencv示例项目makefile编译并执行_ev_ev.mp4 14.94M ├── 1-6、QT开发环境下载、项目创建、代码结构介绍_ev_ev.mp4 25.71M ├── 1-7、课程代码下载说明_ev_ev.mp4 4.55M ├── 2-1、OpenCV Mat类型分析源码介绍、空间创建和释放_ev_ev.mp4 19.66M ├── 2-2、遍历和修改连续的OpenCV Mat图像空间_ev_ev.mp4 20.07M ├── 2-3、使用opencv接口实现运行记时函数用来分析执行效率_ev_ev.mp4 17.35M ├── 2-4、遍历不连续的OpenCV Mat空间_ev_ev.mp4 12.10M ├── 2-5、通过OpenCV ptr模板函数遍历Mat并测试其性能_ev_ev.mp4 16.75M ├── 2-6、通过OpenCV at函数遍历Mat并捕获异常_ev_ev.mp4 17.02M ├── 2-7、通过迭代器遍历Mat并总结遍历方法_ev_ev.mp4 10.70M ├── 2-8、QT自定义opengl的Widget绘制Mat_ev_ev.mp4 41.26M ├── 3-1、通过ROI感兴趣区域来裁剪图像_ev_ev.mp4 14.16M ├── 3-2、RGB、YUV、GRAY像素格式介绍opencv像素格式转换cvtColor接口讲解_ev_ev.mp4 10.03M ├── 3-3、手动实现转换灰度图并与opencv提供的函数做性能对比_ev_ev.mp4 34.75M ├── 3-4、通过OpenCV阈值函数threshold实现图像的二值化_ev_ev.mp4 18.62M ├── 3-5、通过对Mat遍历修改图像亮度和对比度与convertTo性能对比_ev_ev.mp4 31.27M ├── 3-6、图像尺寸调整算法介绍并手动实现近邻算法_ev_ev.mp4 31.23M ├── 3-7、调用opencv的resize使用近邻算法并与自定义算法比较_ev_ev.mp4 13.43M ├── 3-8、图像尺寸调整双线程插值算法讲解和性能测试_ev_ev.mp4 24.14M ├── 3-9、高斯金字塔和拉普拉斯金字塔调整图像尺寸详解_ev_ev.mp4 22.03M ├── 3-10、实现两幅图像混合blending_ev_ev.mp4 15.44M ├── 3-11、图像旋转和镜像_ev_ev.mp4 12.44M ├── 3-12、通过ROI实现图像并排合并_ev_ev.mp4 29.70M ├── 4-1、OpenCV VideoCapture打开摄像头接口讲解和源码分析_ev_ev.mp4 12.09M ├── 4-2、OpenCV VideoCapture打开视频流接口讲解和源码分析_ev_ev.mp4 15.35M ├── 4-3、VideoCapture release关闭和空间释放源码分析_ev_ev.mp4 8.20M ├── 4-4、OpenCV read读取一帧视频接口讲解和源码分析_ev_ev.mp4 18.58M ├── 4-5、使用OpenCV VideoCapture播放视频示例_ev_ev.mp4 28.35M ├── 4-6、获取视频和相机的属性并分析获取视频属性的源码_ev_ev.mp4 29.55M ├── 4-7、使用opencv实现视频播放位置跳转_ev_ev.mp4 21.37M ├── 4-8、通过VideoWrite的open创建视频文件并分析源码_ev_ev.mp4 33.38M ├── 4-9、通过VideoWrite的write写入视频文件并分析源码_ev_ev.mp4 22.97M ├── 4-10、以h264格式录制并预览摄像机视频代码演示_ev_ev.mp4 24.11M ├── 5-1、使用ffmpeg工具实现音频抽取、剪切和与视频合并_ev_ev.mp4 25.56M ├── 6-1、编辑器的需求分析和最终实现的功能介绍_ev_ev.mp4 15.67M ├── 6-2、项目类图介绍和类功能讲解_ev_ev.mp4 9.30M ├── 6-3、基于QT系统界面设计详解_ev_ev.mp4 10.41M ├── 6-4、实战项目环境搭建、项目创建和配置_ev_ev.mp4 18.41M ├── 6-5、完成视频编辑器播放界面并完成绘制视频widget重载_ev_ev.mp4 32.12M ├── 6-6、详解通过qss完成界面风格设置,设置按钮圆角和渐变颜色_ev_ev.mp4 11.71M ├── 6-7、通过qt界面打开外部视频并完成打开失败的界面提示_ev_ev.mp4 52.71M ├── 6-8、使用opencv读取并解码视频通过信号槽机制发出绘制信号_ev_ev.mp4 32.24M ├── 6-9、解码并使用播放视频,分析并解决QImage图像数据不连续问题_ev_ev.mp4 65.49M ├── 6-10、视频播放器进度条(QSlider)显示播放进度_ev_ev.mp4 40.74M ├── 6-11、通过QSlider滑动条拖动完成视频播放位置跳转_ev_ev.mp4 38.66M ├── 6-12、调整视频亮度对比度1完成XImagePro类_ev_ev.mp4 30.51M ├── 6-13、调整视频亮度对比度2完成XFilter类_ev_ev.mp4 36.50M ├── 6-14、调整视频亮度对比度3完成界视频结果显示_ev_ev.mp4 49.19M ├── 6-15、视频的导出1接口调用搭建和界面实现完成_ev_ev.mp4 41.65M ├── 6-16、视频导出2功能实现_ev_ev.mp4 55.39M ├── 6-17、完成播放暂停并使用qss设置播放暂停按钮样式效果_ev_ev.mp4 44.36M ├── 6-18、视频图像旋转并导出_ev_ev.mp4 39.02M ├── 6-19、视频上下左右镜像_ev_ev.mp4 18.01M ├── 6-20、视频图像旋转并导出_ev_ev.mp4 39.66M ├── 6-21、通过图像金字塔调整视频尺寸_ev_ev.mp4 43.23M ├── 6-22、通过ROI裁剪视频画面_ev_ev.mp4 46.06M ├── 6-23、转换为灰度图视频并导出_ev_ev.mp4 47.47M ├── 6-24、视频添加水印_ev_ev.mp4 63.65M ├── 6-25、视频融合1-完成了打开第二个视频源_ev_ev.mp4 39.22M ├── 6-26、视频融合2-完成了融合和导出._ev_ev.mp4 36.66M ├── 6-27、两路视频的横向合并为一个视频_ev_ev.mp4 49.35M ├── 6-28 音频类的抽取接口开发和测试_ev.mp4 23.02M ├── 6-29、完成视频中音频的的合并导出_ev_ev.mp4 43.33M ├── 6-30、完成了视频的开始结束位置剪辑音频未处理_ev_ev.mp4 50.27M ├── 6-31、完成了视频剪辑包含音频剪辑_ev_ev.mp4 37.84M └── 【夏曹俊】c 实战学习OpenCV3.2 QT5 ffmpeg实战开发视频编辑器视频教程.zip 56.83M
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)