原创 【FFmpeg4.1.4 編碼】h265編碼

FFmpeg1、編碼流程2、編碼 1、編碼流程 1、初始化AVFormatContext:avformat_alloc_output_context2(),包含有輸出碼流(AVStream)和解複用器(AVInputFormat)

原创 FFmpeg中PTS與DTS詳解

FFmpeg中PTS與DTS詳解一、PTS與DTS簡介二、時間基(time_base)簡介三、ffmpeg分層結構與時間基(timebase)四、ffmpeg的分層結構 一、PTS與DTS簡介 Decode Time Stamp

原创 LNK1169解決重定義錯誤

LNK1169解決重定義錯誤

原创 NVDEC硬解碼API導讀

NVDEC硬解碼API導讀NVDECODEAPI解碼流程: NVDECODEAPI解碼流程: Create a CUDA context. 創建CUDA上下文 static void createCudaContext(CUco

原创 【C++解決問題之棧】Stack around the variable 'tilename' was corrupted

Stack error一、棧環境被破壞二、解決辦法 一、棧環境被破壞 二、解決辦法 數組越界 檢查數組大小,循環變量是否越界。 sprintf()會造成越界,在釋放內存,做delete時會報錯誤,使用的時候要注意。 char

原创 【FFmpeg 之MP4】mp4視頻切割

視頻切割一、實現功能二、源程序 一、實現功能 從mp4文件截取局部視頻。 splite_video(std::string in_filename, std::string out_filename, int begin_inde

原创 【FFmpeg之AVOption】編碼選項設置

AVOption一、AVOption簡介二、av_opt_set()函數詳解 一、AVOption簡介 AVOption是FFmpeg的選項設置工具。AVOption的核心概念就是“根據字符串操作結構體的屬性值”。與AVOptio

原创 【C++拾遺之七】YUV視頻下采樣

文章目錄1、下采樣(subsample or downsample)2、源碼 1、下采樣(subsample or downsample) 圖像下采樣原理:原始圖像的分辨率爲WxH,對其進行n倍下采樣得到(W/n)x(H/n)分辨

原创 網絡流媒體協議之RTMP(一)

RTMP協議一、RTMP協議簡介二、握手三、消息塊 Chunck Block 一、RTMP協議簡介 Real Time Message Protocol(RTMP),即實時消息傳輸協議,它是由Adobe公司提出的一種應用層協議,用

原创 CPU初探

CPU初探一、CPU的架構體系1、馮諾依曼結構:數據和指令統一編址2、哈佛結構:數據和指令獨立編址3、下面是對上圖的幾個引申知識點:二、CPU簡介三、CPU運行原理 一、CPU的架構體系 目前市場上的CPU架構體系主要分爲馮諾依曼

原创 數據結構與算法之排序

排序算法一、排序二、排序算法分類內排序與外排序交插選並三、算法性能:一、衡量標準時間性能:比較和移動的操作次數輔助空間:算法執行開闢的額外空間。算法複雜性:算法本身的複雜度二、七種排序算法1、冒泡排序2、選擇排序3、直接插入排序4

原创 GPU存儲系統

GPU存儲系統一、概述物理概念:SP、Warp和SM的關係邏輯概念:Thread、Block和Grid的關係二、GPU的存儲結構寄存器Local memory共享內存常量內存 一、概述 物理概念:SP、Warp和SM的關係 一個

原创 【C++拾遺之六】解析配置文件

文章目錄1、ifstream 打開文件流2、getline()逐行讀取配置文件3、解析參數4、源碼 1、ifstream 打開文件流 char cfg_path[] = "encode.cfg"; std::ifstream fi

原创 數據結構之圖

圖一、基本概念二、圖的存儲結構三、算法遍歷:從圖中某一頂點出發,依次訪問圖中其餘頂點,且每個頂點僅被訪問一次。深度優先遍歷(DFS)廣度優先遍歷(BFS)最小生成樹算法最短路徑算法關鍵路徑算法 數據結構之線性表 數據結構之鏈表

原创 【C++拾遺之四】getline函數

文章目錄1、getline(std::ifstream* fin, std::string str)函數2、substr(pos, n) 1、getline(std::ifstream* fin, std::string str)