原创 docker入門教程

1. docker安裝   請參考:[https://www.jianshu.com/p/665...] 2.製作docker鏡像 2.1 準備測試程序docker_test.cpp #include <stdio.h> #include

原创 WEBRTC穿透技術探討之STUN協議詳解

1. STUN協議概述   STUN(Session Traversal Utilities for NAT/NAT環境下的會話傳輸工具),是一種處理NAT傳輸的協議,主要作爲工具來服務其他協議。它允許位於NAT(或者多重NAT後的客戶端找

原创 openssl AES加密模式詳解

  高級密碼學的加密標準,(Advance Encryption Standard, AES),是美國聯邦政府採用的一種區塊加密標準。是一種對稱分組加密算法。對稱/分組密碼一般分爲流加密(如OFB,CFB)和塊加密(ECB、CBC等),對於

原创 私有流媒體服務器錄製的mpeg-ts文件medieinfo解析播放時長偏小的問題

1 問題描述   最近碰到一個問題,流媒體服務器寫出來的TS文件用ffmpeg、potplayer播放時長是正確的,但是使用mediainfo和windows自帶的系統播放器播放,就會出現播放時長偏小的問題。而mediainfo中音視頻播放

原创 如何創建一個指向類成員函數的線程

寫一個線程類,可以直接調用類的方法執行,歡迎大家拍磚! #include <pthread.h> #include <stdio.h> #include <unistd.h> class LazyThread { public: L

原创 srs之state thread庫接口分析

1.協程   協程是一種程序組件(以下稱爲微線程),通常我們把協程理解爲自己實現調度,用於提高程序運行效率,降低開發複雜度的微線程。協程在用戶態實現代碼段的調度,不需要像線程一樣切換到內核態進行調度,降低了對系統調度的依賴,減少了大量的中斷

原创 valgrind之callgrind性能優化

1.callgrind概述   它主要用來檢查程序中函數調用過程中各個函數的CPU消耗,以便開發者分析程序中各個函數的CPU使用情況,方便優化提供程序的運行效率。 2 安裝valgrind $sudo apt install valgrin

原创 M3U8格式分析

概述   M3U8是Unicode版本的M3U,用UTF-8編碼。"M3UP"和"M3U8"文件都是蘋果公司使用的HTTP Live Streaming(HLS)協議格式的基礎。這種格式可以在IPhone和Macbook等設備播放。M3U8

原创 ubuntu下Nginx詳解及點播直播服務器搭建

1 Nginx簡介   Nginx(engine x)是一個高性能的HTTP服務器,也是一款輕量級的Web服務器,反向代理服務器及電子郵件IMAP/POP3/SMTP代理服務器。Nginx是由伊戈爾·賽索耶夫爲站點Rambler.ru開發的

原创 卷積神經網絡

  卷積神經網絡已經斷斷續續的學了大半年了,卻發現自己還是一頭霧水,連基本的概念都沒搞清楚。這兩天在網上查了一些資料,看了一些教程。將卷積神經網絡的基本概念和原理理了一下,並整理出來,以供大家參考。注:本文中有些結論是本人對卷積神經網絡的理

原创 linux下darknet深度學習框架上手

  darknet是一個基於c與cuda輕量級深度學習框架,編譯部署簡單,移植性好,適合初學者上手。下面來介紹一下dark的安裝和簡單使用。 1.darknet源碼的下載和編譯 1.1 darknet介紹   Darknet深度學習框架是由

原创 linux下valgrind內存問題排查

  c/c++的內存管理一直都是程序猿最頭痛的事情,內存越界、數組越界、內存泄漏、內存溢出、野指針、空指針..., 隨便一個問題都可能讓程序崩潰。而且往往問題的源頭都比較隱蔽,讓人很難排查出問題的根源所在。  想要解決這個問題,還得從問題的

原创 linux下GDB調試

  linux下GDB是一個非常強大的調試工具,但是他不像vs一樣具有強大的圖形界面,基本都靠命令來進行調試,對於新手來說也算是個坎。下面就跟大家一起探究一下gdb這個強大的調試工具。 1.開啓core 1.1 查看core是否開啓 $ul

原创 git常用命令詳解

  git是我們常用的代碼提交工具,但是有很多命令行要記,對於習慣這些命令的新手來說是一件很蛋疼的事,故本人在此記錄了一些常用的命令,以供大家參考。如有不對之處,還請各位大蝦多多指正。 git代碼克隆 1.主模塊代碼拉取   主模塊拉取的命

原创 makefile文件的編寫

      最近在Linux下編程是對makefile文件的編寫感覺很不順手,於是專門學習了GNU_Makefile中文手冊,然後在soundtouch源碼的基礎上寫了個比較經典的makefile文件,當是練手,如有不對的地方,還請大蝦指點