|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/ffmpeg-android/
课程评论:没有评论
**课程名称:** Android 视频 (流媒体) 播放器开发实战 **课程概述:** 本课程专注于使用 C++(主要)和少量 Java,并结合 Android Studio 3.0、C++11 和 Java 1.6,以及 GLSL 用于 YUV 转换,开发一款功能强大的 Android 流媒体播放器。课程将深入讲解视频播放的原理,并提供从零开始的代码实现。 **核心技术栈:** * **开发语言:** C++ (主要), Java (少量) * **开发工具:** Android Studio 3.0 * **C++ 标准:** C++11 * **Java 版本:** 1.6 * **图形着色语言:** GLSL (用于 YUV 转换) * **核心库:** FFmpeg (编译与使用) * **开发环境:** Ubuntu 16.04 (虚拟机) **适用人群:** * 掌握 C++ 基础语法者。 * 对 Android 应用开发有兴趣的 C++ 开发者。 **课程亮点:** * **全面实战:** 从原理讲解到代码实现,提供完整的课程源码。 * **FFmpeg 深度集成:** 演示如何编译 Android 平台的 FFmpeg 库,支持 NEON 和硬解码,并进行性能测试。 * **高效渲染:** 利用 OpenGL ES (NDK Shader) 高效播放 YUV 视频,显著降低 CPU 占用。 * **先进解码技术:** 支持硬解码(节能、低 CPU 占用)和多线程解码(高性能,可达 240 帧/秒 1080p)。 * **多协议流媒体支持:** 直接支持 RTMP、RTSP、HTTP 网络流媒体播放,可用于观看电视节目,并支持 RTSP 摄像头访问。 * **原生音频播放:** 使用 OpenSL ES NDK 原生接口播放音频,无需依赖第三方库。 * **设计模式应用:** 在实践中广泛应用观察者、构建者、门面、代理、适配器、单例以及生产者-消费者等设计模式。 **课程内容:** 课程将涵盖网络流媒体(拉流)的播放,演示 RTMP(香港卫视)的播放,支持 RTSP 摄像头和 HTTP 网络视频的播放。同时也支持本地视频文件的访问,并提供精确的播放进度显示和控制。 **先修要求:** * 熟练掌握 C++ 基础语法。 **总结:** 这是一门高度实践的 Android 流媒体播放器开发课程,尤其适合有 C++ 基础的开发者。通过本课程,您将能够构建一个功能强大、性能优越的 Android 视频播放器,并深入理解流媒体播放、FFmpeg 集成、高性能图形渲染以及多线程开发等关键技术。
版本的软件或编程语言 编程语言 开发语言C ++为主,少部分Java,转换yuv用到glsl 软件版本 开发工具Android studio 3.0 c ++版本c ++ 11 java版本1.6 ffmpeg的编译使用虚拟机的ubuntu16.04 适用人群: 掌握C ++基础语法 学习本课程的学员要求: 本课程是具有很强实战性的应用编程,课程中会从原理讲解到代码实现,但由于项目有一定复杂度,希望学习本课程的同学要掌握C ++的基本语法,课程中也用到的java的代码但比较少,如果是C ++程序员可以把我的java的代码直接拿过去用,不一定要有java的编程基础。课程说明 课程所有游戏了对流媒体(拉流)的播放,演示了播放RTMP的香港卫视,支持rtsp摄像头和http网络视频的播放,支持访问本地的视频文件,并精确显示和控制播放进度。课程特色 1课程由浅入深,原理讲解+代码实操演示,并提供全部课程源码2讲解如何编译Android平台的ffmpeg库,使其支持霓虹灯和硬解码,并测试性能3使用opengles的NDK shader高效播放yuv视频,不耗费cpu性能更优4代码支持硬解码(省电不耗cpu)和多线程解码(高性能每秒解码240帧1080p)5支持网络流媒体(rtmp,rtsp,http)可直接拉流播 放电视并支持rtsp摄像头访问6使用opensles NDK原生接口播放音频,不依赖第三方库7课程将设计模式应用到实践 - 观察者,构建者,门面,代理,适配器,单件和多线程的生产者消费者模式