基于NDKC++FFmpegAndroid视频(流媒体)播放器开发实战

274
回复
313834
查看
  [复制链接]

3650

主题

3999

帖子

2万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
22966
发表于 2021-1-7 23:57:24 | 显示全部楼层 |阅读模式
                                                 基于NDK C++FFmpegAndroid视频(流媒体)播放器开发实战
f8826d1d9942a8b7b9051209bed15e0b.png
〖课程目录〗:

2019夏曹俊 基于NDKC++FFmpegAndroid视频(流媒体)播放器开发实战 [3.7G]
      ┣━━1. 课程介绍及音视频基础知识 [115.6M]
      ┃    ┣━━1. 介绍~1.mp4 [30M]
      ┃    ┣━━2. 音视频基础知识Mpeg4封装格式音视频编码格式讲解~1.mp4 [12M]
      ┃    ┣━━3. 音视频解封装和解码原理分析~1.mp4 [21.8M]
      ┃    ┣━━4. 图形像素格式RGB和YUV格式分析~1.mp4 [19.6M]
      ┃    ┣━━5. PCM音频采样率_通道_planar等格式参数分析~1.mp4 [12.9M]
      ┃    ┗━━6. MP4标准和h264格式的NAL的GOP分析~1.mp4 [19.3M]
      ┣━━2. AndroidStudio开发工具和开发环境准备 [84.8M]
      ┃    ┣━━1. 开发所用到的工具和sdk介绍~1.mp4 [8.4M]
      ┃    ┣━━2. AndroidStudio开发工具安装使用讲解~1.mp4 [24.4M]
      ┃    ┣━━3. Android SDK目录内容分析~1.mp4 [9.8M]
      ┃    ┣━━4. AndroidNDK工具目录功能分析~1.mp4 [7.8M]
      ┃    ┣━━5. 安卓模拟器安装和第一个c++安卓程序编译运行~1.mp4 [13.9M]
      ┃    ┗━━5.1 010第一个c++安卓程序testlog8.zip [20.5M]
      ┣━━3. Android NDK交叉编译FFMpeg并添加测试AS项目 [309.9M]
      ┃    ┣━━1. 安卓NDK相关概念ABI、NEON、JNI和CMAKE分析~1.mp4 [16.6M]
      ┃    ┣━━2. NDK中CPU的应用二进制界面ABI~1.mp4 [12.7M]
      ┃    ┣━━3. ubuntu虚拟机及常用工具安装并配置samba共享目录~1.mp4 [29.8M]
      ┃    ┣━━3.1 013ubuntu虚拟机及常用工具安装并配置samba共享目录.pdf.pdf [224.3K]
      ┃    ┣━━4. ffmpeg源码下载在android下的编译参数分析讲解~1.mp4 [17.9M]
      ┃    ┣━━5. 在ubuntu下交叉编译ffmpeg的android版本库~1.mp4 [34M]
      ┃    ┣━━6. ffmpeg通用编译bash脚本编写、硬解码、neon、多线程解码性能对比~1.mp4 [39.8M]
      ┃    ┣━━6.1 016ffmpeg通用编译bash脚本和编译好的ffmpeg安卓库.zip [11.8M]
      ┃    ┣━━7. AndroidStudio项目配置权限、jni库路径、ABI和CMake参数和讲解~1.mp4 [10.6M]
      ┃    ┣━━8. cmake配置(导入库、头文件、链接)分析~1.mp4 [15.5M]
      ┃    ┣━━9. 创建支持ffmpeg的AndroidStudio项目并调用其接口在界面显示库配置信息~1.mp4 [38.4M]
      ┃    ┣━━9.1 019创建支持ffmpeg的AndroidStudio项目完成设置显示ffmpeg的库配置信息testffmpeg15.zip [46.8M]
      ┃    ┣━━10. JNI和c传递文件路径并设置app的读写权限~1.mp4 [29.7M]
      ┃    ┗━━10.1 020testffmpeg_jni传递字符串参数并设置app读写权限16.zip [6M]
      ┣━━4. FFmpeg解封装(C++ NDK) [348.3M]
      ┃    ┣━━1. ffmpeg SDK软硬解码流程说明~1.mp4 [6.4M]
      ┃    ┣━━2. ffmpeg音视频解封装用到的函数和结构体详解~1.mp4 [12.3M]
      ┃    ┣━━3. avformat_open_input函数详解并示例打开mp4文件~1.mp4 [30.2M]
      ┃    ┣━━3.1 023testffmpeg打开mp4文件19.zip [71.5M]
      ┃    ┣━━4. AVFormatContext结构分析和清理代码示例~1.mp4 [12.2M]
      ┃    ┣━━5. avformat_find_stream_info探测获取封装上下文的格式信息~1.mp4 [14.9M]
      ┃    ┣━━6. AVStream和AVCodecParameters分析~1.mp4 [20.1M]
      ┃    ┣━━7. 通过遍历获取AVStream音视频流信息并打印参数~1.mp4 [26.1M]
      ┃    ┣━━7.1 027testffmpeg_通过遍历获取AVStream音视频流信息并打印参数.zip [49.4M]
      ┃    ┣━━8. 通过av_find_best_stream获取音视频流索引~1.mp4 [6.7M]
      ┃    ┣━━9. av_read_frame读取帧数据函数分析和产生的空间问题分析~1.mp4 [8.3M]
      ┃    ┣━━10. AVPacket结构解析空间申请-初始化-复制-引用计数函数讲解~1.mp4 [13.3M]
      ┃    ┣━━11. av_seek_frame改变播放进度函数详解~1.mp4 [10.9M]
      ┃    ┣━━12. av_read_frame和av_seek_frame代码示例并分析内存占用和清理情况~1.mp4 [16.8M]
      ┃    ┗━━12.1 032testffmpeg_av_read_frame和av_seek_frame代码示例.zip [49.4M]
      ┣━━5. FFmpeg软硬解和多线程解码(C++ NDK) [300.9M]
      ┃    ┣━━1. AVCodecContext解码上下文初始化讲解和视频解码器打开的代码演示~1.mp4 [28.1M]
      ┃    ┣━━1.1 033testffmpeg_AVCodecContext解码上下文初始化.zip [49.4M]
      ┃    ┣━━2. 打开音频解码器上下文~1.mp4 [9.3M]
      ┃    ┣━━2.1 034testffmpeg_打开音频解码器上下文.zip [49.4M]
      ┃    ┣━━3. AVFrame格式解析和空间处理函数~1.mp4 [12.1M]
      ┃    ┣━━4. avcodec_send_packet和avcodec_receive_frame函数讲解~1.mp4 [9.2M]
      ┃    ┣━━5. 音视频多线程解码代码演示~1.mp4 [14.8M]
      ┃    ┣━━5.1 37testffmpeg_完成音视频解码.zip [49.4M]
      ┃    ┣━━6. 音视频解码性能测试neon单线程和八线程解码测试代码~1.mp4 [22.6M]
      ┃    ┣━━7. ffmpeg调用MediaCodec实现硬解码代码演示~1.mp4 [7.7M]
      ┃    ┗━━7.1 39testffmpeg_ffmpeg调用MediaCodec实现硬解码代码演示.zip [48.9M]
      ┣━━6. FFMpeg音频重采样和视频格式转换和显示 [359.4M]
      ┃    ┣━━1. sws_getContext和sws_scale像素格式和尺寸转换函数讲解~1.mp4 [17.2M]
      ┃    ┣━━2. sws_scale像素格式转换代码演示~1.mp4 [26.6M]
      ┃    ┣━━2.1 41testffmpeg_37sws_scale像素格式转换代码演示.zip [48.9M]
      ┃    ┣━━3. 音频重采样SwrContext格式和swr_convert相关函数详解~1.mp4 [6.8M]
      ┃    ┣━━4. swr_init音频重采样上下文初始化和swr_convert音频重采样代码示例~1.mp4 [28.1M]
      ┃    ┣━━4.1 43testffmpeg_swr_init音频重采样上下文初始化和swr_convert音频重采样代码示例.zip [49.1M]
      ┃    ┣━━5. 分析GLSurfaceView和NDK接口直接显示RGB视频数据相关函数~1.mp4 [12.9M]
      ┃    ┣━━6. 使用NDK通过GLSurfaceView双缓冲空间复制完成视频的播放~1.mp4 [50.9M]
      ┃    ┣━━6.1 45testffmpeg使用NDK通过双缓冲空间复制完成视频的播放.zip [49.2M]
      ┃    ┣━━7. 安卓视频播放窗口去掉标题栏、全屏、横屏~1.mp4 [20.5M]
      ┃    ┗━━7.1 46testffmpeg安卓视频播放窗口去掉标题栏、全屏、横屏.zip [49.2M]
      ┣━━7. OpenSLES音频播放 [213.7M]
      ┃    ┣━━1. OpenSLES播放音频步骤和接口讲解~1.mp4 [26.8M]
      ┃    ┣━━2. 创建OpenSLES音频播放测试项目并完成引擎初始化~1.mp4 [19.2M]
      ┃    ┣━━2.1 48TestOpenSL创建OpenSLES音频播放测试项目并完成引擎初始化.zip [30M]
      ┃    ┣━━3. 完成OpenSLES混音器CreateOutputMix初始化~1.mp4 [9.2M]
      ┃    ┣━━3.1 49TestOpenSL完成OpenSLES混音器CreateOutputMix初始化.zip [27.9M]
      ┃    ┣━━4. 配置OpenSL的PCM音频输入格式~1.mp4 [6.8M]
      ┃    ┣━━4.1 50TestOpenSL配置OpenSL的PCM音频输入格式.zip [27.9M]
      ┃    ┣━━5. 读取pcm音频文件并使用OpenSL播放~1.mp4 [38M]
      ┃    ┗━━5.1 51TestOpenSL读取pcm音频文件并使用OpenSL播放.zip [27.9M]
      ┣━━8. EGL和OpenGLES Shader显示YUV视频 [310.2M]
      ┃    ┣━━1. egl和opengl_shader_glsl讲解~1.mp4 [17.6M]
      ┃    ┣━━2. testopengles_shader项目配置和创建_完成java部分代码~1.mp4 [17.5M]
      ┃    ┣━━3. 使用NDKC++完成EGL、display、surface、contex配置和初始化~1.mp4 [29.7M]
      ┃    ┣━━4. Opengl ES Shader顶点坐标和材质坐标分析~1.mp4 [13.3M]
      ┃    ┣━━5. 顶点着色器代码glsl代码编写~1.mp4 [10.1M]
      ┃    ┣━━5.1 56TestOpenglESshader初始化完成并编译顶点和片元着色器代码.zip [15.8M]
      ┃    ┣━━6. yuv420p片元着色器glsl编写~1.mp4 [20M]
      ┃    ┣━━6.1 57TestOpenglESshader初始化完成并编译顶点和片元着色器代码.zip [15.8M]
      ┃    ┣━━7. shader初始化完成并编译顶点和片元着色器代码~1.mp4 [17.6M]
      ┃    ┣━━7.1 58TestOpenglESshader初始化完成并编译顶点和片元着色器代码.zip [15.8M]
      ┃    ┣━━8. program渲染程序初始化给shader传递顶点和材质顶点数据~1.mp4 [24.7M]
      ┃    ┣━━8.1 59TestOpenglESprogram渲染程序初始化给shader传递顶点和材质顶点数据.zip [15.9M]
      ┃    ┣━━9. opengl的yuv纹理的创建和初始化~1.mp4 [25.9M]
      ┃    ┣━━9.1 60TestOpenglESopengl的yuv纹理的创建和初始化.zip [15.8M]
      ┃    ┣━━10. OpenglES纹理数据修改和显示~1.mp4 [14M]
      ┃    ┣━━10.1 61TestOpenglESopengl纹理数据修改和显示.zip [15.8M]
      ┃    ┣━━11. 通过OpenglES纹理修改完成yuv文件的播放显示~1.mp4 [8.8M]
      ┃    ┗━━11.1 62TestOpenglES通过opengl纹理修改完成yuv文件的播放显示.zip [16M]
      ┣━━9. 视频播放器项目实战一 需求和设计模式 [81.9M]
      ┃    ┣━━1. 视频播放器项目设计说明和UML类图知识讲解~1.mp4 [17.3M]
      ┃    ┣━━1.1 63UML类图箭头说明.png.png [219.2K]
      ┃    ┣━━2. 模块分解和用到的7个设计模式讲解~1.mp4 [17.1M]
      ┃    ┣━━2.1 64安卓视频播放器类图.png.png [313.4K]
      ┃    ┣━━3. 适配器、建造者、代理模式讲解~1.mp4 [19.7M]
      ┃    ┣━━4. 门面模式&生产者消费者模式~1.mp4 [9.5M]
      ┃    ┣━━5. Observer观察者模式讲解和应用~1.mp4 [6.8M]
      ┃    ┣━━6. 解码显示帧数据处理顺序图和开发计划讲解~1.mp4 [10.7M]
      ┃    ┗━━6.1 68播放媒体文件的顺序图.png.png [178.3K]
      ┣━━10. 视频播放器项目实战二 音视频解码解封装 [426.7M]
      ┃    ┣━━1. 项目创建权限ABI和CMake相关库和头文件配置~1.mp4 [14.8M]
      ┃    ┣━━2. 创建安卓流媒体播放器XPlay项目并配置添加了解封装模块代码及其依赖日志类~1.mp4 [21.4M]
      ┃    ┣━━3. FFDemux的Open实现打开媒体文件~1.mp4 [24.4M]
      ┃    ┣━━4. FFdemux的Read读取帧数据接口编写~1.mp4 [17.3M]
      ┃    ┣━━4.1 72XPlayFFdemux的Read读取帧数据接口编写.zip [59.2M]
      ┃    ┣━━5. 完成XThread线程类IDemux继承后在线程中读取帧数据~1.mp4 [20.7M]
      ┃    ┣━━6. 添加了XSleep完成XThread线程函数的停止和超时判断~1.mp4 [14.1M]
      ┃    ┣━━7. 观察者Observer模式的代码实现并使用IDemux进行测试~1.mp4 [20.6M]
      ┃    ┣━━7.1 75XPlay观察者Observer模式的代码实现并使用IDemux进行测试.zip [59.7M]
      ┃    ┣━━8. IDecode和FFDecode模块代码创建~1.mp4 [13.8M]
      ┃    ┣━━9. FFDecode的Open打开解码器接口编写和Observer基类添加~1.mp4 [14.9M]
      ┃    ┣━━10. 添加IDemux的GetVPara获取视频XParamter参数接口用IDecode的Open测试~1.mp4 [8.5M]
      ┃    ┣━━11. 封装FFDecode解码的Send和Recv接口~1.mp4 [20.1M]
      ┃    ┣━━12. 读取媒体帧数据获取类型信息(音频、视频)存入XData~1.mp4 [12.1M]
      ┃    ┣━━13. 完成音视频解码和并重构解码器加入观察者模式~1.mp4 [17.7M]
      ┃    ┣━━14. 加入生产者消费者模式控制音视频缓冲~1.mp4 [27.1M]
      ┃    ┗━━14.1 82XPlay完成音视频解码和并重构解码器加入观察者模式,加入生产者消费者模式控制音视频缓冲.zip [60.1M]
      ┣━━11. 视频播放器项目实战三 音视频播放 [515.8M]
      ┃    ┣━━1. IVideoView显示模块架构讲解和代码创建~1.mp4 [25.3M]
      ┃    ┣━━1.1 83XPlayIVideoView显示模块架构讲解和代码创建.zip [60.2M]
      ┃    ┣━━2. IEGL类初始化封装java部分添加XPlay窗口类~1.mp4 [31M]
      ┃    ┣━━3. XShader基于yuv420p的初始化Init代码完成并测试~1.mp4 [22.8M]
      ┃    ┣━━4. XTexture初始化并完成GLVideoView的调用~1.mp4 [21.3M]
      ┃    ┣━━5. GLVideoView完成使用shader显示视频~1.mp4 [43.2M]
      ┃    ┣━━6. 完成音频重采样IResample模块初始化代码~1.mp4 [14.7M]
      ┃    ┣━━6.1 88XPlay完成音频重采样IResample模块.zip [60.2M]
      ┃    ┣━━7. 完成音频重采样IResample模块的处理功能~1.mp4 [34.2M]
      ┃    ┣━━8. 完成了IAudioPlay和SLAudioPlay的音频播放环境初始化~1.mp4 [49.2M]
      ┃    ┣━━9. IAudioPlay的Update将音频压入缓冲队列并测试~1.mp4 [14.1M]
      ┃    ┣━━10. SLAudioPlay音频播放完成并测试对MP4文件音视频播放~1.mp4 [15.4M]
      ┃    ┣━━11. 完成硬解码并完成NV21和NV12格式的shader显示编写~1.mp4 [54.1M]
      ┃    ┣━━12. 解决android8.0下opengles不能播放的问题和音频播放的回音问题~1.mp4 [9M]
      ┃    ┗━━12.1 94XPlay解决android8.0下opengles不能播放的问题和音频播放的回音问题.zip [61.1M]
      ┣━━12. 视频播放器项目实战四 完成架构解决同步和seek [686M]
      ┃    ┣━━1. 完成facade模式的IPlayer并实现Open接口.~1.mp4 [39.8M]
      ┃    ┣━━1.1 95XPlay完成facade模式的IPlayer并实现Open接口.zip [61.1M]
      ┃    ┣━━2. 完成Iplayer开始播放和窗口初始化接口~1.mp4 [13.4M]
      ┃    ┣━━3. 完成Builder模式的IPlayerBuilder构建IPlayer对象~1.mp4 [39.5M]
      ┃    ┣━━4. 完成IPlayerProxy代理模式并进行测试架构搭建完成~1.mp4 [19.4M]
      ┃    ┣━━5. 统一换算pts为毫秒使用IPlayer完成音视频同步播放~1.mp4 [37.3M]
      ┃    ┣━━5.1 99XPlay统一换算pts为毫秒使用IPlayer完成音视频同步播放.zip [61.4M]
      ┃    ┣━━6. IDemux&FFdemux线程安全和Close清理函数编写~1.mp4 [11.6M]
      ┃    ┣━━7. FFdecode和FFResample线程安全处理和Close清理函数编写~1.mp4 [21.1M]
      ┃    ┣━━8. SLAudioPlay的线程安全处理和Close清理函数编写~1.mp4 [18M]
      ┃    ┣━━9. XEGL的线程安全处理和Close清理函数编写~1.mp4 [11M]
      ┃    ┣━━10. XShader线程安全处理和Close清理函数编写~1.mp4 [13.9M]
      ┃    ┣━━11. XTexture和GLVideoView的线程安全和清理函数编写~1.mp4 [11.6M]
      ┃    ┣━━12. IPlayer完成Close清理函数编写并完成多次打开视频文件的测试~1.mp4 [24.7M]
      ┃    ┣━━12.1 106XPlayIPlayer完成Close清理函数编写并完成多次打开视频文件的测试.zip [62.5M]
      ┃    ┣━━13. 添加打开视频按钮和进度滑动条并响应打开事件~1.mp4 [13.4M]
      ┃    ┣━━14. 添加视频打开路径和香港卫视rtmp打开路径的界面~1.mp4 [8.5M]
      ┃    ┣━━15. 完成通过界面多次打开视频文件,修正了多次打开显示出现的bug~1.mp4 [20.6M]
      ┃    ┣━━16. 在835cpu的手机中测试并修正了音频播放Close的bug~1.mp4 [16.6M]
      ┃    ┣━━17. 完成了播放进度的显示并修正了硬解码参数传递错误~1.mp4 [24.2M]
      ┃    ┣━━18. 滑动条拖动Seek视频开发策略详细分析~1.mp4 [9.2M]
      ┃    ┣━━19. 完成了IDemux的Seek和界面SeekBar的事件响应~1.mp4 [23M]
      ┃    ┣━━20. 添加了视频播放的暂停和恢复~1.mp4 [24.8M]
      ┃    ┣━━21. 修改了视频播放到结尾再次打开会锁死的bug~1.mp4 [14.4M]
      ┃    ┣━━22. 通过手动解码帧数据完成了IPlayer控制视频播放进度的功能~1.mp4 [24.4M]
      ┃    ┗━━22.1 116XPlay通过手动解码帧数据完成了IPlayer控制视频播放进度的功能.zip [60.4M]


                                                                                                 〖百度网盘下载地址〗:
游客,如果您要查看本帖隐藏内容请回复




---------------------------------华丽分割线--------------------------------华丽分割线-------------------华丽分割线-------------------------华丽分割线----------------

〖下载地址失效反馈〗:

如果下载地址失效,请尽快反馈给我们,我们尽快修复。反馈地址:http://www.51shequ.cn/forum-70-1.html

〖赞助VIP免社区币下载全站资源〗:
全站资源高清无密,每天不间断更新,vip会员可以免费下载全部资源

〖客服24小时咨询〗:
有任何问题,请点击左侧QQ咨询。
回复

使用道具 举报

0

主题

1084

帖子

2182

积分

永久vip

积分
2182
发表于 2021-2-10 02:12:42 | 显示全部楼层
楼主呀,,,您太有才了。。。
回复

使用道具 举报

0

主题

1096

帖子

2207

积分

永久vip

积分
2207
发表于 2021-4-6 14:55:49 | 显示全部楼层
不错 支持下
回复

使用道具 举报

0

主题

1111

帖子

2236

积分

永久vip

积分
2236
发表于 2021-4-15 03:36:38 | 显示全部楼层
楼主加油,我们都看好你哦。
回复

使用道具 举报

0

主题

1123

帖子

2261

积分

永久vip

积分
2261
发表于 2021-5-1 11:15:11 | 显示全部楼层
我只是路过打酱油的。
回复

使用道具 举报

0

主题

1123

帖子

2260

积分

金牌会员

Rank: 6Rank: 6

积分
2260
发表于 2021-5-1 16:33:43 | 显示全部楼层
一直在看
回复

使用道具 举报

发表于 2021-6-3 10:34:00 | 显示全部楼层
垃圾内容,路过为证。
回复

使用道具 举报

0

主题

1126

帖子

2269

积分

金牌会员

Rank: 6Rank: 6

积分
2269
发表于 2021-6-8 08:30:49 | 显示全部楼层
没人回帖。。。我来个吧
回复

使用道具 举报

0

主题

1086

帖子

2191

积分

金牌会员

Rank: 6Rank: 6

积分
2191
发表于 2021-6-10 05:24:29 | 显示全部楼层
无秘就是好
回复

使用道具 举报

0

主题

1047

帖子

2104

积分

永久vip

积分
2104
发表于 2021-6-19 04:32:32 | 显示全部楼层
我就是为了不加密而来
回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

 
 
技术支持
在线客服
社区VIP:
我要IT学习社区
工作时间:
8:00-18:00
申明:本站所有资源均来自于互联网用户分享,仅供参考和学习之用,不得传播及用于其他用途,请24小时内自行删除,本站不对任何资源负法律责任。如有侵犯您的版权,请联系客服发邮件到603758016@qq.com联系删除相关内容!