原创 SDL入門操練

概述 本文使用SDL作爲圖形庫,實現了在一個界面上, 隔一會就出來一個方塊,算是學習SDL圖形庫的入門, 爲了方便, 使用了Qt IDE, 而不是在Linux上構建。對於新手來說,對各個函數的名稱, 參數, 作用, 返回值都不熟悉

原创 進程間通信(二) FIFO

基本概念        FIFO指先進先出(first in,first out),它是一個單向(半雙工)數據流。不同於管道的是,每個FIFO有一個路徑名與之關聯,從而允許無親緣關係的進程訪問同一個FIFO, 不相關的進程也能交換數據。F

原创 ffmpeg 分離視頻中的YUV分量

文章目錄概覽程序運行效果釋疑 概覽 本文借用ffmpeg庫, 把視頻拆分爲Y、U、V三個分量進行保存,可以使用YUV視頻播放器分別播放。同時把視頻中的其中某一幀圖像保存下來, 也拆分爲Y、U、V三個分量。讓大家對YUV顏色空間有更

原创 SDL實現簡單YUV播放器

概述 本文藉助SDL框架, 實現一個簡單的YUV播放器。 運行環境:Windows10, Qt5.13, SDL2.1 實現功能:空格鍵控制暫停/繼續, ESC退出,z、x、c調整播放速度。 PS: SDL入門操練 SDL檢測按鍵

原创 windows下Qt 配置boost

文章目錄preface編譯boost庫下載boost源碼:生成b2.exe和bjam.exe可執行文件執行編譯在Qt 中使用boost庫配置 .pro 文件示例 preface 我的配置環境:windows10 + qt5.13+

原创 av_image_fill_arrays詳解

前言 在學習ffmpeg 解碼的時候, 經常需要用到av_image_fill_arrays這個函數, 其中有一個參數是const uint8_t *src, 之後的邏輯中就沒再用了, 我感到很疑惑, 學習了一下源碼, 才恍然大悟

原创 clearcase 怎麼刪除hyperlink

問題引出 爲什麼有這麼個奇怪的需求呢? 本人某次往主分支merge person view 的代碼,ctbuild 在打包時候發現有錯誤, 時間緊急, 就先把代碼退回去, 於是就要刪除我進的哪一個版本, 錯誤如下 提示已經有hyperL

原创 ffmpeg視頻解碼

前言 在學習ffmpeg中, 視頻解碼是一個常用而基礎的功能, 本文結合自己的學習和理解, 實現一個簡單的解碼器。 流程圖 若干說明: 其實第一步, avformat_alloc_context 是可以不要的, 因爲在open

原创 MP4格式詳解

之前剛接觸轉碼工作時,看到的一篇介紹mp4挺不錯的文章,轉載自:mp4文件格式解析 1、概述   最開始MP4指的是音頻(MP3的升級版),即MPEG-2 AAC標準。隨後MP4概念被轉移到視頻上,對應的是MPEG-4標準

原创 ffmpeg + SDL 實現簡單的視頻播放器

文章目錄前言流程圖代碼實現若干問題的深度解析爲什麼要用sws_scale爲什麼需要flush decoder怎麼flush decoder總結:重點說明寫在最後的話 前言 本文借鑑了雷神的遺作, 同時對一些已經捨棄的API更新,

原创 SDL檢測按鍵

文章目錄preface按鍵檢測基礎EVENT基礎event類型event結構體代碼示例:示例結果 preface 在使用是視頻播放器時, 很少再有人用鼠標去操作暫停、推出這樣簡單的操作,低效還麻煩, 大家都會用鍵盤來搞定,比如空格