使用 FFmpeg 庫分離多媒體檔案中的 H.264 視頻碼流
前言 延續音頻碼流分離的主題,本文聚焦於 H.264 視頻碼流的提取。同樣基於 av_read_frame() 獲取 AVPacket,但 H.264 在 FL
使用 FFmpeg 庫分離多媒體檔案中的音頻碼流
前言 在使用 FFmpeg 類庫進行多媒體開發時,開發者常需從容器格式中提取原始音頻碼流。本文詳細記錄了針對不同容器格式(MP3、AAC、TS、FLV、MP4)
FFmpeg 核心結構體關係圖解:協議、封裝、解碼、數據流
前言 FFmpeg 結構體眾多,初學者易迷失。本文將核心結構體按功能分為四類,梳理它們的層級關係與數據流向,附官方架構圖說明。 四大類核心結構體 a) 解協
Linux C 獲取 TCP Socket 客戶端 IP 與端口
場景 在 Linux 下編寫 TCP 服務器時,`accept` 返回的連接套接字 `sockconn` 不直接包含客戶端地址。需調用 `getpeername
C/C++ 中各類型與零值比較的最佳實踐
前言 在 C/C++ 開發中,「與零比較」看似簡單,實則暗藏陷阱。bool、int、float、指針四類型的零值語義各異,比較方式稍有不慎即引發邏輯錯誤。本文梳
C++ 字符串處理實戰:提取數字、合併、統計、刪除與替換子串
前言 字符串操作是 C/C++ 程式設計的基礎功夫,也是面試高頻考點。本文匯總五大實用場景:從字符串提取整數、用指針合併兩字符串、統計字母出現次數、刪除指定子串
經典演算法題目詳解:漢諾塔、約瑟夫環、費波那契數列與位運算技巧
前言 在計算機科學與程式設計面試中,幾個經典的演算法問題反覆出現,它們不僅考驗邏輯思維,更涵蓋了遞歸、位運算、陣列操作等核心技能。本文將系統講解六大高頻題目:漢
大話設計模式學習筆記:簡單工廠模式 C++ 實作與 UML 解析
簡單工廠模式屬創建型模式,由一個工廠類別根據參數決定具體產品類別的實例化。本文以計算機為例,展示 C++ 實作、UML 類別圖對應、擴展性分析與現代 C++ 改
Linux 嵌入式開發 Day 02:C 語言基礎語法、變數、輸出輸入與程式結構
嵌入式 Linux 開發第二天:從程式設計基本觀念出發,涵蓋 C 語言語法規範、資料型別、變數宣告初始化、printf 格式化輸出、標準函數呼叫、註解風格與程式
Linux 嵌入式開發入門 Day 01:檔案系統、路徑、基礎指令與 vi 編輯器
嵌入式 Linux 開發第一天筆記:建立檔案系統、路徑、終端基本操作、目錄管理指令與 vi 編輯器三模式切換的完整概念地圖。 核心概念 多用戶系統:L
C++ 二級指標深度解析:指標的指標、參數傳遞修改指向與記憶體圖解
二級指標(T**)是「指向指標的指標」,除能修改所指物件值外,更能修改一級指標的指向。本文從記憶體模型出發,對比一級/二級指標作為函數參數的語意差異,提供完整圖
面試經典:Set/Reset 鎖存器電路設計與 Verilog 實作
設計一個具有 Set、Reset 輸入與單一輸出 Y 的邏輯電路:Set=1 時 Y 置高;Reset=1 時 Y 置低;其他情況保持現狀。這是經典的 SR 鎖
區間最大約數個數問題:窮舉法與優化策略 C 實作
給定區間 [a, b] (a ≤ b),找出約數個數最多的整數及其約數個數。本文提供基礎窮舉法 O((b-a+1)√b) 實作,並討論篩法預計算優化至 O(N
書頁數字統計問題:遞迴分解法計算 0-9 各數字出現次數
給定書籍總頁數 page,統計頁碼 1 到 page 中數字 0-9 各自出現的總次數。本文提供遞迴分解演算法,時間複雜度 O(log10 page),附完整
C++ 代理模式實戰:Surrogate 類實現異構對象統一存儲與多態調用
C++ 代理模式實戰:Surrogate 類實現異構對象統一存儲與多態調用 前言 當需要在同一容器中存儲不同派生類對象並統一調用介面時,代理/包裝類 是經典解
Qt QListWidget 批量刪除選中項目正確姿勢:while 迴圈配合 takeItem
Qt QListWidget 批量刪除選中項目正確姿勢:while 迴圈配合 takeItem 前言 在 Qt 中遍歷容器並刪除元素是經典陷阱:迭代器失效、索
C++ 智能指針手寫實現:引用計數管理動態記憶體完整教程
C++ 智能指針手寫實現:引用計數管理動態記憶體完整教程 前言 C++ 原始指針易導致記憶體洩漏、重複釋放、懸空指針。智能指針通過 RAII + 引用計數自動