原创 WebRTC(一) 簡介

文章目錄1 概述2 應用場景3 整體架構 1 概述 WebRTC是一個用於音視頻處理和即時通訊的開源庫,支持跨平臺,於2010年Google將其開源, 2 應用場景 音視頻直播 遊戲,即時通訊,文件傳輸等 音視頻處理(迴音消除,

原创 WebRTC(十) ICE

https://www.cnblogs.com/pannengzhi/p/5061674.html

原创 C++基礎(四) 繼承和派生

文章目錄1 類和類之間的關係2 繼承的訪問方式3 類的兼容性賦值原則4 繼承的構造和析構5父類和子類的成員變量重名6 派生類中的static7 多繼承8 虛繼承 1 類和類之間的關係 #include <iostream> usi

原创 C++基礎(五) 多態

文章目錄1 多態示例2 虛析構函數3 多態的原理3.1 虛函數表和vptr指針3.2 證明vptr指針的存在3.3 vptr指針的初始化時機3.4 父類指針和子類指針的步長4 純虛函數和抽象類4.2 純虛函數說明4.2 示例4.3

原创 C++基礎(三) 類和對象

文章目錄1 類和對象2 面向對象和麪向過程2.1 面向對象方式2.2 面向過程方式3 計算圓的面積(分開寫的形式)4 對象的構造與析構4.1 構造函數和析構函數4.2 "="號運算符重載4.3 拷貝構造函數4.4 是否接收匿名對

原创 C++基礎(二) C++對C語言的拓展

文章目錄1 引用1.1 引用的基本概念1.2 引用作爲函數參數1.3 引用的本質1.4 引用作爲函數返回值1.5 指針引用1.6 const引用2 內聯函數3 默認參數和佔位參數4 函數重載4.1 重載規則4.2 重載底層實現4.

原创 Linux基礎(四) gcc

文章目錄1 gcc的編譯過程1.1 預處理器1.2 編譯器處理1.3 彙編器處理1.4 鏈接器處理1.5 gcc參數1.5.1 指定文件目錄1.5.2 添加宏1.5.3 優化1.5.4 gcc參數總結2 靜態庫的製作和使用2.1

原创 Linux基礎(一) Linux命令

文章目錄1 Linux下的快捷鍵1.1 history 展示歷史命令1.2 命令切換1.3 清屏1.4 刪除1.5 tab命令1.6 光標移動2 文件和目錄操作2.1 cd - 目錄切換2.2 命令行前面的含義 yeliang@

原创 Linux基礎(五) makefile

makefile的規則 規則的三要素文章目錄1 一個簡單的makefile示例2 根據.o來編譯3 提取makefile中的變量4 makefile中的函數5 刪除.o6 命令執行失敗時繼續向下執行 本文主要介紹makefile的

原创 Android播放器(二) 使用OpenSL ES播放音頻原始數據PCM

源碼地址 Video-Play-PCM 本文主要介紹native層通過OpenSL來播放音頻原始PCM數據。關於java層相關和項目配置的可以參考項目源碼。 直接在java調用native層的方法來播放pcm public nat

原创 Linux基礎(六) 系統IO函數

使用file命令看文件格式 文章目錄1 open()1.1 打開文件1.2 創建文件1.3 文件權限的計算方式1.4 判斷文件已經存在1.5 將文件截斷爲02 read() write()3 lseek()4 stat()4.1

原创 Linux基礎(二) ftp nfs ssh scp

文章目錄1 ftp1.1 ftp服務器搭建1.2 ftp客戶端登錄1.3 文件的上傳1.4 文件的下載1.5 匿名用戶登錄2 nfs2.1 創建共享目錄2.2 修改配置文件2.3 重啓服務2.4 客戶端掛載share目錄3 ssh

原创 Android 使用RtmpDump推流

本文主要介紹在android平臺上使用RtmpDump來完成推音視頻流的示例。音頻流使用faac編碼器,視頻流使用x264編碼器編碼器。 具體可參考Github倉庫 文章目錄1 總結構圖2 音頻採集2.1 java層 音頻採集初始