

<feed xmlns="http://www.w3.org/2005/Atom">
  <id>/</id>
  <title>Chirpy</title>
  <subtitle>A minimal, responsive and feature-rich Jekyll theme for technical writing.</subtitle>
  <updated>2026-05-06T16:38:32+08:00</updated>
  <author>
    <name>TamXie</name>
    <uri>/</uri>
  </author>
  <link rel="self" type="application/atom+xml" href="/feed.xml"/>
  <link rel="alternate" type="text/html" hreflang="zh-CN"
    href="/"/>
  <generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator>
  <rights> © 2026 TamXie </rights>
  <icon>/assets/img/favicons/favicon.ico</icon>
  <logo>/assets/img/favicons/favicon-96x96.png</logo>


  
  <entry>
    <title>File System</title>
    <link href="/posts/file-system/" rel="alternate" type="text/html" title="File System" />
    <published>2010-02-24T00:00:00+08:00</published>
  
    <updated>2010-02-24T00:00:00+08:00</updated>
  
    <id>/posts/file-system/</id>
    <content type="text/html" src="/posts/file-system/" />
    <author>
      <name>TamXie</name>
    </author>

  
    
  

  <summary>一、引言         在长达数十年的时间里，C++ 标准库一直缺失对操作系统底层文件系统进行直接操作的能力。C++ 的文件流（std::fstream）只能处理文件内容的读写，而对于“创建一个目录”、“获取文件大小”、“遍历文件夹”这些基础需求，开发者却束手无策。      C++17 正式将基于 Boost.Filesystem 的 std::filesystem 纳入标准库，彻底终结了文件系统操作在 C++ 中极度碎片化的历史。本文将详细、严谨地剖析 std::filesystem 的核心抽象模型 、错误处理机制，以及它在现代 C++ 工程中的标准实践。   二、历史痛点：平台壁垒与脆弱的字符串拼接         在 C++17 之前，由于文件系统高度依赖操作系统的底层实现，开发者面临着巨大的跨平台困境。      C++17 之前的工程梦魇：   碎片化的系统 API：要...</summary>

  </entry>

  
  <entry>
    <title> 音视频编解码常用知识点</title>
    <link href="/posts/%E9%9F%B3%E8%A7%86%E9%A2%91%E7%BC%96%E8%A7%A3%E7%A0%81%E5%B8%B8%E7%94%A8%E7%9F%A5%E8%AF%86%E7%82%B9/" rel="alternate" type="text/html" title=" 音视频编解码常用知识点" />
    <published>2010-02-24T00:00:00+08:00</published>
  
    <updated>2010-02-24T00:00:00+08:00</updated>
  
    <id>/posts/%E9%9F%B3%E8%A7%86%E9%A2%91%E7%BC%96%E8%A7%A3%E7%A0%81%E5%B8%B8%E7%94%A8%E7%9F%A5%E8%AF%86%E7%82%B9/</id>
    <content type="text/html" src="/posts/%E9%9F%B3%E8%A7%86%E9%A2%91%E7%BC%96%E8%A7%A3%E7%A0%81%E5%B8%B8%E7%94%A8%E7%9F%A5%E8%AF%86%E7%82%B9/" />
    <author>
      <name>TamXie</name>
    </author>

  
    
  

  <summary>音视频编解码常用知识点  视频播放器原理  视频播放器播放一个互联网上的视频文件，需要经过以下几个步骤：解协议，解封装，解码视音频，视音频同步。如果播放本地文件则不需要解协议，为以下几个步骤：解封装，解码视音频，视音频同步。他们的过程如图所示。            解协议的作用，就是将流媒体协议的数据，解析为标准的相应的封装格式数据。视音频在网络上传播的时候，常常采用各种流媒体协议，例如HTTP，RTMP，或是MMS等等。这些协议在传输视音频数据的同时，也会传输一些信令数据。这些信令数据包括对播放的控制（播放，暂停，停止），或者对网络状态的描述等。解协议的过程中会去除掉信令数据而只保留视音频数据。例如，采用RTMP协议传输的数据，经过解协议操作后，输出FLV格式的数据。           解封装的作用，就是将输入的封装格式的数据，分离成为音频流压缩编码数据和视频流压缩编码数据。封...</summary>

  </entry>

  
  <entry>
    <title> 音视频同步算法</title>
    <link href="/posts/%E9%9F%B3%E8%A7%86%E9%A2%91%E5%90%8C%E6%AD%A5%E7%AE%97%E6%B3%95/" rel="alternate" type="text/html" title=" 音视频同步算法" />
    <published>2010-02-24T00:00:00+08:00</published>
  
    <updated>2010-02-24T00:00:00+08:00</updated>
  
    <id>/posts/%E9%9F%B3%E8%A7%86%E9%A2%91%E5%90%8C%E6%AD%A5%E7%AE%97%E6%B3%95/</id>
    <content type="text/html" src="/posts/%E9%9F%B3%E8%A7%86%E9%A2%91%E5%90%8C%E6%AD%A5%E7%AE%97%E6%B3%95/" />
    <author>
      <name>TamXie</name>
    </author>

  
    
  

  <summary>音视频同步算法  本文是对音视频同步算法的总结，以阅读ffplay.c源码为基础，结合各位博主的分析， 逐渐深入理解同步算法原理， 并根据自身理解， 编写一套简易的视频播放器，用于验证音视频同步算法。  ffplay简介  ffplay是FFmpeg提供的开源播放器，基于FFmpeg和SDL进行视频播放， 是研究视频播放器，音视频同步算法的很好的示例。ffplay源码涉及到很多音视频的基本概念， 在基础理论缺乏的情况下分析起来并不容易，在分析ffplay源码之前，要对音视频的相关概念有所了解，关于音视频的基本知识，在网络上有很多，也可以参考我的其他文章，这些也是我在学习中的经验总结。  在ffmpeg4.1.3中，ffplay源码约3700行，非常的小巧，关于ffplay原理分析的可以阅读雷霄骅的文章。  比较系统的介绍了ffplay，是学习ffplay很好的资料。  这里不再详细的...</summary>

  </entry>

  
  <entry>
    <title> 音视频同步原理及实现</title>
    <link href="/posts/%E9%9F%B3%E8%A7%86%E9%A2%91%E5%90%8C%E6%AD%A5%E5%8E%9F%E7%90%86%E5%8F%8A%E5%AE%9E%E7%8E%B0/" rel="alternate" type="text/html" title=" 音视频同步原理及实现" />
    <published>2010-02-24T00:00:00+08:00</published>
  
    <updated>2010-02-24T00:00:00+08:00</updated>
  
    <id>/posts/%E9%9F%B3%E8%A7%86%E9%A2%91%E5%90%8C%E6%AD%A5%E5%8E%9F%E7%90%86%E5%8F%8A%E5%AE%9E%E7%8E%B0/</id>
    <content type="text/html" src="/posts/%E9%9F%B3%E8%A7%86%E9%A2%91%E5%90%8C%E6%AD%A5%E5%8E%9F%E7%90%86%E5%8F%8A%E5%AE%9E%E7%8E%B0/" />
    <author>
      <name>TamXie</name>
    </author>

  
    
  

  <summary>音视频同步原理及实现  本文主要描述音视频同步原理，及常见的音视频同步方案，并以代码示例，展示如何以音频的播放时长为基准，将视频同步到音频上以实现视音频的同步播放。内容如下：     1.音视频同步简单介绍   2.DTS和PTS简介            2.1I/P/B帧       2.2时间戳DTS、PTS           3.常用同步策略   4.音视频同步简单示例代码   1.音视频同步简单介绍 对于一个播放器，一般来说，其基本构成均可划分为以下几部分： 数据接收（网络/本地）-&amp;gt;解复用-&amp;gt;音视频解码-&amp;gt;音视频同步-&amp;gt;音视频输出  基本框架如下图所示：    为什么需要音视频同步？ 媒体数据经过解复用流程后，音频/视频解码便是独立的，也是独立播放的。而在音频流和视频流中，其播放速度都是有相关信息指定的：     视频：帧率，表示视频一秒显示的帧...</summary>

  </entry>

  
  <entry>
    <title> 视频码流分析工具</title>
    <link href="/posts/%E8%A7%86%E9%A2%91%E7%A0%81%E6%B5%81%E5%88%86%E6%9E%90%E5%B7%A5%E5%85%B7/" rel="alternate" type="text/html" title=" 视频码流分析工具" />
    <published>2010-02-24T00:00:00+08:00</published>
  
    <updated>2010-02-24T00:00:00+08:00</updated>
  
    <id>/posts/%E8%A7%86%E9%A2%91%E7%A0%81%E6%B5%81%E5%88%86%E6%9E%90%E5%B7%A5%E5%85%B7/</id>
    <content type="text/html" src="/posts/%E8%A7%86%E9%A2%91%E7%A0%81%E6%B5%81%E5%88%86%E6%9E%90%E5%B7%A5%E5%85%B7/" />
    <author>
      <name>TamXie</name>
    </author>

  
    
  

  <summary>视频码流分析工具  Elecard: www.elecard.com/en/index.html    CodecVisa： www.codecian.com    Intel Video Pro Analyzer 2014: software.intel.com  该工具是专门针对最新的H.265和VP9的              原文作者： 雷霄骅</summary>

  </entry>

</feed>


