Giter Site home page Giter Site logo

mediajourney's Introduction

项目介绍

本项目是学习实践音视频的demo,系列文章如下,持续跟新中,欢迎关注公众号"音视频开发之旅" 一起学习成长。

阶段一:andorid多媒体

音视频开发之旅(一)三种方式绘制图片

音视频开发之旅(二)AudioRecord录制PCM音频

音视频开发之旅(三)AudioTrack播放PCM音频

音视频开发之旅(四)Camera视频采集

音视频开发之旅(五)MediaExtractor MediaMuxer 实现视频的解封装与合成

音视频开发之旅(六)MediaCodec硬编解流程与实践

阶段二: OpenGL ES

音视频开发之旅(七) OpenGL ES 基本概念

音视频开发之旅(八)GLSL及Shader的渲染流程

音视频开发之旅(九) OpenGL ES 绘制平面图形

音视频开发之旅(十) GLSurfaceView源码解析&EGL环境

音视频开发之旅(11) OpenGL ES矩阵变换与坐标系统

音视频开发之旅(12) OpenGL ES之纹理

音视频开发之旅(13) OpenGL ES 滤镜 (篇一)

音视频开发之旅(14) OpenGL ES 实时滤镜

音视频开发之旅(15) OpenGL ES粒子系统 - 喷泉

音视频开发之旅(16) OpenGL ES粒子效果-烟花爆炸

阶段三: JNI&NDK

音视频开发之旅(17) JNI与NDK的学习和使用

音视频开发之旅(18) JNI - 引用类型、异常处理、函数注册

音视频开发之旅(19)NDK构建方式 ndk-build与cmake

音视频开发之旅(20) 指针、内存模型、引用

音视频开发之旅(21)运算符重载、继承、多态、模版

音视频开发之旅(22) STL 之 容器

子系列 算法

音视频开发之旅(23) 算法系列 - 冒泡排序

音视频开发之旅(24) 算法系列-快速排序

音视频开发之旅(25) 算法系列-堆排序

音视频开发之旅(26) 算法系列-选择、插入排序以及STL中sort的实现

音视频开发之旅(27) 算法序列 - 二叉查找树

音视频开发之旅(28) 算法序列 - 平衡二叉树

音视频开发之旅(29) 算法序列 - 散列表

阶段四 : FFmpeg

音视频开发之旅(30) -音视频基础知识

音视频开发之旅(31) -FFMPEG常用命令

音视频开发之旅(32)-音视频学习资料

音视频开发之旅(33) -交叉编译android使用的FFmpeg(3.x和4.x)

音视频开发之旅(34) - 基于FFmpeg实现简单的视频解码器

音视频开发之旅(35) -FFmpeg + AudioTrack 实现音频解码和播放

音视频开发之旅(36) -FFmpeg +OpenSL ES实现音频解码和播放

音视频开发之旅(37) -FFmpeg + OpenGLES 边解码边播放视频(一)

阶段二进阶 : 渲染

音视频开发之旅(38) -使用FBO实现渲染到纹理(Render to texture)

音视频开发之旅(39)- 高斯模糊实现与优化

音视频开发之旅(40)-贝塞尔曲线和曲面

音视频开发之旅(41)-天空盒

音视频开发之旅(42) - 光照基础(一)

音视频开发之旅(43)-光照基础(二)

阶段五 : 音视频开源项目实践和解析

5.1 ExoPlayer

音视频开发之旅(44)-ExoPlayer介绍及简单使用

5.2 Android基础之-消息机制

Android基础进阶 - 消息机制

Android基础进阶 - 消息机制 之ThreadLocal

Android基础进阶 - 消息机制 之Native层分析

5.3 VideoCache -边下载边播放

音视频开发之旅(49)-边缓存边播放之AndroidVideoCache

mediajourney's People

Contributors

ayyb1988 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

mediajourney's Issues

编译失败

  • What went wrong:
    Execution failed for task ':app:processDebugResources'.

A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
Android resource linking failed
/Users/shawn/.gradle/caches/transforms-2/files-2.1/4478af84c25b018049392757fb5f91c9/core-1.7.0-beta02/res/values/values.xml:105:5-114:25: AAPT: error: resource android:attr/lStar not found.

android studio 版本Android Studio Arctic Fox | 2020.3.1 Patch 1

镜面光照计算公式错误吗?

在这个链接https://learnopengl-cn.github.io/02%20Lighting/02%20Basic%20Lighting/#_7 的镜面反射光计算方式中,它是这样的
float spec = pow(max(dot(viewDir, reflectDir), 0.0), 32);
vec3 specular = specularStrength * spec * lightColor;

而你的代码中镜面反射光的计算方式是这样的
float spec = pow(max(dot(unitNormal, reflectDir), 0.0), 16.0);
specular = specularStrength * spec * lightColor;

注意区别是:
上面的链接里dot函数的第一个参数是viewDir,即顶点到观察点的方向向量
而你的代码里dot函数的第一个参数是unitNormal,即顶点的单位法线向量

那么我的问题就是: 是你的计算方式错了,还是上面这个链接里的计算方式错了?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.