我们长路漫漫,只因学无止境。网站首页学无止境
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解码上下文初始化和视频解码器打开。這次將會讓音頻解碼器也打開,讓視頻解碼器和音頻解碼器都打開。原理都差不多,直接複製視頻解碼器打開的代碼修
详细信息>>1. AVCodecContext解码上下文初始化讲解和视频解码器打开的代码演示~1
发布时间:2021-05-31 21:55:13作者:雪饮[心得笔记]

上篇中,咱们实现了帧信息帧数据的读取。那么这次咱们将会来实现打开一个软解码器。那么涉及到了解码:(1)我们为了方便就需要执行avcodec_register_all函数。只有调用了该函数
详细信息>>12. av_read_frame和av_seek_frame代码示例并分析内存占用和清理情况~1
发布时间:2021-05-31 18:11:39作者:雪饮[心得笔记]

接著上篇完成了獲取音視頻流索引之後,這次來瞭解下幀數據的讀寫以及快進操作。幀數據讀取首先必須要有av_packet_alloc來開闢一個結構體大小的内存,然後通過av_read_frame每
详细信息>>8. 通过av_find_best_stream获取音视频流索引~1
发布时间:2021-05-31 14:57:36作者:雪饮[心得笔记]

日志貓沒有日志輸出問題日志貓有時候有日志有時候沒有日志,這什麽情況?是不是usb調試鏈接太久了就會不發送日志了?空空如也實際上也還真有可能是這樣,此時,我在命令行執行&rdquo
详细信息>>7. 通过遍历获取AVStream音视频流信息并打印参数~1
发布时间:2021-05-31 14:15:01作者:雪饮[心得笔记]

调回usb调试方式前面为了调试方便,使用了usb网络調試模式,但是此模式有一個缺點,必須電腦和手機在一個局域網且必須是同一個衝突域。那麽這樣就會帶來一個新的問題,比如今天遇
详细信息>>5. avformat_find_stream_info探测获取封装上下文的格式信息~1
发布时间:2021-05-30 18:28:47作者:雪饮[心得笔记]

對於不同格式的視頻文件,要獲取其持續時間,也就是時長是需要處理不同的兼容性的。比如今天這裏要處理的就是mp4和flv。這裏的視頻原文件flv是通過之前我們用的那個1080.mp4經
详细信息>>