Net/C#/C语言

  • C++编程FFMpeg实时美颜直播推流实战 课程目录: ├─1. 课程介绍和基础知识 │ 1. 介绍 │ 2. 直播推流流程分析讲解 │ 3. 直播rtmp协议分析 │ ├─2. 直播服务器讲解和配置 │ 1. 直播服务器介绍crtmpserver编译运行 │ 2. 下载ffmpeg工具推流并使用功能vlc拉流播放测试 │ 3. nginx-rtmp源码下载、编译运行 │ 4. nginx-rtmp直播和直播状态监听配置并使用ffplay播放直播流 │ ├─3. FFMpegSDK解封和推流 │ 1. ffmpegSDK开发环境准备,第一个ffmpeg项目创建 │ 2. 初始化封装和网络库打开音视频流并打印调试信息 │ 3. 完成输出音视频流配置信息,使用ffmpeg新版本属性替换旧版本 │ 4. 打开rtmp输出读取文件音视频帧 │ 5. AVPacket的pts运算并完成帧推送使用vlc测试 │ 6. 根据AVPacket的pts控制推流速度_使用浏览器flash播放直播流 │ 7. 推流基于rtsp协议的大华海康相机 │ ├─4. OpencvSDK基础 │ 1. opencv源码在windows下载编译安装 │ 2. windows 上创建opencv示例项目编译并执行 │ 3. VideoCapture打开摄像头接口讲解和源码分析 │ 4. 遍历修改连续的Mat图像空间 │ 5. 读取一帧视频接口讲解和源码分析,分析读取解码和颜色转换过程 │ ├─5. 视频采集编码推流和类封装 │ 1. opencv播放rtsp海康摄像头和播放系统摄像头 │ 2. 基于opencv采集rtsp流并使用异常处理失败流程 │ 3. 像素格式转换(RGBToYUV)上下文创建配置和清理 │ 4. rgb转yuv空间分配和转换函数调用 │ 5. 查找编码器并创建编码器上下文 │ 6. 编码器参数配置并打开编码器 │ 7. 视频帧编码并设置pts │ 8. 创建封装器添加视频AVStream并设置参数 │ 9. 打开推流IO,发送封装头,计算pts完成帧推流 │ 10. XMediaEndcode工厂生产访问创建,ffmpeg库初始化 │ 11. 完成InitScale初始化像素格式转换接口 │ 12. 完成RGBToYUV接口封装并重构代码 │ 13. 完成视频编码器初始化InitVideoCodec接口封装 │ 14. 完成了视频编码接口并重构代码 │ 15. 创建XRtmp接口类和工厂方法完成封装器初始化和IO、封装头发送、视频帧发送接口 │ ├─6. 音频录制编码推流和类封装 │ 1. QT5开发环境准备 │ 2. 音频基础知识音频参数分析 │ 3. QT音频录制接口讲解并编写录制音频程序 │ 4. 音频重采样上下文创建和配置 │ 5. 音频重采样空间分配并完成重采样 │ 6. 音频编码器创建和参数设置 │ 7. 音频的pts运算音频数据编码测试 │ 8. 完成音频推流并测试 │ 9. 音频重采样XMediaEncode重采样接口封装代码重构 │ 10. 封装音频编码器设置接口重构视频编码器接口 │ 11. 完成音频编码接口封装和代码重构 │ 12. 完成音频推流接口XRtmp封装重构音频推流 │ ├─7. 音视频同步编码推流处理 │ 1. 封装音频XAudioRecord初始化和关闭接口 │ 2. 完成音频录制接口,录制缓冲队列处理 │ 3. 封装视频录制接口完成初始化和关闭接口 │ 4. XDataThread数据处理线程类创建并实现. │ 5. XAudioRecord集成数据基类重构 │ 6. 加入视频编码器和流 │ 7. 完成音视频推流封装处理未同步 │ 8. 音频推流同步策略分析 │ 9. 音视频同步时间计算代码分析第一部分 │ 10. 音视频同步二解决音频有相同pts情况 │ 11. 音视频同步三完成同步 │ └─8. XRtmpStreamer项目完成(界面和美颜) 1. 磨皮双边滤波算法参数说明 2. 双边滤波磨皮算法调用并测试性能 3. 直播框架添加图像过滤XFilter接口并实现双边滤波磨皮类 4. 直播框架添加美颜磨皮 5. 项目框架架构(类图)讲解 6. 完成了XController音视频录制模块初始化 7. 完成XController中的编码封装推流模块初始化 8. XController推流数据线程完成 9. QT直播推流项目完成界面设计 10. 完成了qt项目直播推流
    • 586
  • C++游戏服务器开发视频教程 课程目录: ├─100-详解12 聊天室服务器02 网络库asio 14_recv.mkv ├─101-详解13 聊天室服务器对应的客户端 网络库asio 15_recv.mkv ├─102-详解14 聊天室服务器对应的客户端2 网络库asio 16_recv.mkv ├─103-详解15 消息协议的设计(原始时代的C结构01) 网络库asio 17_recv.mkv ├─104-详解16 消息协议的设计(原始时代的C结构02) 网络库asio 18_recv.mkv ├─105-详解17 消息协议的设计(超越原始的结构体,序列化c++的类01) 网络库asio 19_recv.mkv ├─106-详解18 消息协议的设计(超越原始的结构体,序列化c++的类02) 网络库asio 20_recv.mkv ├─107:详解19 消息协议的设计(使用简单易的json 01) 网络库asio 21.mp4 ├─108: 详解20 消息协议的设计(效率和可读性的结合使用protobuf 01) 网络库asio 22.mp4 ├─109: 详解21 消息协议的设计(效率和可读性的结合使用protobuf 02) 网络库asio 23.mp4 ├─110:详解22 消息协议的设计(效率和可读性的结合使用protobuf 03) 网络库asio 24.mp4 ├─111:详解23 asio多线程01 网络库asio 25.mp4 ├─112:详解24 asio多线程02 网络库asio 26.mp4 ├─113:详解25 asio多线程03 网络库asio 27.mp4 ├─114:详解26 asio多线程04 网络库asio 28.mp4 ├─115:详解27 asio多线程05 网络库asio 29.mp4 ├─116: 杂项 日志.mp4 ├─117:杂项 async.mp4 ├─118:杂项 lua结合c++ 01.mp4 ├─119:杂项 lua结合c++ 01.mp4 ├─11:伯克利socketAPI第一部分(socket C语言的接口的介绍).mp4 ├─120:杂项 signal等 以及最终的结语.mp4 ├─121:补充内容 cmake工具在linux平台下面的用法和示例.mp4 ├─12:伯克利socket API第二部分(最简单的服务器和对应的客户端C语言的实现).mp4 ├─14:C++语言的历史第一部分.mp4 ├─15:C++语言历史第二部分.mp4 ├─16:安装Linux Ubuntu 14.04虚拟机(准备工作).mp4 ├─17:安装Linux Ubuntu 14.04虚拟机(安装).mp4 ├─18:服务器开发需要用到的部分shell命令(第一部分).mp4 ├─19:服务器开发需要用到的部分shell命令(第二部分).mp4 ├─2-课程概述.mp4 ├─20:服务器开发需要用到的部分shell命令(第三部分).mp4 ├─21:服务器开发需要用到的部分shell命令(第四部分).mp4 ├─22:简易VIM教程(初步,存活状态).mp4 ├─23:简易VIM教程(初步,比存活更进一步).mp4 ├─24:简易VIM教程(初步,又进一步).mp4 ├─25:简易VIM教程(初步,继续进步).mp4 ├─26:scp 和 简易VIM教程.mp4 ├─27:深入学习c++(准备).mp4 ├─28:深入学习c++(关键字 第一部分).mp4 ├─29:深入学习c++(关键字 第二部分).mp4 ├─3-IP详解第一部分.mp4 ├─30:深入学习c++(关键字 第三部分).mp4 ├─31:深入学习c++(关键字 第四部分).mp4 ├─32:深入学习c++(关键字 第五部分).mp4 ├─33:深入学习c++(关键字 第六部分).mp4 ├─34:深入学习c++(关键字 第七部分).mp4 ├─35:深入学习c++(类 为什么要用前置声明).mp4 ├─36: 深入学习c++(类 三个基本原则).mp4 ├─37:深入学习c++(类 c++11后三个基本原则变成了五个基本原则).mp4 ├─38:深入学习c++(类 绝对不要在析构函数里面抛出异常).mp4 ├─39:深入学习c++(类 构造函数失败应该抛出异常).mp4 ├─40:深入学习c++(类 虚函数遇到构造析构就退化了).mp4 ├─41:深入学习c++(类 重新审视auto).mp4 ├─42:深入学习c++(类 左值引用和右值引用(不考虑模板)).mp4 ├─43:深入学习c++(类 构造函数和析构函数的经典应用 智能指针 前因).mp4 ├─44:深入学习c++(类 stdshared_ptr 接口 常规使用).mp4 ├─45:深入学习c++(类 stdshared_ptr 用weak_ptr打破循环引用).mp4 ├─46:深入学习c++(类 stdshared_ptr 用enable_shared_from_this从this转换到shared_ptr).mp4 ├─47:深入学习c++(类 stdunique_ptr 使用智能指针默认的选择,除非要共享).mp4 ├─48:深入学习c++(类 使用智能指针需要注意的几个“坑”).mp4 ├─49:深入学习c++(lambda函数, 简单介绍).mp4 ├─5-IP详解第二部分.mp4 ├─50:深入学习c++(STL之容器,概述).mp4 ├─51:深入学习c++(STL之容器,容器保存的是什么).mp4 ├─52:深入学习c++(STL之容器,容器的通用接口).mp4 ├─53:深入学习c++(STL之容器,stdarray).mp4 ├─54:深入学习c++(STL之容器,stdvector).mp4 ├─55:深入学习c++(STL之容器,stddeque).mp4 ├─56:深入学习c++(STL之容器,stdlist).mp4 ├─57:深入学习c++(STL之容器,stdforward_list).mp4 ├─58:智能指针的一个陷阱(大家实际中应该避免这个坑).mp4 ├─59:深入学习c++(STL之容器,stdset).mp4 ├─6-TCP详解第一部分(介绍 + 工作原理 + 头部详解).mp4 ├─60-深入学习c++(STL之容器,stdset 第二部分)_recv.mkv ├─61-深入学习c++(STL之容器,stdmap)_recv.mkv ├─62-深入学习c++(STL之容器,unordered map set)_recv.mkv ├─63-多线程编程,游戏服务器的基础,简介_recv.mkv ├─64-多线程编程,一种简单的应用,divide and conquer_recv.mkv ├─65-阶段答疑(由学员朋友遇到的面试题展开的分析《构造与析构》)_recv.mkv ├─66-多线程编程,当线程间需要共享非const的资源,(问题引出)_recv.mkv ├─67-多线程编程,(thread的构造和新问题)_recv.mkv ├─68-多线程编程,(thread 和原子操作变量类型)_recv.mkv ├─69-多线程编程,(临界区 mutex)_recv.mkv) ├─7-TCP详解第二部分(状态与连接详解).mp4 ├─70-多线程编程,(临界区 mutex) 2_recv.mkv ├─71-多线程编程,(临界区 mutex) 3_recv.mkv ├─72-多线程编程,thread的两种“死法”_recv.mkv ├─73-多线程编程,thread的间的交互 1_recv.mkv ├─74-多线程编程,thread的间的交互 2_recv.mkv ├─75-多线程编程,thread的间的交互 3_recv.mkv ├─76-多线程编程,thread的间的交互 4_recv.mkv ├─77-Windows下原生API 用IOCP编写一个简易的服务器模型 1_recv.mkv ├─78-Windows下原生API 用IOCP编写一个简易的服务器模型 2_recv.mkv ├─79-Windows下原生API 用IOCP编写一个简易的服务器模型 3_recv.mkv ├─8-TCP详解第三部分(断开以及传送数据详解).mp4 ├─80-Windows下原生API 用IOCP编写一个简易的服务器模型 4_recv.mkv ├─81:Windows下原生API 用IOCP编写一个简易的服务器模型 5.mp4 ├─82:Windows下原生API 用IOCP编写一个简易的服务器模型 6.mp4 ├─83:中期测试视频.mp4 ├─84:boost库中的网络库asio 01.mp4 ├─85:boost库中的网络库asio 02.mp4 ├─86:前篇 中期测试解答.mp4 ├─87:中篇 中期测试解答.mp4 ├─88:后篇 中期测试解答.mp4 ├─89:例子详解01 boost库中的网络库asio 03.mp4 ├─9-TCP详解04(用wireshark工具查看TCP连接和断开和TCP杂项).mp4 ├─90:例子详解02 捎带c++黑暗面 boost库中的网络库asio 04.mp4 ├─91:详解03 lambda的本质 boost库中的网络库asio 05.mp4 ├─92:详解04 boost库中的网络库asio 06.mp4 ├─93:详解05 boost库中的网络库asio 07.mp4 ├─94-详解06 同步阻塞的客户端 boost库中的网络库asio 08_recv.mkv ├─95-详解07时间服务器网络库asio09_recv.mkv ├─96-详解08 异步时间服务器 网络库asio 10_recv.mkv ├─97-详解09 Echo服务器 网络库asio 11_recv.mkv ├─98-详解10 Echo服务器对应的客户端 网络库asio 12_recv.mkv ├─99-详解11 聊天室服务器01 网络库asio 13_recv.mkv ├─资源 │ ├─Lua程序设计第二版.pdf │ ├─learn.zip │ ├─windowsIocp工程.rar
    • 491
  • 小码哥C++学院-C语言进阶篇视频教程 目录 ├─C语言综合提高.pdf ├─day1 │ ├─code.zip- │ ├─pic │ │ ├─二级指针.png │ │ ├─函数的压栈与出栈.png │ │ ├─函数的压栈与存储.png │ │ ├─无标题.png │ │ ├─递归函数的压栈与出栈.png │ ├─vide │ │ ├─01内存与数据类型.wmv │ │ ├─01进阶篇介绍.wmv │ │ ├─03类型转化.wmv │ │ ├─04经典习题讲解.wmv │ │ ├─05进程空间开题篇.wmv │ │ ├─10数组复习与提高.wmv │ │ ├─7命令行参数上.wmv │ │ ├─8续上-进程空间数据分布.wmv │ │ ├─9函数的压栈与出栈.wmv ├─day2 │ ├─code.zip │ ├─video: │ │ ├─1回顾与提高.wmv │ │ ├─2二维数组本质剖析.wmv │ │ ├─3数组指针.wmv │ │ ├─5指针的本质.wmv │ │ ├─6二级指针精讲.wmv │ │ ├─7二级指针的步长.wmv │ │ ├─8指针数组.wmv" |* V, R8 o: ]& c" M ├─day3 │ ├─code.zip │ ├─pic8 B k. N& I ]' E9 a' ?* l' b. N │ │ ├─n和n-1级指针.png1 y- v, Y; O. u" C; w& \+ b │ │ ├─二维空间的释放.png │ ├─video2 E& V' n! b; V6 f │ │ ├─01回顾与提高.wmv8 }, r0 s: i9 p& o │ │ ├─02返回堆上的二维空间1.wmv& S5 { Y3 u' e: q( p3 m │ │ ├─03返回堆上的二维空间与销毁2.wmv$ Q4 f1 o9 q1 G9 @5 d8 r4 I1 m │ │ ├─04序列加密.wmv6 B8 X7 m/ B2 J( D5 G2 R% Q │ │ ├─05读文件到内存.wmv │ │ ├─06const修饰符.wmv │ │ ├─07函数指针和回调函数.wmv ├─day4! Q" w. b0 a# O) S3 O │ ├─code.zip! d& V Y( o& _ │ ├─pic9 M0 K1 l& X( s' h8 G# t# ^5 \ │ │ ├─二维空间的详解.png │ ├─video │ │ ├─video2 W* x. V3 o# G │ │ │ ├─01二维空间和函数指针回顾.wmv1 Q: m& E" O1 K( }$ [7 h │ │ │ ├─02回调函数使用和qsort的使用.wmv │ │ │ ├─03指针和数组杀青篇.wmv │ │ │ ├─04排序优化(冒泡选择快速).wmv5 ~3 d. p. I5 A ?, K │ │ │ ├─05快速排序详解.wmv0 P( p' a, W% _- p0 q5 U7 ` │ │ │ ├─06二分查找的迭代与递归.wmv │ │ │ ├─07字符串开山篇.wmv! B' x. N; k9 s6 {3 v% h* Y ├─day5 │ ├─code.zip w* |: X1 ?3 ~ │ ├─pic; N: x1 p/ ~1 e! _* N4 i │ │ ├─递归逆序.png5 v8 e' @- u( U8 P, t: o! m │ ├─video │ │ ├─01复改与回顾.wmv8 c* D, ~( w& X8 J+ b* | │ │ ├─02自实现myStr系列.wmv │ │ ├─03sprintfatoiitoastrchr.wmv6 o- b( f" @' c' E& G J │ │ ├─04strstr.wmv6 k6 X6 i( A$ R& z& ]0 { │ │ ├─05strtok.wmv% C% y" l6 w' D- }$ ] O │ │ ├─06内存操作函数.wmv │ │ ├─07trim系列.wmv │ │ ├─08字符串逆序系列.wmv" e" T! p: I4 ~ ├─day6 │ ├─code.zip │ ├─pic. }& E8 ?' l' Q) s& f │ │ ├─冒泡交换指针.png4 Z, W4 d, n: b, o1 X0 ], B6 j* d: G" k │ │ ├─冒泡交换数据.png; H9 b5 d/ y# v# x8 ~ │ │ ├─判断链表中有无环.png │ │ ├─动态库与静态库.png+ _/ a" L+ U! {- t9 l- h* X. L │ │ ├─头插法正确示例.png │ │ ├─头插法的错误示例.png6 @2 X& ^0 _# Q. Y( j │ │ ├─尾插法.png) i1 ?3 f I" |3 U4 \0 Y │ │ ├─查找.png- Q; I2 ?! j: q/ q │ │ ├─汉保保.png │ │ ├─节点删除.png4 D9 u/ L( y( s1 ?7 s8 P/ C1 `' ^; ?- S$ g │ │ ├─销毁.png5 M3 J$ V3 l7 R# f4 ~# N │ ├─video │ │ ├─01复习与回顾.wmv │ │ ├─02双向循环链表的创建与遍历.wmv │ │ ├─03头插法代码演示.wmv │ │ ├─04查找,删除,排序.wmv- T3 u# _6 ?- f6 _ │ │ ├─05排序交换指针,判断表中有环.wmv │ │ ├─06动态库与静态库的使用.wmv │ │ ├─07动态库与静态库的自实现.wmv │ │ ├─08sqlite3入门.wmv
    • 511
    • 677
  • 上下两部课程 C++面向对象高级开发视频教程 侯捷老师C++实战视频教程 C++快速入门 │ ├1.C++编程简介.mp4 │ ├2.头文件与类的声明.mp4 │ ├3.构造函数.mp4 │ ├4.参数传递与返回值.mp4 │ ├5.操作符重载与临时对象.mp4 │ ├6.复习Complex类的实现过程.mp4 │ ├7.三大函数:拷贝构造,拷贝复制,析构.mp4 │ ├8.堆,栈与内存管理.mp4 │ ├9.复习String类的实现过程.mp4 │ ├10.扩展补充:类模板,函数模板,及其他.mp4 │ ├11.组合与继承.mp4 │ ├12.虚函数与多态.mp4 └ └13.委托相关设计.mp4 ├<侯捷 – C++面向对象高级开发(下)> │ ├Basic_String使用new(extra)扩充申请量 24.mp4 │ ├class template 7.mp4 │ ├conversion function2.mp4 │ ├function-like classes 5.mp4 │ ├Funtion Template 8.mp4 │ ├Member Template 9.mp4 │ ├namespace经验谈 6.mp4 │ ├non-explicit one argument constructor 3.mp4 │ ├Operator new,operator delete.. 21.mp4 │ ├pointer-like classes 4.mp4 │ ├Reference 15.mp4 │ ├specialization 10.mp4 │ ├导读1.mp4 │ ├复合&继承关系下的构造和析构 16.mp4 │ ├关于C++标准库 13.mp4 │ ├关于Dynamic Binding 19 (1).mp4 │ ├关于Dynamic Binding 19.mp4 │ ├关于New,Delete 20.mp4 │ ├关于this 18.mp4 │ ├关于vptr和vtbl 17.mp4 │ ├模板模板参数 12.mp4 │ ├模板偏特化 11.mp4 │ ├三个主题 14.mp4 │ ├示例 22.mp4 │ └重载new(),delete()$示例 23.mp4 课件: C++课件_面向对象高级编程.pdf C++面向对象高级编程代码资源.zip Part2课件和代码
    • 621