原创 視頻手術刀 video bistoury(三)--Opengl 基石

網上大多數文章介紹使用SDL或者系統窗口顯示ffmpeg抓取的幀,忽略了opengl在視頻特效處理的重要性,本篇介紹用opengl做最簡單的圖片顯示,爲後期視頻特效渲染提供支持。 VideoBistoury使用QT中的opengl來開發

原创 關於jenkins 構建打包的技巧

關於jenkins 構建打包的技巧 jenkins是一個專業構建平臺,在各大公司內部比較受歡迎,可以自定義構建方式,以下整理一些技巧,防止以後忘記。 郵件通知 jenkins 自帶郵件通知功能,但是比較單一,無法自定義郵件內容,推薦使用

原创 視頻手術刀 video bistoury(二)--ffmpeg 基石

ffmpeg作爲視頻編解碼的基石,其重要性不言而喻,本篇介紹ffmpeg在VideoBistoury中的封裝結構。 ffmpeg_frame 通過ffmpeg_frame 統一管理解碼後的音頻幀、視頻幀 class FFrame{ pu

原创 視頻手術刀 video bistoury -- 直播

編碼推流 Created with Raphaël 2.1.0Start相機採集/文件採集YUV編碼(openh264/x264/ffmpeg)h.264NALU 增加 flv headerflv封裝成RTMP流發送給服務器 h.264分

原创 視頻手術刀 video bistoury(四)--VideoPlayer

有了前面幾篇文章介紹的ffmpeg抓幀與opengl顯示,就可以播放視頻了,本篇主要介紹視頻幀的播放與調度。 幀緩存隊列 在播發器的開發過程中,雖然ffmpeg抓出來的不管是音頻還是視頻,都是統一用avframe來存儲數據,並且播放順序上

原创 android native 調試

ndk-stack addr2line 位置 armeabi-v7a: \android-sdk-windows-23\ndk-bundle\toolchains\arm-linux-androideabi-4.9\prebuil

原创 C和C++內存模型

C和C++內存模 C分爲四個區:堆,棧,靜態全局變量區,常量區 C++內存分爲5個區域(堆棧全常代 ): 堆 heap : 由new分配的內存塊,其釋放編譯器不去管,由我們程序自己控制(一個new對應一個delete)。如果程序員沒有釋

原创 視頻手術刀 video bistoury(一) -- first blood

本人從事視頻處理相關方面的研發工作,在這一領域探索的過程中是極富有樂趣的。video bistoury(視頻手刀) 是一款基於ffmpeg、opengl、qt開發的跨平臺桌面軟件,我對此寄予了很高的期待,它是我對視頻處理相關技術的集大成者

原创 NDK編譯優化

文章參考:http://www.cnblogs.com/oloroso/p/5822982.html APP_LDFLAGS: 構建系統在鏈接應用時傳遞的一組鏈接器標誌。此變量僅在構建系統構建共享庫和可執行文件時才相關。當構建系統構建靜

原创 so導出函數表

NDK自帶工具能查看so包的導出函數表: /opt/soft/android-ndk-r13b/toolchains/x86_64-4.9/prebuilt/linux-x86_64/bin/x86_64-linux-android-re

原创 Android平臺openssl編譯打包流程

Android平臺openssl編譯打包流程 Android從7.0後不支持引用系統Openssl庫,對於native開發者,需要將Openssl集成進去,這個過程十分繁瑣,整理如下。 準備工作 開發環境 linux ,NDK 代碼下

原创 pyqt開發筆記

佈局: self.setWindowFlags(Qt.WindowStayOnTopHint)窗口一直在前面 self.layout().setContentsMargins() 設置邊界 self.layout().setSpacing

原创 NDK開發的奇技淫巧(一)

本人之前搞過比較多的android業務層開發,一些套路基本已經爛熟於心,但僅僅這樣很難讓我的技術水平更上一層樓。目前在架構部門做通用sdk,涉及到底層業務,我懷着極大的熱情去學習android native開發,然而最開始的過程讓我十分痛