原创 FFmpeg源碼剖析-解碼:av_read_frame()

av_read_frame()函數位於libavformat/utils.c 1. 函數概述 讀取輸入流的一幀數據; 2. 函數調用圖 ​​ 3. 僞碼分析 4. 代碼分析 av_read_frame()它的聲明(libavformat

原创 FFmpeg源碼剖析-通用:ffmpeg_parse_options()

ffmpeg_parse_options()函數位於ffmpeg_opt.c 1. 函數概述 它的功能主要有三個, 解析命令行參數; 打開輸入文件,並解析數據,找到匹配每一個視頻,音頻,數據流的解碼器; 打開輸出文件,並設置好輸出的

原创 FFmpeg源碼剖析-通用:get_input_packet()

get_input_packet()位於ffmpeg.c 1. 函數概述 調用av_read_frame()函數從文件中讀取一個packet, 對視頻來說,一個packet是一幀;對音頻來說,一個packet是多幀; 2. 函數調用圖 ​

原创 Google protocol-buffer詳解與示例應用

1. Protocol Buffer 簡介 Google Protocol Buffer( 簡稱 Protobuf) 是 Google 公司內部的混合語言數據標準, 目前已經正在使用的有超過 48,162 種報文格式定義和超過 12,18

原创 gtest應用指南

前言 gtest是Google的開源C++單元測試框架,是遵循 New BSD License (可用作商業用途)的開源項目。 google內部的大多數C++代碼都已經使用這個測試框架進行單測, 知名的使用gtest進行測試的項目有chr

原创 如何將libavcodec也靜態編譯並可鏈接到.so中

1 問題與解決 使用ffmpeg SDK的靜態庫進行鏈接到動態庫時,會出現如下的報錯: /usr/bin/ld: /usr/local/lib/libavformat.a(allformats.o): relocation R_X86_6

原创 FFmpeg新舊接口對照使用一覽

從FFmpeg 3.0 開始 , 使用了很多新接口, 在一些基本用法上,編譯會看見很多的warning,類似 “ warning: ‘AVStream::codec’ is deprecated (declared at /usr/loc

原创 FFmpeg源碼剖析-框架:process_input()

process_input()函數位於ffmpeg.c 1. 函數概述 它的作用的從文件中讀取一個packet,並解碼; 2. 函數調用結構圖 ​ 3. 代碼分析 /*  * 它是在open_input_file()->add_input

原创 程序人生的四個象限和兩條主線

零 爲什麼我們要自己做職業生涯規劃? ​記得電影《社交網絡》裏邊,CFO同學在知道自己股權被稀釋時說了一句話,“我以爲那些律師是我的律師。” 其實我們大多數人對HR幾乎都存在類似的誤解—— 你以爲她是你的HR,其實她只是公司的HR。

原创 FFmpeg源碼剖析-框架:transcode()

transcode()函數位於ffmpeg.c 1. 函數概述 它是ffmpeg的轉碼的主函數。工作模式是每次讀取一個packet,並處理。可見《 FFmpeg情景分析 1. FFmpeg轉碼框架解析》 2. 函數框架圖 ​ 3. 函

原创 FFmpeg源碼剖析-通用:av_register_all()

av_register_all()函數的定義在 libavformat/allformats.c, 它的作用的註冊ffmpeg的各種mux和demu

原创 FFmpeg源碼剖析-通用:avcodec_register_all()

avcodec_register_all()的函數定義位於libavcodec/allcodecs.c。 它是用來註冊編解碼器的函數,只有調用了該函

原创 我理解的互聯網革命(2013)

這個題目是我在地鐵上思考要如何在互聯網方向上創業時想到的。 因爲要在某個行業創業,首先需要解決的是創業者如何理解這個行業。 這個理解可以說,最終決定

原创 FFmpeg-4.0 的filter機制的架構與實現.之一 Filter原理

一、FFmpeg filter的原理 1. 引言及示例 FFmpeg中的libavfilter提供了一整套的基於filter的機制。 filter本身是一個插件的形式,可以快速的組裝需要的效果。 比如下面的filter,可以實現視頻的水平

原创 FFmpeg-4.0 的filter機制的架構與實現.之二 結構體關係與定義

4. Filter的結構體關係圖與定義 4.1 結構體間的關係圖 filter涉及的結構體,主要包括: > FilterGraph, AVFilterGraph > InputFilter, InputStream, OutputFilt