我们长路漫漫,只因学无止境。网站首页学无止境
3. 完成OpenSLES混音器CreateOutputMix初始化~1
发布时间:2021-06-04 15:43:48作者:雪饮[心得笔记]

上一步創建了OpenSLES下的SLEngineItf引擎,接下來第二步就是創建混音器。cpp/native-lib.cpp:#include <jni.h>
#include <string>
#include <SLES/OpenSLES.h>
#include <S
2. 创建OpenSLES音频播放测试项目并完成引擎初始化~1
发布时间:2021-06-04 15:07:27作者:雪饮[心得笔记]

上篇中實現了安卓视频播放窗口去掉标题栏、全屏、横屏等的處理並在雷電模擬器4中進行了測試。但是目前來説視頻還有最致命的問題就是沒有聲音,雖然聲音也解碼了。但是這裏音
详细信息>>7. 安卓视频播放窗口去掉标题栏、全屏、横屏~1
发布时间:2021-06-04 10:59:59作者:雪饮[心得笔记]

上篇進行了大幅的代碼改動,主要實現了視頻的播放,在測試目標雷電模擬器4中進行測試的。目前來説感覺對於不同的mp4文件好像還是有一些問題。畢竟mp4格式本來就是一種非常複雜
详细信息>>6. 使用NDK通过GLSurfaceView双缓冲空间复制完成视频的播放~1
发布时间:2021-06-03 21:44:34作者:雪饮[心得笔记]

本篇文章呢我個人認爲能值1000人民幣。怎麽說呢,花了好久時間整理的。查詢了很多的資料篇章。上篇咱們不是介紹了音頻的重采樣。這次主要就是實現視頻的播放了。在安卓中已
详细信息>>4. swr_init音频重采样上下文初始化和swr_convert音频重采样代码示例~1
发布时间:2021-06-02 17:36:44作者:雪饮[心得笔记]

音頻重采樣的相關函數依賴于libswresample.so,依賴於libswresample/swresample.h頭文件。所以cpp/CMakeLists.txt需要新增添加這個庫并且設置這個庫的屬性最後將這個庫添加
详细信息>>2. sws_scale像素格式转换代码演示~1
发布时间:2021-06-02 15:24:57作者:雪饮[心得笔记]

這次要實現像素格式的轉換,將解碼的視頻幀轉換為常用的RGBA像素格式。這裏僅僅實現對視頻的像素格式轉變。像素格式的相关函数包含在 libswscale.so 库中。所以cpp/CMakeLis
详细信息>>7. ffmpeg调用MediaCodec实现硬解码代码演示~1
发布时间:2021-06-01 18:42:28作者:雪饮[心得笔记]

上篇中實現了視頻軟解碼性能的衡量測試。一直以來都還沒有實現過硬解碼。那麽硬解碼不僅僅要把我們前面獲取硬解碼器的代碼放開注釋,由於硬解碼還涉及到在c中調用java,所以需
详细信息>>6. 音视频解码性能测试neon单线程和八线程解码测试代码~1
发布时间:2021-06-01 17:33:12作者:雪饮[心得笔记]

上篇完成了音視頻多綫程解碼,這次就給該實例增加性能測試的功能。這裏衡量性能指標自然是每單位時間内能夠解碼的幀數。所以就要實現在解碼過程中實現時間的統計,並在某個周
详细信息>>5. 音视频多线程解码代码演示~1
发布时间:2021-06-01 15:32:44作者:雪饮[心得笔记]

上篇完成了音視頻解碼器的打開。那麽這篇就正式來完成音視頻的解碼。解碼的主要流程就是通過av_frame_alloc獲取到幀數據。這些數據可能有音頻幀,也可能有視頻幀。要區分音
详细信息>>2. 打开音频解码器上下文~1
发布时间:2021-06-01 11:08:41作者:雪饮[心得笔记]

上篇實現了AVCodecContext解码上下文初始化和视频解码器打开。這次將會讓音頻解碼器也打開,讓視頻解碼器和音頻解碼器都打開。原理都差不多,直接複製視頻解碼器打開的代碼修
详细信息>>