
我們在使用fopen打開文件的時候有時會出現(xiàn)失敗返回null情況凸主,但是我們不能直接通過log具體是什么原因?qū)е碌幕衅赃@時我們可以通過errno和strerror獲取錯誤碼和...
好吧绢彤,自己寫的教程不能正常發(fā)布出去烟很,在網(wǎng)上找了一個跟我使用步驟差不多的教程https://juejin.cn/post/7173447848292253704[https:/...
在Android中颈墅,封裝的同步類主要有Mutex(AutoMutex)與Condition。 這兩個類在android中被大量的使用溯职,這也說明這兩個類是非常重要的精盅。 一、Mu...
在《Java與CC++交互JNI編程[https://www.cnblogs.com/zuojie/p/16335454.html#autoid-1-5-1]》中有講過Att...
一谜酒、實現(xiàn)seek功能 我們主要是使用ffmpeg的av_seek_frame方法實現(xiàn)seek功能叹俏,但是我們給外界提供seek功能的方法可以不叫seek,我這里使用setTim...
簡介 音視頻同步的實現(xiàn)可以有兩種方式 視頻同步到音頻 音頻同步到視頻 我們這里選擇第一種僻族,因為音頻播放的頻率是SDL控制的粘驰,我們沒法改變,所以使用視頻同步到音頻述么。 實現(xiàn)音視頻...
一蝌数、簡介 上節(jié)介紹了使用SDL播放音頻,這節(jié)介紹視頻顯示度秘,其解碼流程跟音頻差不多顶伞。 解碼視頻是比較耗時的,需要我們自己開個線程去解碼剑梳,而音頻是SDL幫我們管理了子線程去解碼音...
一唆貌、簡介 接著上節(jié)的音頻解碼,使用SDL播放音頻垢乙。 通過上節(jié)程序運行打印發(fā)現(xiàn)這些音頻信息明顯不符合SDL的锨咙,所以我們需要進行重采樣 二、音頻重采樣 這里我們可以參考之前的《1...
一追逮、簡介 如上圖酪刀,我們在主線程中開啟一個子線程進行解封裝粹舵,然后在開兩個線程分別進行視頻解碼和音頻解碼,其中音頻解碼我們使用的是SDL去渲染骂倘,SDL自己會管理子線程眼滤,不用我們來...
一、簡介 我們使用QT+ffmpeg實現(xiàn)一個播放器历涝,這里我們主要是為了學(xué)習(xí)ffmpege了柠偶,而QT只是輔助的,所以播放器的界面搭建我們不在介紹睬关,可以直接看代碼(界面搭建代碼[...
一诱担、簡介 為什么要用多線程?在音視頻領(lǐng)域主要是實現(xiàn)音視頻同步电爹。實現(xiàn)了音視頻同步蔫仙,我們的播放器就基本上合格了。多線程的好處主要是能使程序更加充分利用硬件(主要是CPU)的性能丐箩。...
一摇邦、什么是封裝格式 封裝格式也稱為容器,用于打包音頻屎勘、視頻以及字幕等等施籍,比如常見的容器有MP4、MOV概漱、WMV丑慎、FLV、AVI瓤摧、MKV等等竿裂。容器里面裝的是音視頻的壓縮幀,但是...
本文的主要內(nèi)容:對H.264數(shù)據(jù)進行解碼(解壓縮)照弥。 使用FFmpeg命令進行H.264解碼 如果是命令行的操作腻异,非常簡單。 使用FFmpeg代碼進行H.264解碼 接下來主...
本文的主要內(nèi)容:使用H.264編碼對YUV視頻進行壓縮这揣。 使用FFmpeg命令進行H.264編碼 如果是命令行的操作悔常,非常簡單。 使用FFmpeg代碼實現(xiàn)H.264編碼 接下...
本文主要介紹一種非常流行的視頻編碼:H.264[https://zh.wikipedia.org/wiki/H.264]给赞。 計算一下:10秒鐘1080p(1920x1080)...
前面文章FFmpeg像素格式轉(zhuǎn)換中我們使用FFmpeg實現(xiàn)了一個像素格式轉(zhuǎn)換工具類机打,現(xiàn)在我們就可以在Qt中利用QImage很容易的實現(xiàn)一個簡單的YUV播放器了。 播放器功能很...
簡介 前面使用 SDL 顯示了一張YUV圖片以及YUV視頻塞俱。接下來使用Qt中的QImage來實現(xiàn)一個簡單的 YUV 播放器姐帚,查看QImage支持的像素格式吏垮,你會發(fā)現(xiàn)QImag...
簡介 使用SDL實現(xiàn)簡單的YUV播放器障涯。這里還需要使用到像素格式和計算圖片大小罐旗,這兩個我們直接使用ffmpeg來實現(xiàn),因此需要使用ffmpeg的libavutil/avuti...
一、顯示YUV圖片 顯示 YUV 圖片和顯示 BMP 圖片的大致流程是一樣的唯蝶。顯示 BMP 圖片我們可以直接獲取到 BMP 圖片的 surface九秀,然后直接從 surface...