<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Video on Ito Archives</title>
    <link>https://itoschum.me/tags/video/</link>
    <description>Recent content in Video on Ito Archives</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Sat, 16 Oct 2021 15:32:00 -0400</lastBuildDate>
    <atom:link href="https://itoschum.me/tags/video/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Basic Syntax of FFmpeg</title>
      <link>https://itoschum.me/steamingtime/essay_02/</link>
      <pubDate>Sat, 16 Oct 2021 15:32:00 -0400</pubDate>
      <guid>https://itoschum.me/steamingtime/essay_02/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://itoschum.me/images/STEAMingTime/STEAMingTime_logo2.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Since last essay, we have known the basic concepts of media files. Then we need to solve some real-world problems by using the command-line tool &lt;code&gt;ffmpeg&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;/h2&gt;&#xA;&lt;p&gt;Before we gets our hands on the actual commands, let us review the procedure of FFmpeg processing media files:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt; _______              ______________&#xA;|       |            |              |&#xA;| input |  demuxer   | encoded data |   decoder&#xA;| file  | ---------&amp;gt; | packets      | -----+&#xA;|_______|            |______________|      |&#xA;                                           v&#xA;                                       _________&#xA;                                      |         |&#xA;                                      | decoded |&#xA;                                      | frames  |&#xA;                                      |_________|&#xA; ________             ______________       |&#xA;|        |           |              |      |&#xA;| output | &amp;lt;-------- | encoded data | &amp;lt;----+&#xA;| file   |   muxer   | packets      |   encoder&#xA;|________|           |______________|&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;blockquote&gt;&#xA;&lt;p&gt;Refer to &lt;a href=&#34;https://ffmpeg.org/ffmpeg.html&#34;&gt;FFmpeg - Documentation&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Intro to FFmpeg &amp; Basic Concepts of Videos</title>
      <link>https://itoschum.me/steamingtime/essay_01/</link>
      <pubDate>Sat, 02 Oct 2021 02:00:00 -0400</pubDate>
      <guid>https://itoschum.me/steamingtime/essay_01/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://itoschum.me/images/STEAMingTime/STEAMingTime_logo2.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Did you once meet the situation that you wanted to upload some videos you just edited to some website, but told the format is not supported? Or you once wanted to play some video you just downloaded, but told the format is not supported by the video player? Then we may need the help of FFmpeg to solve that issue.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Converting Video to ASCII via LibCACA</title>
      <link>https://itoschum.me/logs/log_05/</link>
      <pubDate>Thu, 20 Dec 2018 15:54:00 +0800</pubDate>
      <guid>https://itoschum.me/logs/log_05/</guid>
      <description>&lt;h2 id=&#34;method-1-screen-recording&#34;&gt;Method 1: Screen Recording&lt;/h2&gt;&#xA;&lt;p&gt;在 CPU 性能足够的情况下，可以通过录制屏幕的方式来获得 LibCACA 输出的 ASCII 视频&lt;/p&gt;&#xA;&lt;h3 id=&#34;1-list-devices&#34;&gt;1. List Devices&lt;/h3&gt;&#xA;&lt;p&gt;列举出 AVFoundation 的输入设备&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;ffmpeg -f avfoundation -list_devices true -i &amp;#34;&amp;#34;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h3 id=&#34;2-rec-screen&#34;&gt;2. Rec Screen&lt;/h3&gt;&#xA;&lt;p&gt;在第一步的基础上，使用 FFmpeg 选择需要的输入设备进行录制&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;# e.g.&#xA;ffmpeg -y -f avfoundation \&#xA;-i 1:3 -framerate 30 \&#xA;-c:v libx264 -r 30 -pix_fmt uyvy422 \&#xA;-preset slow -crf 19 \&#xA;-c:a aac -b:a 192k \&#xA;&amp;#34;$INPUT $(date &amp;#34;+%Y-%m-%d %H-%M-%S&amp;#34;).mp4&amp;#34;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h3 id=&#34;-rec-terminal&#34;&gt;* Rec Terminal&lt;/h3&gt;&#xA;&lt;p&gt;另一种办法是录制终端字符，在此使用现成的终端录制项目:&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
