<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>ソフトウェアTips on えやみぐさ</title>
    <link>https://blog.aoirint.com/categories/%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2tips/</link>
    <description>Recent content in ソフトウェアTips on えやみぐさ</description>
    <generator>Hugo -- 0.164.0</generator>
    <language>ja</language>
    <lastBuildDate>Mon, 26 Jan 2026 19:30:00 +0900</lastBuildDate>
    <atom:link href="https://blog.aoirint.com/categories/%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2tips/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Discord Streamkit Overlay Voice Widget 自分が接続中のときだけ表示する OBS用カスタムCSS</title>
      <link>https://blog.aoirint.com/entry/2026/discord_streamkit_overlay_voice_widget_show_only_when_joining/</link>
      <pubDate>Mon, 26 Jan 2026 19:30:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2026/discord_streamkit_overlay_voice_widget_show_only_when_joining/</guid>
      <description>&lt;p&gt;Discord Streamkit Overlay の Voice Widget を、自分が対象のボイスチャンネルに接続（参加）しているときだけ表示するように、OBSのブラウザソースにカスタムCSSを設定します。&lt;/p&gt;
&lt;p&gt;Among Usの生存者VCと霊界VCの自動切り替えや、メンバー入れ替えありの複数卓VCの行き来などで便利です。&lt;/p&gt;
&lt;p&gt;すでに他のカスタムCSSを使用している場合は、コードの統合が必要で複雑なため、この記事では対象としません。
利用しているカスタムCSSのジェネレーターなどがあれば、対応する設定がないか確認してください。&lt;/p&gt;
&lt;h2 id=&#34;環境&#34;&gt;環境&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Windows 11&lt;/li&gt;
&lt;li&gt;OBS Studio 32&lt;/li&gt;
&lt;li&gt;Discord Streamkit Overlay Voice Widget (2026年1月26日時点)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;手順&#34;&gt;手順&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;https://streamkit.discord.com/overlay&#34;&gt;Discord Streamkit Overlay&lt;/a&gt; にアクセスし、通常通りVoice WidgetのURLを取得します。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;OBSを開き、通常通り、ブラウザソースとしてVoice WidgetのURLを追加します。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;追加したブラウザソースのプロパティを開き、カスタムCSS欄に以下のコードを追加する形で貼り付けます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-css&#34; data-lang=&#34;css&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;/* ここから */&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;/* うまく動作しなくなったら、以下を削除してください */&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;/* 自分がボイスチャンネルに接続していないときに、ボイスウィジェットを非表示にするカスタムCSS */&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;body&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#66d9ef&#34;&gt;opacity&lt;/span&gt;: &lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#66d9ef&#34;&gt;transition&lt;/span&gt;: &lt;span style=&#34;color:#66d9ef&#34;&gt;opacity&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;150&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;ms&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;linear&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;body&lt;/span&gt;:&lt;span style=&#34;color:#a6e22e&#34;&gt;not&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;(&lt;/span&gt;:&lt;span style=&#34;color:#a6e22e&#34;&gt;has&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;([&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;data-userid&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;YOUR_USER_ID_HERE&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;]))&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#66d9ef&#34;&gt;opacity&lt;/span&gt;: &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;/* ここまで */&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Discord（デスクトップアプリケーション）の設定を開き、「詳細設定」から、「開発者モード」を有効にします。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Discordウインドウの左下にある自身のアイコンをクリックして、「ユーザーIDをコピー」を選択し、自分のユーザーID（数値）をクリップボードにコピーします。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Discord の設定を開き、「詳細設定」から、「開発者モード」を無効に戻します。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;カスタムCSSのうち、&lt;code&gt;YOUR_USER_ID_HERE&lt;/code&gt; の部分を、手順5でコピーした自分のユーザーIDに置き換えます。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;複数のボイスチャンネルで利用したい場合は、同じ手順を繰り返して、各ブラウザソースにカスタムCSSを設定します。&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;設定例&#34;&gt;設定例&lt;/h3&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-css&#34; data-lang=&#34;css&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;/* OBSのデフォルトカスタムCSS */&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;body&lt;/span&gt; { &lt;span style=&#34;color:#66d9ef&#34;&gt;background-color&lt;/span&gt;: rgba(&lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;); &lt;span style=&#34;color:#66d9ef&#34;&gt;margin&lt;/span&gt;: &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;px&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;auto&lt;/span&gt;; &lt;span style=&#34;color:#66d9ef&#34;&gt;overflow&lt;/span&gt;: &lt;span style=&#34;color:#66d9ef&#34;&gt;hidden&lt;/span&gt;; }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;/* ここから */&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;/* うまく動作しなくなったら、以下を削除してください */&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;/* 自分がボイスチャンネルに接続していないときに、ボイスウィジェットを非表示にするカスタムCSS */&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;body&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#66d9ef&#34;&gt;opacity&lt;/span&gt;: &lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#66d9ef&#34;&gt;transition&lt;/span&gt;: &lt;span style=&#34;color:#66d9ef&#34;&gt;opacity&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;150&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;ms&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;linear&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;body&lt;/span&gt;:&lt;span style=&#34;color:#a6e22e&#34;&gt;not&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;(&lt;/span&gt;:&lt;span style=&#34;color:#a6e22e&#34;&gt;has&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;([&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;data-userid&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;1234567890&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;]))&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#66d9ef&#34;&gt;opacity&lt;/span&gt;: &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;/* ここまで */&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;トラブル時の対処&#34;&gt;トラブル時の対処&lt;/h2&gt;
&lt;p&gt;Discord Streamkit Overlayの仕様変更やOBSのアップデートなどにより、うまく動作しなくなる場合があります。&lt;/p&gt;</description>
    </item>
    <item>
      <title>GIMP 文字の縁取り</title>
      <link>https://blog.aoirint.com/entry/2025/gimp_text_outline/</link>
      <pubDate>Sat, 11 Oct 2025 23:40:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2025/gimp_text_outline/</guid>
      <description>&lt;p&gt;GIMPで文字の縁取りをする方法をメモしておきます。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;※ 縁取りをしたあと、テキストの内容を変更した場合、再度縁取りの手順をやり直す必要があります。&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id=&#34;バージョン情報&#34;&gt;バージョン情報&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Windows 11&lt;/li&gt;
&lt;li&gt;GIMP 3.0.4&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;手順&#34;&gt;手順&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;キャンバスサイズが小さい場合、縁取りが切れることがあるので、目的の文字サイズに合わせてキャンバスサイズを十分広く設定します。ここでは、フォントサイズ 200ptに対して、幅 1920px、高さ 1080px に設定します。&lt;/li&gt;
&lt;li&gt;フォントを設定して、テキストを入力します。ここでは、フォントは源柔ゴシック、フォントサイズ 200pt、文字色は白に設定します。&lt;/li&gt;
&lt;li&gt;テキストレイヤーをキャンバスの隅に作成した場合、縁取りが切れることがあるので、ツールボックスから「移動」ツールを選択し、テキストレイヤーをキャンバスの中央寄りに移動します。&lt;/li&gt;
&lt;li&gt;テキストレイヤーを右クリックして、「レイヤーを画像サイズに合わせる」を選択します。&lt;/li&gt;
&lt;li&gt;テキストレイヤーを右クリックして、「不透明部分を選択範囲に」を選択します。&lt;/li&gt;
&lt;li&gt;メニューから「選択」→「選択範囲の拡大」を選択し、ダイアログで希望する縁取りの太さ（ここでは 10px）を指定して「OK」をクリックします。&lt;/li&gt;
&lt;li&gt;レイヤーパネルを右クリックして、「新しいレイヤーの追加」を選択して、レイヤーを追加します。「塗りつぶし色」は「透明」に設定します。このレイヤーはテキストレイヤーの下に配置します。&lt;/li&gt;
&lt;li&gt;ツールボックスから「塗りつぶし」ツールを選択します。「塗りつぶす範囲」を「選択範囲」に設定します。描画色に縁取りしたい色（ここでは黒）を設定します。&lt;/li&gt;
&lt;li&gt;レイヤーパネルから追加したレイヤーを選択して、選択範囲内をクリックして塗りつぶします。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;二重の縁取り&#34;&gt;二重の縁取り&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;上記の手順で一重の縁取りを作成して、最後の選択範囲が残った状態にします。&lt;/li&gt;
&lt;li&gt;メニューから「選択」→「選択範囲の拡大」を選択し、ダイアログで希望する縁取りの太さ（ここでは 10px）を指定して「OK」をクリックします。&lt;/li&gt;
&lt;li&gt;新しいレイヤーを作成し、前の縁取りレイヤーの下に配置します。&lt;/li&gt;
&lt;li&gt;ツールボックスから「塗りつぶし」を選択し、描画色に二重目の縁取りしたい色（ここでは白）を設定します。&lt;/li&gt;
&lt;li&gt;レイヤーパネルから追加したレイヤーを選択して、選択範囲内をクリックして塗りつぶします。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;縁取りされた文字の回転&#34;&gt;縁取りされた文字の回転&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;レイヤーパネルを右クリックして、「新しいレイヤーグループ」を選択して、レイヤーグループを作成します。&lt;/li&gt;
&lt;li&gt;テキストレイヤー、縁取りのレイヤーをすべて選択して、レイヤーグループにドラッグ＆ドロップして、レイヤーグループに追加します。&lt;/li&gt;
&lt;li&gt;メニューから「レイヤー」→「変形」→「任意の回転」を選択します。&lt;/li&gt;
&lt;li&gt;キャンバス内をクリックして、回転ダイアログで希望する角度を指定して「回転」をクリックします。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;縁取りされた文字の移動&#34;&gt;縁取りされた文字の移動&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;レイヤーパネルを右クリックして、「新しいレイヤーグループ」を選択して、レイヤーグループを作成します。&lt;/li&gt;
&lt;li&gt;テキストレイヤー、縁取りのレイヤーをすべて選択して、レイヤーグループにドラッグ＆ドロップして、レイヤーグループに追加します。&lt;/li&gt;
&lt;li&gt;ツールボックスから「移動」ツールを選択します。&lt;/li&gt;
&lt;li&gt;レイヤーパネルから作成したレイヤーグループを選択します。&lt;/li&gt;
&lt;li&gt;Shift キーを押しながら、キャンバス内でドラッグして移動します。&lt;/li&gt;
&lt;/ol&gt;</description>
    </item>
    <item>
      <title>PowerShell, ディレクトリ内のファイルの拡張子をまとめてリネームする</title>
      <link>https://blog.aoirint.com/entry/2024/powershell_change_file_extension_in_a_directory/</link>
      <pubDate>Sun, 10 Mar 2024 19:20:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2024/powershell_change_file_extension_in_a_directory/</guid>
      <description>&lt;ul&gt;
&lt;li&gt;Windows 11&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ディレクトリ内の拡張子&lt;code&gt;.jfif&lt;/code&gt;のファイルを拡張子&lt;code&gt;.jpg&lt;/code&gt;にリネームする。
以下のコマンドでは、直下のファイルだけが対象となり、サブディレクトリ以下は対象とならない。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-powershell&#34; data-lang=&#34;powershell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Dir *.jfif | Rename-Item -NewName { [&lt;span style=&#34;color:#66d9ef&#34;&gt;io.path&lt;/span&gt;]::ChangeExtension($_.name, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;jpg&amp;#34;&lt;/span&gt;) }
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;参考&#34;&gt;参考&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://stackoverflow.com/questions/12120326/how-do-i-change-the-extension-of-many-files-in-a-directory&#34;&gt;bash - How do I change the extension of many files in a directory? - Stack Overflow&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://stackoverflow.com/questions/57041671/how-to-add-a-suffix-to-all-the-files&#34;&gt;powershell - How to add a suffix to all the files - Stack Overflow&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Windows 11, ChromeでJPEG画像を保存するときの拡張子をjfifからjpgに変更する</title>
      <link>https://blog.aoirint.com/entry/2024/windows_chrome_save_jpeg_as_jpg_instead_of_jfif/</link>
      <pubDate>Sun, 10 Mar 2024 19:20:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2024/windows_chrome_save_jpeg_as_jpg_instead_of_jfif/</guid>
      <description>&lt;ul&gt;
&lt;li&gt;Windows 11&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Windows版のGoogle Chromeで&lt;code&gt;image/jpeg&lt;/code&gt;の画像をダウンロードしようとすると、ファイル名の拡張子が&lt;code&gt;.jfif&lt;/code&gt;として保存される場合がある。
他のアプリケーションやブラウザ、一部のWebサイト、OSでは&lt;code&gt;image/jpeg&lt;/code&gt;が&lt;code&gt;.jpg&lt;/code&gt;で保存される場合もあり、同じ形式にもかかわらず拡張子が混在してしまうため、管理が面倒になる。
また、&lt;code&gt;.jfif&lt;/code&gt;拡張子をJPEG画像として認識することに対応してないプログラムがプレビューを生成しなかったり、
Webアプリケーションがファイルの種類の判別に失敗してContent-Typeを&lt;code&gt;application/octet-stream&lt;/code&gt;として扱い、リンクをクリックしたときにブラウザで開くのではなくダウンロードされるなど、不便になることがある。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;regedit&lt;/code&gt;を使って以下のレジストリ値を書き換えることで、新規に&lt;code&gt;image/jpeg&lt;/code&gt;の画像をダウンロードするときの拡張子を変更できる。予期しない影響が出る可能性があるため、変更する場合は注意すること。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;HKEY_CURRENT_USER\Software\Classes\MIME\Database\Content Type\image/jpeg&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;拡張子をjpgに変更&#34;&gt;拡張子をjpgに変更&lt;/h2&gt;
&lt;p&gt;以下の内容を拡張子&lt;code&gt;.reg&lt;/code&gt;のテキストファイルとして保存し、実行することで反映できる。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-reg&#34; data-lang=&#34;reg&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Windows Registry Editor Version 5.00
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;[&lt;/span&gt;HKEY_CURRENT_USER&lt;span style=&#34;color:#66d9ef&#34;&gt;\Software\Classes\MIME\Database\Content Type\image/jpeg]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Extension&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;.jpg&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;拡張子をjfifに戻す&#34;&gt;拡張子をjfifに戻す&lt;/h2&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-reg&#34; data-lang=&#34;reg&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Windows Registry Editor Version 5.00
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;[&lt;/span&gt;HKEY_CURRENT_USER&lt;span style=&#34;color:#66d9ef&#34;&gt;\Software\Classes\MIME\Database\Content Type\image/jpeg]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Extension&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;.jfif&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;すでにダウンロード済みのファイルの拡張子を変更する&#34;&gt;すでにダウンロード済みのファイルの拡張子を変更する&lt;/h2&gt;
&lt;p&gt;PowerShellを使ってまとめてリネームするには、以下の記事を参照。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://blog.aoirint.com/entry/2024/powershell_change_file_extension_in_a_directory/&#34;&gt;PowerShell, ディレクトリ内のファイルの拡張子をまとめてリネームする&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;参考&#34;&gt;参考&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://pentan.info/program/jfif2jpg.html&#34;&gt;ブラウザでJPG画像を保存しようとすると.jfifの拡張子で保存されるのを.jpgに戻す方法 - [その他] ぺんたん info&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>動画を繋げる（FFmpeg）</title>
      <link>https://blog.aoirint.com/entry/2023/concatenate_videos_ffmpeg/</link>
      <pubDate>Mon, 24 Apr 2023 16:00:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2023/concatenate_videos_ffmpeg/</guid>
      <description>&lt;ul&gt;
&lt;li&gt;Git Bash (Git for Windows) 2.32.0&lt;/li&gt;
&lt;li&gt;ffmpeg version N-109977-gaca7ef78cc-20230309&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;連番の動画ファイルを順番通りに繋げて、1つの動画ファイルにします。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;ls&lt;/code&gt;コマンドの&lt;code&gt;-v&lt;/code&gt;オプションは、自然な数字順にソートします。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ls -v *.ts | sed &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;s/.*/file &amp;#39;&amp;amp;&amp;#39;/&amp;#34;&lt;/span&gt; &amp;gt; list.txt
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ffmpeg -f concat -safe &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt; -i list.txt -c copy -map &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt; -map_metadata &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt; output.mp4
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://trac.ffmpeg.org/wiki/Concatenate&#34;&gt;Concatenate – FFmpeg&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://atmarkit.itmedia.co.jp/ait/articles/1607/05/news023.html&#34;&gt;【 ls 】コマンド（並べ替え編）――表示結果を並べ替える：Linux基本コマンドTips（29） - ＠IT&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://unix.stackexchange.com/questions/688386/add-prefix-to-line-that-is-the-pattern-of-text-after-dot-using-sed-or-other-comm&#34;&gt;Add prefix to line that is the pattern of text after dot using sed or other command - Unix &amp;amp; Linux Stack Exchange&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Waifu Diffusion 1.4 Epoch 2 &#43; 東北ずん子PJ公式イラスト LoRA作成テスト</title>
      <link>https://blog.aoirint.com/entry/2023/wd14e2_tohoku_zunko_20230404_1/</link>
      <pubDate>Sat, 15 Apr 2023 15:32:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2023/wd14e2_tohoku_zunko_20230404_1/</guid>
      <description>&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
					&lt;th&gt;&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;種類&lt;/td&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;LoRA&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;ベースモデル&lt;/td&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;Waifu Diffusion 1.4 Epoch 2&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;生成例&#34;&gt;生成例&lt;/h2&gt;
&lt;h3 id=&#34;生成例1&#34;&gt;生成例1&lt;/h3&gt;
&lt;p&gt;&lt;img alt=&#34;02112-4052543271.png&#34; loading=&#34;lazy&#34; src=&#34;https://blog.aoirint.com/entry/2023/wd14e2_tohoku_zunko_20230404_1/images/02112-4052543271.png&#34;&gt;&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-plain&#34; data-lang=&#34;plain&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&amp;lt;lora:tohoku_zunko-20230404.1-epoch-000010:1:OUTD&amp;gt;, (tohoku zunko girl:1),
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;1girl, solo, hairband, long hair, green hairband, japanese clothes, yellow eyes, smile, green hair, open mouth, upper body, white background, kimono, simple background, ahoge, very long hair, short kimono, looking at viewer,
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;masterpiece, best quality, ultra-detailed
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Negative prompt: lowres, ((bad anatomy)), ((bad hands)), text, missing finger, extra digits, fewer digits, blurry, ((mutated hands and fingers)), (poorly drawn face), ((mutation)), ((deformed face)), (ugly), ((bad proportions)), ((extra limbs)), extra face, (double head), (extra head), ((extra feet)), monster, logo, cropped, worst quality, jpeg, humpbacked, long body, long neck, ((jpeg artifacts)), deleted, old, oldest, ((censored)), ((bad aesthetic)), (mosaic censoring, bar censor, blur censor)
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Steps: 20, Sampler: DPM++ 2M Karras, CFG scale: 7, Seed: 4052543271, Size: 512x512, Model hash: 1f108d4ceb, Model: wd-1-4-anime_e2
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;生成例2&#34;&gt;生成例2&lt;/h3&gt;
&lt;p&gt;&lt;img alt=&#34;02141-3758536961.png&#34; loading=&#34;lazy&#34; src=&#34;https://blog.aoirint.com/entry/2023/wd14e2_tohoku_zunko_20230404_1/images/02141-3758536961.png&#34;&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Stable Diffusion に関するメモ</title>
      <link>https://blog.aoirint.com/entry/2023/stable_diffusion/</link>
      <pubDate>Sat, 15 Apr 2023 14:35:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2023/stable_diffusion/</guid>
      <description>&lt;p&gt;Stable Diffusionは、ミュンヘン大学のCompVis研究グループ、スタートアップ企業のStability AI、Runwayの三者が共同で2022年8月にリリースした、オープンソースの画像生成AIモデル。&lt;/p&gt;
&lt;p&gt;「プロンプト」という単語列に従って画像を生成する、Text to Imageモデルの一種。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/CompVis/stable-diffusion/tree/21f890f9da3cfbeaba8e2ac3c425ee9e998d5229#stable-diffusion-v1&#34;&gt;CompVis/stable-diffusion: A latent text-to-image diffusion model&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Creative ML OpenRAIL-Mという独自のオープンソースライセンスのもと配布され、
望ましくない使い方を禁止するいくつかの制限のもと、再利用が認められている。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/CompVis/stable-diffusion/blob/21f890f9da3cfbeaba8e2ac3c425ee9e998d5229/LICENSE&#34;&gt;CreativeML OpenRAIL-Mライセンス原文 - CompVis/stable-diffusion - GitHub&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;同時期に公開された類似の画像生成AIには、DALL·E2やMidjourneyがある。&lt;/p&gt;
&lt;p&gt;公式の有償サービスとして、DreamStudioが提供されている。&lt;/p&gt;
&lt;p&gt;Stable Diffusionは、学習済みモデルを含めてオープンソースであるため、ユーザのローカル環境や、Googleが提供するGPU環境であるColaboratory上、オープンソースコミュニティHugging Face上での推論実行が可能なほか、Fine tuningなどにより変更を加えたモデルを公開することができる。&lt;/p&gt;
&lt;p&gt;Stable Diffusion派生モデルには、アニメ風の絵・萌え絵に特化したWaifu Diffusionや、NovelAIの画像生成サービスなどがある。&lt;/p&gt;</description>
    </item>
    <item>
      <title>NovelAI リークモデルに関する調査メモ</title>
      <link>https://blog.aoirint.com/entry/2023/novelai_leak_model/</link>
      <pubDate>Sat, 15 Apr 2023 14:27:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2023/novelai_leak_model/</guid>
      <description>&lt;p&gt;NovelAIは、2022年10月に独自のStable Diffusion派生モデルによる画像生成サービスをリリースした。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://blog.novelai.net/image-generation-announcement-807b3cf0afec&#34;&gt;Image Generation has arrived, NovelAI Diffusion is here! | Medium&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;しかし、このサービスに使われているとみられる生成モデルが流出してしまった。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;animefull-final-pruned&lt;/code&gt;: sha256 &lt;code&gt;925997e9&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;animesfw-final-pruned&lt;/code&gt;: sha256 &lt;code&gt;1d4a34af&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;animevae.pt&lt;/code&gt;: sha256 &lt;code&gt;f921fb3f&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;現在では、Stable Diffusion派生の異なるモデルを合成する、モデルマージと呼ばれる手法など、
様々な手法により生まれた「NovelAIリーク派生モデル」とみられるモデルが流通してしまっている。&lt;/p&gt;
&lt;h3 id=&#34;novelaiリーク派生モデルとみられるモデルの例&#34;&gt;NovelAIリーク派生モデルとみられるモデルの例&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://civitai.com/models/9409&#34;&gt;Anything V3/V5&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://huggingface.co/andite/anything-v4.0&#34;&gt;Anything V4&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://huggingface.co/WarriorMama777/OrangeMixs&#34;&gt;OrangeMixs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;関連リンク&#34;&gt;関連リンク&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/questianon/sdupdates/discussions/1#discussioncomment-4087175&#34;&gt;Welcome to sdupdates Discussions! · questianon/sdupdates · Discussion #1 · GitHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/AUTOMATIC1111/stable-diffusion-webui/discussions/4516&#34;&gt;New (suspected) NAI model leak - AnythingV3.0 and VAE for it · AUTOMATIC1111/stable-diffusion-webui · Discussion #4516 · GitHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/AUTOMATIC1111/stable-diffusion-webui/discussions/2017&#34;&gt;Emulate NovelAI · AUTOMATIC1111/stable-diffusion-webui · Discussion #2017&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/AUTOMATIC1111/stable-diffusion-webui/discussions/7044&#34;&gt;Anything v4.5 VAE swapped · AUTOMATIC1111/stable-diffusion-webui · Discussion #7044&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://weekly.ascii.jp/elem/000/004/124/4124486/2/&#34;&gt;AIの著作権問題が複雑化 - 週刊アスキー&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://twitter.com/kuronagirai/status/1612134485306535937&#34;&gt;高杉　光一🦋 @14:59さんはTwitterを使っています: 「画像生成AI界隈でよく使われるモデルの系列調査 いわゆる&amp;quot;アスカチャレンジ&amp;quot;です 元々はNovelAIとリークNAIの関係調査に使われたものです それを手持ちのすべてのSD1.4系メジャーモデルに当てはめたのがこちらとなります 画質はご容赦を #AIart #waifudiffusion #anythingv3 #ACertainThing https://t.co/6aP8g0q4pz」 / Twitter&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Stable Diffusion &#43; LoRA に関するメモ</title>
      <link>https://blog.aoirint.com/entry/2023/stable_diffusion_lora/</link>
      <pubDate>Sat, 15 Apr 2023 13:55:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2023/stable_diffusion_lora/</guid>
      <description>&lt;p&gt;LoRA（Low-Rank Adaptation）は、2021年にEdward Huらが提案した、大規模言語モデルを効率的にFine tuningする手法。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/microsoft/LoRA&#34;&gt;https://github.com/microsoft/LoRA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://arxiv.org/abs/2106.09685&#34;&gt;https://arxiv.org/abs/2106.09685&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;An important paradigm of natural language processing consists of large-scale pretraining on general domain data and adaptation to particular tasks or domains. As we pre-train larger models, full fine-tuning, which retrains all model parameters, becomes less feasible. Using GPT-3 175B as an example – deploying independent instances of fine-tuned models, each with 175B parameters, is prohibitively expensive. We propose Low-Rank Adaptation, or LoRA, which freezes the pretrained model weights and injects trainable rank decomposition matrices into each layer of the Transformer architecture, greatly reducing the number of trainable parameters for downstream tasks. Compared to GPT-3 175B fine-tuned with Adam, LoRA can reduce the number of trainable parameters by 10,000 times and the GPU memory requirement by 3 times. LoRA performs on-par or better than finetuning in model quality on RoBERTa, DeBERTa, GPT-2, and GPT-3, despite having fewer trainable parameters, a higher training throughput, and, unlike adapters, no additional inference latency. We also provide an empirical investigation into rank-deficiency in language model adaptation, which sheds light on the efficacy of LoRA. We release a package that facilitates the integration of LoRA with PyTorch models and provide our implementations and model checkpoints for RoBERTa, DeBERTa, and GPT-2 at &lt;a href=&#34;https://github.com/microsoft/LoRA&#34;&gt;https://github.com/microsoft/LoRA&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Stable Diffusion Web UIと関連ツール・モデルに関するメモ</title>
      <link>https://blog.aoirint.com/entry/2023/stable_diffusion_webui/</link>
      <pubDate>Sun, 26 Feb 2023 16:10:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2023/stable_diffusion_webui/</guid>
      <description>&lt;h2 id=&#34;stable-diffusion-web-ui-automatic1111&#34;&gt;Stable Diffusion Web UI (AUTOMATIC1111)&lt;/h2&gt;
&lt;p&gt;推論時に使う基本となるWeb UI。専用の拡張機能を導入できる。
拡張機能の中には、推論機能の拡張のほか、訓練データの準備に使えるものもある。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/AUTOMATIC1111/stable-diffusion-webui&#34;&gt;https://github.com/AUTOMATIC1111/stable-diffusion-webui&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Current Commit Hash: &lt;code&gt;22bcc7be&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/aoirint/stable-diffusion-webui-docker&#34;&gt;https://github.com/aoirint/stable-diffusion-webui-docker&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;拡張機能&#34;&gt;拡張機能&lt;/h2&gt;
&lt;h3 id=&#34;generate-transparentimg&#34;&gt;Generate-TransparentIMG&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/hunyaramoke/Generate-TransparentIMG&#34;&gt;https://github.com/hunyaramoke/Generate-TransparentIMG&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Current Commit Hash: &lt;code&gt;6059579e&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;stable-diffusion-webui-wd14-tagger&#34;&gt;stable-diffusion-webui-wd14-tagger&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/toriato/stable-diffusion-webui-wd14-tagger&#34;&gt;https://github.com/toriato/stable-diffusion-webui-wd14-tagger&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Current Commit Hash: &lt;code&gt;3ba3a735&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;sd-webui-lora-block-weight&#34;&gt;sd-webui-lora-block-weight&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/hako-mikan/sd-webui-lora-block-weight&#34;&gt;https://github.com/hako-mikan/sd-webui-lora-block-weight&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Current Commit Hash: &lt;code&gt;9bd7fa16&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;a1111-sd-webui-locon&#34;&gt;a1111-sd-webui-locon&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/KohakuBlueleaf/a1111-sd-webui-locon&#34;&gt;https://github.com/KohakuBlueleaf/a1111-sd-webui-locon&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Current Commit Hash: &lt;code&gt;8e0ebd76&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;a1111-sd-webui-tagcomplete&#34;&gt;a1111-sd-webui-tagcomplete&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/DominikDoom/a1111-sd-webui-tagcomplete&#34;&gt;https://github.com/DominikDoom/a1111-sd-webui-tagcomplete&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Current Commit Hash: &lt;code&gt;15538336&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Not working?&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;モデル&#34;&gt;モデル&lt;/h2&gt;
&lt;h3 id=&#34;waifu-diffusion&#34;&gt;Waifu Diffusion&lt;/h3&gt;
&lt;p&gt;Stable Diffusionベースのアニメ絵に特化した学習済みモデル。&lt;a href=&#34;https://twitter.com/haruu1367&#34;&gt;haru&lt;/a&gt;氏らによって作成、公開されている。&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th style=&#34;text-align: left&#34;&gt;モデル&lt;/th&gt;
					&lt;th style=&#34;text-align: left&#34;&gt;ベースモデル&lt;/th&gt;
					&lt;th style=&#34;text-align: left&#34;&gt;リリースノート&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://huggingface.co/hakurei/waifu-diffusion-v1-3&#34;&gt;Waifu Diffusion 1.3&lt;/a&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;Stable Diffusion 1.4&lt;/td&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://gist.github.com/harubaru/f727cedacae336d1f7877c4bbe2196e1&#34;&gt;Gist&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://huggingface.co/hakurei/waifu-diffusion-v1-4&#34;&gt;Waifu Diffusion 1.4&lt;/a&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;Stable Diffusion 2.1&lt;/td&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://gist.github.com/harubaru/8581e780a1cf61352a739f2ec2eef09b&#34;&gt;Gist&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://huggingface.co/waifu-diffusion/wd-1-5-beta2&#34;&gt;Waifu Diffusion 1.5 Beta 2&lt;/a&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;Stable Diffusion 2.1&lt;/td&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://cafeai.notion.site/WD-1-5-Beta-2-Release-Notes-2852db5a9cdd456ba52fc5730b91acfd&#34;&gt;Notion&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;anything&#34;&gt;&lt;del&gt;Anything&lt;/del&gt;&lt;/h3&gt;
&lt;p&gt;Stable Diffusionベースのアニメ絵に特化した学習済みモデル。&lt;a href=&#34;https://blog.aoirint.com/entry/2023/novel_ai_leak_model/&#34;&gt;NovelAIリーク派生モデル&lt;/a&gt;とみられる。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Adobe Acrobat ReaderのUIが正しく描画されない・印刷しようとするとクラッシュする（Windows 10 21H2）</title>
      <link>https://blog.aoirint.com/entry/2022/adobe_acrobat_reader_strangely_rendered_and_crash_on_print/</link>
      <pubDate>Sat, 15 Oct 2022 19:00:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2022/adobe_acrobat_reader_strangely_rendered_and_crash_on_print/</guid>
      <description>&lt;p&gt;特定のWindows 10 21H2環境で、Adobe Acrobat ReaderのUIが正しく描画されなかったり、PDFを印刷したりするとクラッシュする症状に悩まされていた。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://twitter.com/aoirint/status/1579530951029579776&#34;&gt;https://twitter.com/aoirint/status/1579530951029579776&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;症状&#34;&gt;症状&lt;/h2&gt;
&lt;h3 id=&#34;一部のテキスト太字が右上に傾いて表示される&#34;&gt;一部のテキスト（太字？）が右上に傾いて表示される&lt;/h3&gt;
&lt;p&gt;&lt;img alt=&#34;一部のテキストが右上に傾いて表示される&#34; loading=&#34;lazy&#34; src=&#34;https://blog.aoirint.com/entry/2022/adobe_acrobat_reader_strangely_rendered_and_crash_on_print/images/strangely_rendered_1.png&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;一部のテキストボタンのラベルが表示されない&#34;&gt;一部のテキスト（ボタンのラベル？）が表示されない&lt;/h3&gt;
&lt;p&gt;&lt;img alt=&#34;一部のテキストが表示されない 1&#34; loading=&#34;lazy&#34; src=&#34;https://blog.aoirint.com/entry/2022/adobe_acrobat_reader_strangely_rendered_and_crash_on_print/images/strangely_rendered_2.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img alt=&#34;一部のテキストが表示されない 2&#34; loading=&#34;lazy&#34; src=&#34;https://blog.aoirint.com/entry/2022/adobe_acrobat_reader_strangely_rendered_and_crash_on_print/images/strangely_rendered_5.png&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;一部のテキストが135度左回転して表示される&#34;&gt;一部のテキストが135度左回転して表示される&lt;/h3&gt;
&lt;p&gt;&lt;img alt=&#34;一部のテキストが135度左回転して表示される&#34; loading=&#34;lazy&#34; src=&#34;https://blog.aoirint.com/entry/2022/adobe_acrobat_reader_strangely_rendered_and_crash_on_print/images/strangely_rendered_4.png&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;ボタンのサイズが本来より大きくなる&#34;&gt;ボタンのサイズが本来より大きくなる&lt;/h3&gt;
&lt;p&gt;&lt;img alt=&#34;ボタンのサイズが本来より大きくなる&#34; loading=&#34;lazy&#34; src=&#34;https://blog.aoirint.com/entry/2022/adobe_acrobat_reader_strangely_rendered_and_crash_on_print/images/strangely_rendered_3.png&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;印刷uiを開くとクラッシュする&#34;&gt;印刷UIを開くとクラッシュする&lt;/h3&gt;
&lt;p&gt;メニューから印刷を選んで印刷UIを開くとクラッシュする。&lt;/p&gt;
&lt;p&gt;クラッシュレポート送信ダイアログも表示されない。&lt;/p&gt;
&lt;h3 id=&#34;ほとんどのテキストが太字下線付きで表示される&#34;&gt;ほとんどのテキストが太字・下線付きで表示される&lt;/h3&gt;
&lt;p&gt;高DPI設定を変更すると、表示されなかった一部のテキストを表示できることがあるが、太字・下線付きで表示される。&lt;/p&gt;
&lt;h4 id=&#34;高dpi設定acrobatexeのプロパティ互換性高dpi設定の変更&#34;&gt;高DPI設定（Acrobat.exeのプロパティ＞互換性＞高DPI設定の変更）&lt;/h4&gt;
&lt;p&gt;&lt;img alt=&#34;高DPI設定&#34; loading=&#34;lazy&#34; src=&#34;https://blog.aoirint.com/entry/2022/adobe_acrobat_reader_strangely_rendered_and_crash_on_print/images/high_dpi_1.png&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;おかしい表示&#34;&gt;おかしい表示&lt;/h4&gt;
&lt;p&gt;&lt;img alt=&#34;おかしい表示&#34; loading=&#34;lazy&#34; src=&#34;https://blog.aoirint.com/entry/2022/adobe_acrobat_reader_strangely_rendered_and_crash_on_print/images/strangely_rendered_6.png&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;正しい表示解決後のスクリーンショット&#34;&gt;正しい表示（解決後のスクリーンショット）&lt;/h4&gt;
&lt;p&gt;&lt;img alt=&#34;正しい表示&#34; loading=&#34;lazy&#34; src=&#34;https://blog.aoirint.com/entry/2022/adobe_acrobat_reader_strangely_rendered_and_crash_on_print/images/good_rendered_1.png&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;自分の環境での原因解決&#34;&gt;自分の環境での原因・解決&lt;/h2&gt;
&lt;p&gt;原因は、Windowsのデフォルトフォントを変更していたことだった。&lt;/p&gt;
&lt;p&gt;Windowsのデフォルトフォントは、（おそらくこういった不具合を防ぐため）通常の設定UIでは変更することができない。
レジストリを書き換えることで、フォント名に対応するフォントを変更することができる。
このとき、標準的にWindowsのUIフォントとして使われるSegoe UIフォントで描画する、という指定がされているUI上のテキストを、別のフォントを使って描画するように設定することで、デフォルトフォント（システムフォント）を変更する方法がある。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;デフォルトフォントの変更方法を指南する記事: &lt;a href=&#34;https://techcult.com/change-default-system-font-in-windows-10/&#34;&gt;https://techcult.com/change-default-system-font-in-windows-10/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img alt=&#34;レジストリエディター&#34; loading=&#34;lazy&#34; src=&#34;https://blog.aoirint.com/entry/2022/adobe_acrobat_reader_strangely_rendered_and_crash_on_print/images/registry_1.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;Acrobat Readerを正常に動作させるには、Segoe UIとして描画されるフォントが、正しくSegoe UIフォントである必要があるらしい。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;クラッシュの原因についてSegoe UIフォントの正常性との関係を指摘するコメント: &lt;a href=&#34;https://community.adobe.com/t5/acrobat-reader-discussions/acrobat-reader-quit-unexpectedly/m-p/11139813#M66281&#34;&gt;https://community.adobe.com/t5/acrobat-reader-discussions/acrobat-reader-quit-unexpectedly/m-p/11139813#M66281&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;上のデフォルトフォントの変更方法についての記事を参照し、復元用regファイルを作成・実行、Windowsを再起動することで、Acrobat Readerを正常に動作させることができるようになった。&lt;/p&gt;
&lt;h3 id=&#34;recoverreg-techcultより&#34;&gt;recover.reg （TechCultより）&lt;/h3&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-reg&#34; data-lang=&#34;reg&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Windows Registry Editor Version 5.00
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;[&lt;/span&gt;HKEY_LOCAL_MACHINE&lt;span style=&#34;color:#66d9ef&#34;&gt;\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;segoeui.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI Black (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;seguibl.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI Black Italic (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;seguibli.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI Bold (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;segoeuib.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI Bold Italic (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;segoeuiz.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI Emoji (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;seguiemj.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI Historic (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;seguihis.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI Italic (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;segoeuii.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI Light (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;segoeuil.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI Light Italic (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;seguili.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI Semibold (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;seguisb.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI Semibold Italic (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;seguisbi.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI Semilight (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;segoeuisl.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI Semilight Italic (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;seguisli.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI Symbol (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;seguisym.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe MDL2 Assets (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;segmdl2.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe Print (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;segoepr.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe Print Bold (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;segoeprb.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe Script (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;segoesc.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe Script Bold (TrueType)&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;segoescb.ttf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;[&lt;/span&gt;HKEY_LOCAL_MACHINE&lt;span style=&#34;color:#66d9ef&#34;&gt;\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;&amp;#34;Segoe UI&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=-&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>PGP</title>
      <link>https://blog.aoirint.com/entry/2022/pgp_key/</link>
      <pubDate>Mon, 13 Jun 2022 06:56:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2022/pgp_key/</guid>
      <description>&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://qiita.com/umi/items/2074aac509a6e78c4ef4&#34;&gt;https://qiita.com/umi/items/2074aac509a6e78c4ef4&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://gnupg.org/download/&#34;&gt;https://gnupg.org/download/&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Windowsバイナリ
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://gpg4win.org/get-gpg4win.html&#34;&gt;https://gpg4win.org/get-gpg4win.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://keybase.io/aoirint&#34;&gt;https://keybase.io/aoirint&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;フィンガープリント: &lt;code&gt;EFA9 05B1 BAB7 B91E DFF0  5A3F 9404 6621 FF11 BC4B&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;有効期限: 2024-06-11&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;公開鍵&#34;&gt;公開鍵&lt;/h2&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code class=&#34;language-pgp&#34; data-lang=&#34;pgp&#34;&gt;-----BEGIN PGP PUBLIC KEY BLOCK-----

mQGNBGKmWRcBDAD6fBPqQeYf5e5YTLyQQ6loiqFhCAi5DeL67aKbXRb6d7u+13um
BzHZWLA0VaEyxCtQ7pNRWEzni3UExGdpcRH7iyUtAQQRmyKHXDhMeMEhuH8lGEi9
77C7/xT3muLXAJw42YPuOenAhPZLGmlXl8EcxrsdP5Wt8WcKyl+HaSd57mLrixU5
FqoIvwl7iVCXG2SUsLiE7fjo13suarwVzdD4WgbI2xYxSWbXFpU21QwE98uCppIg
SeTgEjTH0ZRVt22Hq2CyXuSu7bUAZs1oF1+JPKFZddmJQwbzIK1+pwlT7IleIZW3
fAxXEEa3bT6cPM0zkaJo7dQZA9DWu3TQ/TD1vRLRNt06CHDWOIFMrHBEV4JnwxnX
nyo7YFlSb95JNTOz/osUi5Gyry3qd/mf5lB38A29DwNOU/xdOMm1fFErTFMsifNy
xaFrGCTrtG+0NqILAkuwon6j6VA04fXeK4/5pYfMX7hqi5w/DMyEjwBjbhQ1PVbG
bevQ7g85rPcUtLUAEQEAAbQbYW9pcmludCA8YW9pcmludEBnbWFpbC5jb20+iQHU
BBMBCgA+FiEE76kFsbq3uR7f8Fo/lARmIf8RvEsFAmKmWRcCGwMFCQPCZwAFCwkI
BwIGFQoJCAsCBBYCAwECHgECF4AACgkQlARmIf8RvEtclgv+NlFnltoNnrSkbTQt
R35O1SwQIOxrv6zS8jrSv6Dm+qXFTdYFT9tvjgiZJvJRqPSVyrdgtzau1zrGhu9J
2IjeOFr0tHoTXRrWZl0++ofJD+KbFq3kipmTMz/J6uYTEIuMiYcw6wZJ/KuuyHLr
fJVNkhw4S3Hh5IT7jDmcQ59YIeJyEb8CsomThMcZkUGlRMMu6zD9PO/ammHTmO3S
5QY1cD1ggnprY6Yf9R2cGBmPxkZJ86+llOOwGts0IsKb+iVtlb/DwZYPKO5u66sb
t3FWb0YztnlPpMNrZ6jTuZ0TrVCeiE190saMdqvqCBgpbRGlzCK2VFURGJ2iUp0N
7SQk/UlNaymxfx+sCcM5w3GaMY9dm+9XsmNhaI/HOXEfjWFUyMO9zF3WvppK9TGE
5kCtXwF5kDMw/QN/OFyACXrlc+xbt5okEdgztlq0T1Q1VxyxATODbG/VyVeb1VIg
JLZBtxhFTIdIZojSv9JVsAZnbNz8DFfYGB48xzB1sPxPATY2uQGNBGKmWRcBDACm
53HwgE8roE5KaInrWsBCMHZJSzxwG0CwYvQNcQTN9PnVxSjZIpaYAc+DmPpW6ZuI
rRCHIh7f9DrLFGptL7YpK9Si+0vBYK1SWWibO02CKQvkebZG9j0ZFXzaS1snLSIk
Z3xgZLikRIsnuCc+u0rgxnBjCJBYb8kFQutdVS7vGvT6lcozsyGpkZB7D/6DgRd9
X0P/COUCGi6Bik0akQVBed+g9v6hPj+jVuaOayckUkG3f4wkPNKLovUf16v+XMEy
Usbq5y45qSuyu6SxrRWv54JOdQaYQBKMjJZOejOxfEdzTexjx6pLoRiT5k/qUs1L
NiPeXkch/tiLLYmAWwBr21MOu+c0pwuMWWAhgWM7jE5SabqrnILs174mPKDDUQTf
DtivsP50EEtRxo/JuQM/tT+d/4wvnTO6Sbt/i8xXwDNniwXGXd3Bwzur4awsWZFJ
YabyULCAwu5EjyGpGUQt9kbcsLPoSAMasUyX6HAX1gXqr/pfmdANckCvcI4swjEA
EQEAAYkBvAQYAQoAJhYhBO+pBbG6t7ke3/BaP5QEZiH/EbxLBQJiplkXAhsMBQkD
wmcAAAoJEJQEZiH/EbxLPncL/jInIiCLTVTIpsUcys+tPjVHLdNF/pXe1Pe/DcFX
aD4C1YopY1yJDGGTfJskCoP564jhQMpBOpZDbGenMcbh3m/KRfE+Gzl1Uh8pYQwQ
dkthNDHqQq446k00MNctgbRl46OYm4/ed9R5YIaPlSQ31redhX4gqx1yQdOpEL9h
54B981/p7pBb1lz8ZReBHmKjUNMyvHuifCfVeBrSNKPWqc4arfSKMkMurE66CUuy
jcRLH6ho05CNDdQHZlfnUmkdXwURD+HaHNe5wHFxj4/e+mLQOGrtBSuIJBqufwZD
Dv8dSiTv3SwtmT+0bkP5k036hYR8Ug8gu7rYdkug8nihghRR2oiuymrugNlOk9Gs
KZelbiFpwh1PlxhnSb8lgHFFwrOfO3pujMszJc6V/+93RF9iqPJ4+UBLNc2giwZi
ecprBMbyB514QWU+bJ/P0fdULF3ofySW9yxeRxz00sUh4vBXlhadpmrBRLInPFWw
CF2HZCE7if9HHxNo12HF21ncFQ==
=Wkdz
-----END PGP PUBLIC KEY BLOCK-----
&lt;/code&gt;&lt;/pre&gt;</description>
    </item>
    <item>
      <title>topコマンドの設定</title>
      <link>https://blog.aoirint.com/entry/2022/configure_top_command/</link>
      <pubDate>Sun, 22 May 2022 15:15:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2022/configure_top_command/</guid>
      <description>&lt;ul&gt;
&lt;li&gt;&lt;code&gt;shift+w&lt;/code&gt;で設定を保存
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://unix.stackexchange.com/questions/424486/linux-command-top-saving-configuration&#34;&gt;https://unix.stackexchange.com/questions/424486/linux-command-top-saving-configuration&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;shift+m&lt;/code&gt;でメモリ使用率順にソート&lt;/li&gt;
&lt;li&gt;&lt;code&gt;f&lt;/code&gt;から項目にSWAPを追加
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://beyondjapan.com/blog/2016/02/change-sort-top/&#34;&gt;https://beyondjapan.com/blog/2016/02/change-sort-top/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://qiita.com/k0kubun/items/7368c323d90f24a00c2f&#34;&gt;https://qiita.com/k0kubun/items/7368c323d90f24a00c2f&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;e&lt;/code&gt;で表部分のメモリ量スケールを変更&lt;/li&gt;
&lt;li&gt;&lt;code&gt;shift+e&lt;/code&gt;でサマリー部分のメモリ量スケールを変更&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>ニコニコ生放送のお絵描き放送ネタでペンタブレットを使う</title>
      <link>https://blog.aoirint.com/entry/2022/nicolive_game_pen_tablet/</link>
      <pubDate>Sat, 14 May 2022 16:41:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2022/nicolive_game_pen_tablet/</guid>
      <description>&lt;p&gt;ニコニコ生放送のお絵描き放送ネタで、ペンタブで描こうとしたらページがスクロールしてしまった。&lt;br&gt;
これを防ぎたい。&lt;/p&gt;
&lt;p&gt;開発者ツールから以下を実行する。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-javascript&#34; data-lang=&#34;javascript&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;document.&lt;span style=&#34;color:#a6e22e&#34;&gt;body&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;style&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;margin: 0; height: 100%; overflow: hidden;&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;元に戻すには（bodyタグにstyle属性がない場合）、&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-javascript&#34; data-lang=&#34;javascript&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;document.&lt;span style=&#34;color:#a6e22e&#34;&gt;body&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;style&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>複数の音声ストリームを持つ動画ファイルを簡単に編集する方法がほしい</title>
      <link>https://blog.aoirint.com/entry/2022/multi_stream_video_edit/</link>
      <pubDate>Sat, 23 Apr 2022 00:50:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2022/multi_stream_video_edit/</guid>
      <description>&lt;p&gt;OBSには、音声を複数のストリームに分けて録画する機能がある。&lt;/p&gt;
&lt;p&gt;&lt;img alt=&#34;obs_audio_property&#34; loading=&#34;lazy&#34; src=&#34;https://blog.aoirint.com/entry/2022/multi_stream_video_edit/images/obs_audio_property.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;Shotcutを使って編集しているのだけれど、複数の音声ストリームをうまく扱えないでいる。
1つの動画アイテムに対して、全部のストリームを混ぜるか、もしくは1つの音声ストリームを選ぶことはできるけれど、音声ストリームを選択して混ぜることができない。
動画アイテムを複製すればできるはずだけれど、そういう想定なのかな・・・？&lt;/p&gt;
&lt;p&gt;→ 音声を分離したあと、音声を複製して、それぞれストリームを選択すればいいのかもしれない。&lt;/p&gt;
&lt;p&gt;ffmpegは、mapオプションを使って複数のストリームを持つ動画ファイルを扱うことができる。&lt;/p&gt;
&lt;p&gt;そこでffmpegを使って、音声なしの動画ファイルと、各音声ストリームを別々に取り出した音声ファイルに分割するのを試してみた。&lt;/p&gt;
&lt;p&gt;以下のようなシェルスクリプトを作った（映像：NVENC H.264、音声aacのmkvファイルを想定）。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;#!/bin/bash
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;INPUT&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;$(&lt;/span&gt;realpath &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;$1&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;#OUTDIR=$(realpath -- &amp;#34;$(dirname &amp;#34;${INPUT}&amp;#34;)&amp;#34;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;OUTDIR&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;FILENAME&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;$(&lt;/span&gt;basename -- &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;INPUT&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;EXTENSION&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;FILENAME#*.&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;BASENAME&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;FILENAME%%.*&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;mkdir -p &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;OUTDIR&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ffmpeg -i &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;INPUT&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    -map 0:v:0 -vcodec copy &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;OUTDIR&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;/&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;BASENAME&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;_video.&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;EXTENSION&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    -map 0:a:1 -vn -acodec copy &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;OUTDIR&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;/&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;BASENAME&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;_app.m4a&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    -map 0:a:2 -vn -acodec copy &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;OUTDIR&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;/&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;BASENAME&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;_mic.m4a&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    -map 0:a:3 -vn -acodec copy &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;OUTDIR&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;/&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;BASENAME&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;_meta1.m4a&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    -map 0:a:4 -vn -acodec copy &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;OUTDIR&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;/&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;BASENAME&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;_vc.m4a&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;splitAudioTrack myrecording.mkv
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;これを使って、Fallguysの60fps, 15分程度の録画ファイルを分割してみたけれど、ストレージが録画用のHDDなのが悪いのか、変換に実時間程度かかってしまうことがあった
（ffmpegは、Windows 10上でWindowsバイナリとWSL2上のLinuxバイナリをそれぞれ試したけれど、速度はほぼ同じだった）。&lt;/p&gt;
&lt;p&gt;場合によって、4倍速から7倍速で分割できることもある。Windows Defenderとか、Search Indexerとかが悪さをしているのかもしれない。
FPSも、実際に60フレームを正確に掴めてはいないと思うし、容量や処理時間と映像品質の間でコスパが悪いと思うので、30fpsに落とすと速くなりそうではある。&lt;/p&gt;
&lt;p&gt;1度分割すれば好きな動画編集ソフト上で、各ファイルをトラック（レイヤー）に配置して好きにできるけれど、分割に時間がかかるのはうれしくない&amp;hellip;。
分割ファイルができることによって容量が2倍になるのもうれしくない&amp;hellip;。&lt;/p&gt;</description>
    </item>
    <item>
      <title>CDの取り込み</title>
      <link>https://blog.aoirint.com/entry/2022/cd_ripping/</link>
      <pubDate>Wed, 30 Mar 2022 03:00:34 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2022/cd_ripping/</guid>
      <description>&lt;h2 id=&#34;ubuntu&#34;&gt;Ubuntu&lt;/h2&gt;
&lt;p&gt;Rhythmboxで取り込む。
ogg形式に変更する。&lt;/p&gt;
&lt;p&gt;EasyTagを使ってID3タグ、アルバムアートを設定する。&lt;/p&gt;
&lt;h2 id=&#34;windows&#34;&gt;Windows&lt;/h2&gt;
&lt;p&gt;Windows Media Playerで取り込む。
初期設定が低ビットレートのMP3になっているので、320kbpsのMP3に変更する。&lt;/p&gt;
&lt;p&gt;MP3Tag 2.88aを使ってID3タグ、アルバムアートを設定する。
（Windows版EasyTag 2.4.3は日本語が文字化けしてID3タグの書き込みが動作しないことがある）&lt;/p&gt;</description>
    </item>
    <item>
      <title>AssistantSeika &#43; 偽装ちゃん &#43; NCVによるニコ生コメント読み上げ</title>
      <link>https://blog.aoirint.com/entry/2022/nicolive_assistant_seika_fake_chan_ncv_comment_tts/</link>
      <pubDate>Mon, 07 Feb 2022 16:08:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2022/nicolive_assistant_seika_fake_chan_ncv_comment_tts/</guid>
      <description>&lt;h2 id=&#34;構成&#34;&gt;構成&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;音声合成ソフト（A.I. VOICE、ガイノイドTalk、VOICEVOX）&lt;/li&gt;
&lt;li&gt;AssistantSeika&lt;/li&gt;
&lt;li&gt;偽装ちゃん&lt;/li&gt;
&lt;li&gt;NiconamaCommentViewer&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;初回設定手順&#34;&gt;初回設定手順&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;上記ソフトウェアをダウンロード・インストール&lt;/li&gt;
&lt;li&gt;音声合成ソフトを起動、起動完了を待つ（AssistantSeikaのドキュメントを参照して各ソフトが動作する状態になっているか、設定を確認）&lt;/li&gt;
&lt;li&gt;AssistantSeikaを起動、製品スキャンを実行、スキャン完了を待つ（1つ以上の音声合成ソフトが認識されていることを確認）&lt;/li&gt;
&lt;li&gt;偽装ちゃんの実行ファイル&lt;code&gt;FakeChan.exe&lt;/code&gt;を&lt;code&gt;BouyomiChan.exe&lt;/code&gt;という名前でコピー&lt;/li&gt;
&lt;li&gt;&lt;code&gt;BouyomiChan.exe&lt;/code&gt;から偽装ちゃんを起動&lt;/li&gt;
&lt;li&gt;NiconamaCommentViewerを起動&lt;/li&gt;
&lt;li&gt;メニューから「設定」を開き、「読み上げ」タブを開く。「コメント読み上げを使用する」にチェックを入れる。&lt;/li&gt;
&lt;li&gt;設定項目から「棒読みちゃん」を選択し、「棒読みちゃんの場所」に先ほどコピーした&lt;code&gt;BouyomiChan.exe&lt;/code&gt;のパスを設定&lt;/li&gt;
&lt;li&gt;適当な放送を選び、URLから放送番号（&lt;code&gt;lv***&lt;/code&gt;という文字列)をコピー（URL全体でもOK）、NiconamaCommentViewerの放送番号入力欄に貼り付ける、「接続」ボタンを押す&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;2回目以降の手順&#34;&gt;2回目以降の手順&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;音声合成ソフトを起動、起動完了を待つ（AssistantSeikaのドキュメントを参照して各ソフトが動作する状態になっているか、設定を確認）&lt;/li&gt;
&lt;li&gt;AssistantSeikaを起動、製品スキャンを実行、スキャン完了を待つ（1つ以上の音声合成ソフトが認識されていることを確認）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;BouyomiChan.exe&lt;/code&gt;から偽装ちゃんを起動&lt;/li&gt;
&lt;li&gt;NiconamaCommentViewerを起動&lt;/li&gt;
&lt;li&gt;放送番号を入力、「接続」ボタンを押す&lt;/li&gt;
&lt;li&gt;「読み上げ ON/OFF」ボタンが緑色（ONというラベル）になっている場合、押して灰色（OFFというラベル）にする&lt;/li&gt;
&lt;/ol&gt;</description>
    </item>
    <item>
      <title>Windows タスクバーの日付に曜日を表示する</title>
      <link>https://blog.aoirint.com/entry/2022/windows_taskbar_date_day_of_the_week/</link>
      <pubDate>Mon, 07 Feb 2022 12:12:18 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2022/windows_taskbar_date_day_of_the_week/</guid>
      <description>&lt;p&gt;コントロールパネルを開く。&lt;/p&gt;
&lt;p&gt;「表示方法」が「カテゴリ」の場合、「日付、時刻、数値形式の変更」を開く。&lt;/p&gt;
&lt;p&gt;「表示方法」が「小さいアイコン」の場合、「地域」を開く。&lt;/p&gt;
&lt;p&gt;または、「ファイル名を指定して実行」から、&lt;code&gt;intl.cpl&lt;/code&gt;を実行する。&lt;/p&gt;
&lt;p&gt;「追加の設定」を開き、「日付」タブを開く。&lt;/p&gt;
&lt;p&gt;データ形式、短い形式、の欄に&lt;code&gt;yyyy/MM/dd ddd&lt;/code&gt;を入力して適用する。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://laboradian.com/show-day-of-week-on-taskbar-win10/&#34;&gt;https://laboradian.com/show-day-of-week-on-taskbar-win10/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://atmarkit.itmedia.co.jp/ait/articles/1404/25/news058.html&#34;&gt;https://atmarkit.itmedia.co.jp/ait/articles/1404/25/news058.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>VOICEVOXの調声テスト</title>
      <link>https://blog.aoirint.com/entry/2021/voicevox_voice_adjustion_test/</link>
      <pubDate>Wed, 17 Nov 2021 04:00:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2021/voicevox_voice_adjustion_test/</guid>
      <description>&lt;p&gt;ずんだもんとかめたんちゃんを調声したやつをちょいちょい載せたりとかしてみたい（他の音声合成ソフトだと、素材の配布にあたる可能性があって、判断が難しい気がする。再利用目的じゃなければいいと思うけど）。
動画作るのは時間かかるから難しいけど、自分もVOICEVOXのユーザになりたい。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;プラネタリウムはいかがでしょう。 どんな時も決して消えることのない、美しい無窮のきらめき……。 満天の星々がみなさまをお待ちしています（planetarian ～ちいさなほしのゆめ～）&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;assets/%E3%83%97%E3%83%A9%E3%83%8D%E3%82%BF%E3%83%AA%E3%82%A6%E3%83%A0%E3%81%AF%E3%81%84%E3%81%8B%E3%81%8C%E3%81%A7%E3%81%97%E3%82%87%E3%81%86.mp3&#34;&gt;プラネタリウムはいかがでしょう.mp3&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;VOICEVOX:四国めたん, &lt;a href=&#34;assets/%E3%83%97%E3%83%A9%E3%83%8D%E3%82%BF%E3%83%AA%E3%82%A6%E3%83%A0%E3%81%AF%E3%81%84%E3%81%8B%E3%81%8C%E3%81%A7%E3%81%97%E3%82%87%E3%81%86.vvproj&#34;&gt;プラネタリウムはいかがでしょう.vvproj&lt;/a&gt;（VOICEVOX 0.8.0）&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;さすラギっ（ふにんがす）&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;assets/%E3%81%95%E3%81%99%E3%83%A9%E3%82%AE%E3%81%A3.mp3&#34;&gt;さすラギっ.mp3&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;VOICEVOX:四国めたん, &lt;a href=&#34;assets/%E3%81%95%E3%81%99%E3%83%A9%E3%82%AE%E3%81%A3.vvproj&#34;&gt;さすラギっ.vvproj&lt;/a&gt;（VOICEVOX 0.7.5）&lt;/p&gt;
&lt;p&gt;（如月ラギさんに対して、さすがです、の意味。言葉自体はおそらくコメント由来、再現というわけではないが、音声化はじょかあきさんの動画由来？）&lt;/p&gt;</description>
    </item>
    <item>
      <title>GNOME Shell Extension おすすめ</title>
      <link>https://blog.aoirint.com/entry/2021/gnome_shell_extension/</link>
      <pubDate>Sun, 14 Nov 2021 11:30:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2021/gnome_shell_extension/</guid>
      <description>&lt;h2 id=&#34;pixel-saver&#34;&gt;Pixel Saver&lt;/h2&gt;
&lt;p&gt;ウインドウを最大化したとき、macOSのようにタイトルバーをタスクバーに統合。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://extensions.gnome.org/extension/723/pixel-saver/&#34;&gt;https://extensions.gnome.org/extension/723/pixel-saver/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/pixel-saver/pixel-saver&#34;&gt;https://github.com/pixel-saver/pixel-saver&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo apt install gnome-shell-extension-pixelsaver
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;gtile&#34;&gt;gTile&lt;/h2&gt;
&lt;p&gt;画面にウインドウを割り付けるメニュー。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://extensions.gnome.org/extension/28/gtile/&#34;&gt;https://extensions.gnome.org/extension/28/gtile/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/gTile/gTile&#34;&gt;https://github.com/gTile/gTile&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;add-to-desktop&#34;&gt;Add to Desktop&lt;/h2&gt;
&lt;p&gt;デスクトップにショートカット（&lt;code&gt;*.desktop&lt;/code&gt;ファイル）を作成するメニュー。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://extensions.gnome.org/extension/3240/add-to-desktop/&#34;&gt;https://extensions.gnome.org/extension/3240/add-to-desktop/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/Tommimon/add-to-desktop&#34;&gt;https://github.com/Tommimon/add-to-desktop&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;screenshot-locations&#34;&gt;Screenshot Locations&lt;/h2&gt;
&lt;p&gt;スクリーンショットの保存先ディレクトリを変更するメニュー（GNOME Tweaksから設定）。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://extensions.gnome.org/extension/1179/screenshot-locations/&#34;&gt;https://extensions.gnome.org/extension/1179/screenshot-locations/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://codeberg.org/kiyui/gnome-shell-screenshotlocations-extension&#34;&gt;https://codeberg.org/kiyui/gnome-shell-screenshotlocations-extension&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;sound-input--output-device-chooser&#34;&gt;Sound input &amp;amp; output device chooser&lt;/h2&gt;
&lt;p&gt;電源メニューに音声デバイス選択を追加。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://extensions.gnome.org/extension/906/sound-output-device-chooser/&#34;&gt;https://extensions.gnome.org/extension/906/sound-output-device-chooser/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/kgshank/gse-sound-output-device-chooser&#34;&gt;https://github.com/kgshank/gse-sound-output-device-chooser&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Ubuntu 20.04, 自動ログイン＋Chrome Remote Desktopの起動時に繰り返し認証を求められる</title>
      <link>https://blog.aoirint.com/entry/2021/ubuntu_autologin_chrome_remote_desktop/</link>
      <pubDate>Sat, 13 Nov 2021 17:50:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2021/ubuntu_autologin_chrome_remote_desktop/</guid>
      <description>&lt;p&gt;Chrome Remote Desktopを導入したUbuntu 20.04に自動ログインを設定すると、
初回の認証はkeyringのロックを解除する認証だが、ほかにも5回程度繰り返し認証を求められる。&lt;/p&gt;
&lt;p&gt;以下のようなメッセージが表示される。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Authentication is required to create a color managed device
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;以下のファイルのうち、いずれかを作成することで、追加の認証をスキップできる。&lt;/p&gt;
&lt;h2 id=&#34;etcpolkit-1localauthorityconfd02-allow-colordconf&#34;&gt;/etc/polkit-1/localauthority.conf.d/02-allow-colord.conf&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://god-support.blogspot.com/2019/11/ubuntu1804-xrdp-authentication-is.html&#34;&gt;https://god-support.blogspot.com/2019/11/ubuntu1804-xrdp-authentication-is.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-javascript&#34; data-lang=&#34;javascript&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;polkit&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;addRule&lt;/span&gt;(&lt;span style=&#34;color:#66d9ef&#34;&gt;function&lt;/span&gt;(&lt;span style=&#34;color:#a6e22e&#34;&gt;action&lt;/span&gt;, &lt;span style=&#34;color:#a6e22e&#34;&gt;subject&lt;/span&gt;) {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; ((
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#a6e22e&#34;&gt;action&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;id&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;org.freedesktop.color-manager.create-device&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;||&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#a6e22e&#34;&gt;action&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;id&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;org.freedesktop.color-manager.create-profile&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;||&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#a6e22e&#34;&gt;action&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;id&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;org.freedesktop.color-manager.delete-device&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;||&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#a6e22e&#34;&gt;action&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;id&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;org.freedesktop.color-manager.delete-profile&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;||&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#a6e22e&#34;&gt;action&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;id&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;org.freedesktop.color-manager.modify-device&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;||&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#a6e22e&#34;&gt;action&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;id&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;org.freedesktop.color-manager.modify-profile&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        )
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#f92672&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;subject&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;isInGroup&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;{users}&amp;#34;&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    ) {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#66d9ef&#34;&gt;return&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;polkit&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;Result&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;YES&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;etcpolkit-1localauthority50-locald45-allow-colordpkla&#34;&gt;/etc/polkit-1/localauthority/50-local.d/45-allow-colord.pkla&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.cagylogic.com/archives/2021/03/23145121/11743.php&#34;&gt;https://www.cagylogic.com/archives/2021/03/23145121/11743.php&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code class=&#34;language-conf&#34; data-lang=&#34;conf&#34;&gt;[Allow Colord all Users]
Identity=unix-user:*
Action=org.freedesktop.color-manager.create-device;org.freedesktop.color-manager.create-profile;org.freedesktop.color-manager.delete-device;org.freedesktop.color-manager.delete-profile;org.freedesktop.color-manager.modify-device;org.freedesktop.color-manager.modify-profile
ResultAny=no
ResultInactive=no
ResultActive=yes
&lt;/code&gt;&lt;/pre&gt;</description>
    </item>
    <item>
      <title>Chrome Remote Desktop （Ubuntu）</title>
      <link>https://blog.aoirint.com/entry/2021/chrome_remote_desktop_ubuntu/</link>
      <pubDate>Sat, 13 Nov 2021 17:40:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2021/chrome_remote_desktop_ubuntu/</guid>
      <description>&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://remotedesktop.google.com/access&#34;&gt;https://remotedesktop.google.com/access&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://qiita.com/ninose14/items/473369d76814174dd58f&#34;&gt;https://qiita.com/ninose14/items/473369d76814174dd58f&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;インストール&#34;&gt;インストール&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://remotedesktop.google.com/headless&#34;&gt;https://remotedesktop.google.com/headless&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;rm -f ~/.chrome-remote-desktop-session
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;スクリプトの改変&#34;&gt;スクリプトの改変&lt;/h2&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;cd /opt/google/chrome-remote-desktop
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;cp chrome-remote-desktop chrome-remote-desktop.bak
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;optgooglechrome-remote-desktopchrome-remote-desktop&#34;&gt;/opt/google/chrome-remote-desktop/chrome-remote-desktop&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;chrome-remote-desktop 106.0.5249.37&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;#FIRST_X_DISPLAY_NUMBER = 20&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;FIRST_X_DISPLAY_NUMBER &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;※ 0の部分には、デスクトップ環境でターミナルを開き、&lt;code&gt;echo $DISPLAY&lt;/code&gt;で表示される値を入れる。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;def&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;launch_session&lt;/span&gt;(self, server_args, backoff_time):
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&amp;#34;&amp;#34;Launches process required for session and records the backoff time
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;  for inhibitors so that process restarts are not attempted again until
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;  that time has passed.&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  logging&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;info(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Setting up and launching session&amp;#34;&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  self&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;_init_child_env()
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  self&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;setup_audio()
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  self&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;_setup_gnubby()
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#75715e&#34;&gt;#self._launch_server(server_args)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#75715e&#34;&gt;#if not self._launch_pre_session():&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#75715e&#34;&gt;#  # If there was no pre-session script, launch the session immediately.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#75715e&#34;&gt;#  self.launch_desktop_session()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  display &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; self&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;get_unused_display_number()
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  self&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;child_env[&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;DISPLAY&amp;#39;&lt;/span&gt;] &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;f&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;:&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;{&lt;/span&gt;display&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  self&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;server_inhibitor&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;record_started(MINIMUM_PROCESS_LIFETIME,
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                                    backoff_time)
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  self&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;session_inhibitor&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;record_started(MINIMUM_PROCESS_LIFETIME,
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                                   backoff_time)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo systemctl restart chrome-remote-desktop@&lt;span style=&#34;color:#e6db74&#34;&gt;${&lt;/span&gt;USER&lt;span style=&#34;color:#e6db74&#34;&gt;}&lt;/span&gt;.service
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>Nextcloud davfs2 マウント設定（Ubuntu）</title>
      <link>https://blog.aoirint.com/entry/2021/nextcloud_davfs2/</link>
      <pubDate>Sat, 13 Nov 2021 17:20:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2021/nextcloud_davfs2/</guid>
      <description>&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://wiki.archlinux.jp/index.php/Davfs2&#34;&gt;https://wiki.archlinux.jp/index.php/Davfs2&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;etcfstab&#34;&gt;/etc/fstab&lt;/h2&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code class=&#34;language-fstab&#34; data-lang=&#34;fstab&#34;&gt;https://nextcloud.example.com/remote.php/dav/files/myuser/ /mnt/nextcloud davfs rw,nofail,user,uid=myuser 0 0
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;etcdavfs2secrets&#34;&gt;/etc/davfs2/secrets&lt;/h2&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-plain&#34; data-lang=&#34;plain&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;https://nextcloud.example.com/remote.php/dav/files/myuser/ myuser APP_PASSWORD
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>Nextcloud Desktop Client PPA （Ubuntu）</title>
      <link>https://blog.aoirint.com/entry/2021/nextcloud_desktop_ppa/</link>
      <pubDate>Sat, 13 Nov 2021 13:40:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2021/nextcloud_desktop_ppa/</guid>
      <description>&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://launchpad.net/~nextcloud-devs/+archive/ubuntu/client&#34;&gt;https://launchpad.net/~nextcloud-devs/+archive/ubuntu/client&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo apt install software-properties-common
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo add-apt-repository ppa:nextcloud-devs/client
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo apt update
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo apt install nextcloud-desktop nautilus-nextcloud
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>GoogleサービスのURLでユーザアカウントを指定する（?authuser=email）</title>
      <link>https://blog.aoirint.com/entry/2021/google_authuser_link/</link>
      <pubDate>Thu, 01 Jul 2021 13:00:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2021/google_authuser_link/</guid>
      <description>&lt;p&gt;Googleサービスでは、URL中の&lt;code&gt;/u/0/&lt;/code&gt;や&lt;code&gt;/u/1/&lt;/code&gt;の数値部分を書き換えることで、ログイン順に基づいてユーザの切り替えができる。しかし、ログイン順の異なる端末間でURLをブックマークしたい場合などに不便である。&lt;/p&gt;
&lt;p&gt;メールアドレスを指定してユーザを切り替えるには、
URLのGETパラメータに&lt;code&gt;authuser=mail@example.com&lt;/code&gt;のようにGoogleアカウントのメールアドレスを記述する。&lt;/p&gt;
&lt;h2 id=&#34;google-classroom&#34;&gt;Google Classroom&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://classroom.google.com/c/CLASS_ID?authuser=mail@example.com&#34;&gt;https://classroom.google.com/c/CLASS_ID?authuser=mail@example.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;gmail&#34;&gt;Gmail&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://mail.google.com/?authuser=mail@example.com&#34;&gt;https://mail.google.com/?authuser=mail@example.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Open JTalk in Docker</title>
      <link>https://blog.aoirint.com/entry/2021/open_jtalk/</link>
      <pubDate>Sun, 04 Apr 2021 08:00:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2021/open_jtalk/</guid>
      <description>&lt;p&gt;以前にもOpen JTalkを触っていたが、時間が経った＆記事が雑だったのでDockerでまとめ直しておく。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://aoirint.hatenablog.com/entry/2019/05/25/080329&#34;&gt;Open JTalk - aoirint&amp;rsquo;s note&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Dockerfileを作る。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-dockerfile&#34; data-lang=&#34;dockerfile&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;FROM&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;ubuntu:bionic&lt;/span&gt;&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;RUN&lt;/span&gt; apt-get update &lt;span style=&#34;color:#f92672&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    apt-get install -y &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        open-jtalk &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        open-jtalk-mecab-naist-jdic &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        hts-voice-nitech-jp-atr503-m001&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;WORKDIR&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;/data&lt;/span&gt;&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;ENTRYPOINT&lt;/span&gt; [ &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;open_jtalk&amp;#34;&lt;/span&gt; ]&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;mecab-naist-jdicは形態素解析辞書。
hts-voiceはボイスファイルだが、別途htsvoiceを用意する場合は不要。&lt;/p&gt;
&lt;p&gt;ビルドする。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;docker build . -t aoirint/open_jtalk
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;実行する。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;echo &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;こんにちは&amp;#34;&lt;/span&gt; &amp;gt; text.txt
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# テキストファイルの文字列から音声を生成&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;docker run --rm -v &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;$PWD&lt;span style=&#34;color:#e6db74&#34;&gt;:/data&amp;#34;&lt;/span&gt; aoirint/open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic/ -m /usr/share/hts-voice/nitech-jp-atr503-m001/nitech_jp_atr503_m001.htsvoice text.txt -ow output.wav
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 標準入力の文字列から音声を生成&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;cat text.txt | docker run --rm -i -v &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;$PWD&lt;span style=&#34;color:#e6db74&#34;&gt;:/data&amp;#34;&lt;/span&gt; aoirint/open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic/ -m /usr/share/hts-voice/nitech-jp-atr503-m001/nitech_jp_atr503_m001.htsvoice -ow output.wav
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 標準入力の文字列から音声を生成して、標準出力に書き出す（wav形式）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;cat text.txt | docker run --rm -i -v &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;$PWD&lt;span style=&#34;color:#e6db74&#34;&gt;:/data&amp;#34;&lt;/span&gt; aoirint/open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic/ -m /usr/share/hts-voice/nitech-jp-atr503-m001/nitech_jp_atr503_m001.htsvoice -ow /dev/stdout &amp;gt; output.wav
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;ffmpegで出力されたwavファイルを見るとこのような形式。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Imagemagickで画像のDPIを変更する</title>
      <link>https://blog.aoirint.com/entry/2020/change_image_dpi_imagemagick/</link>
      <pubDate>Mon, 09 Nov 2020 06:30:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2020/change_image_dpi_imagemagick/</guid>
      <description>&lt;p&gt;画像のDPI（dot per inch）がばらばらの場合、
TeXで画像を取り込んだときのサイズがばらばらになるため統一する。&lt;/p&gt;
&lt;p&gt;以下はIN.pngをDPI 72にしてOUT.pngに出力するコマンド。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;convert -density &lt;span style=&#34;color:#ae81ff&#34;&gt;72&lt;/span&gt; -units PixelsPerInch IN.png OUT.png
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;もともとのDPIを調べるコマンド。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;identify -format &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;%x,%y\n&amp;#39;&lt;/span&gt; IN.png
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>OBS Studio on Ubuntu 20.04 &#43; NVIDIA GPUでWindow Captureを動作させる</title>
      <link>https://blog.aoirint.com/entry/2020/obs_ubuntu_nvidia_window_capture/</link>
      <pubDate>Mon, 09 Nov 2020 06:10:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2020/obs_ubuntu_nvidia_window_capture/</guid>
      <description>&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://obsproject.com/forum/threads/solved-window-capture-black-screen.47082/&#34;&gt;Bug Report - [SOLVED] Window Capture Black Screen | OBS Forums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ubuntu + NVIDIA GPU環境では、OBS StudioでWindow Captureしようとすると
一部のアプリケーションで黒画面の表示になり動作しない。
おそらくOpenGLで描画しているものが対象。&lt;/p&gt;
&lt;p&gt;いくつか対処法の候補がある。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Alt+F2から&lt;code&gt;r&lt;/code&gt;を入力して実行&lt;/li&gt;
&lt;li&gt;アプリケーションをフルスクリーン表示からウインドウ表示に切り替える&lt;/li&gt;
&lt;li&gt;アプリケーションをウインドウ表示からフルスクリーン表示に切り替える&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Window Capture (Xcomposite)&lt;/code&gt;の設定欄をスクロールして、&lt;code&gt;Use alpha-less texture format (Mesa workaround)&lt;/code&gt;にチェックを入れる&lt;/li&gt;
&lt;li&gt;OSを再起動（GPUドライバに更新が入ったときなど）&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>PulseAudioで特定のアプリケーションからの音声出力だけを分離する</title>
      <link>https://blog.aoirint.com/entry/2020/pulseaudio_split_output/</link>
      <pubDate>Mon, 09 Nov 2020 06:00:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2020/pulseaudio_split_output/</guid>
      <description>&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/#module-loopback&#34;&gt;https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/#module-loopback&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;以下のコマンドで仮想出力デバイス&lt;code&gt;DummyOutput0&lt;/code&gt;と、そのループバック&lt;code&gt;Loopback from Monitor of DummyOutput0&lt;/code&gt;が追加される。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pacmd load-module module-null-sink sink_name&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;DummyOutput0 sink_properties&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;device.description&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;DummyOutput0
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pacmd load-module module-loopback source&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;DummyOutput0.monitor source_dont_move&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;true
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;pavucontrol&lt;/code&gt;または&lt;code&gt;PulseAudio Volume Control&lt;/code&gt;の&lt;code&gt;Playback&lt;/code&gt;から
目的のアプリケーションの出力先を&lt;code&gt;DummyOutput0&lt;/code&gt;にする。
また、&lt;code&gt;Loopback from Monitor of DummyOutput0&lt;/code&gt;の出力先を
希望のスピーカーにすることで音声出力を分離しつつ同時に視聴できる。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;source_dont_move=true&lt;/code&gt;は、デフォルトの入力デバイス変更時にLoopbackの入力デバイスも変更されてしまうのを防ぐオプション。
&lt;code&gt;pavucontrol&lt;/code&gt;からも変更できなくなる。&lt;/p&gt;
&lt;p&gt;仮想出力デバイスとループバックを削除するには、以下のコマンドを実行する。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pacmd unload-module module-loopback
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pacmd unload-module module-null-sink
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;ログイン時に自動作成する&#34;&gt;ログイン時に自動作成する&lt;/h2&gt;
&lt;h3 id=&#34;ログイン時自動作成-etcpulsedefaultpa&#34;&gt;ログイン時自動作成 /etc/pulse/default.pa&lt;/h3&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code class=&#34;language-pulseaudio&#34; data-lang=&#34;pulseaudio&#34;&gt;# Custom
load-module module-null-sink sink_name=DummyOutputApp sink_properties=device.description=&amp;#34;DummyOutputApp&amp;#34;
load-module module-loopback source=DummyOutputApp.monitor source_dont_move=true

load-module module-null-sink sink_name=DummyOutputVoiceChat sink_properties=device.description=&amp;#34;DummyOutputVoiceChat&amp;#34;
load-module module-loopback source=DummyOutputVoiceChat.monitor source_dont_move=true

load-module module-null-sink sink_name=DummyOutputGeneral0 sink_properties=device.description=&amp;#34;DummyOutputGeneral0&amp;#34;
load-module module-loopback source=DummyOutputGeneral0.monitor source_dont_move=true

load-module module-null-sink sink_name=DummyOutputGeneral1 sink_properties=device.description=&amp;#34;DummyOutputGeneral1&amp;#34;
load-module module-loopback source=DummyOutputGeneral1.monitor source_dont_move=true
&lt;/code&gt;&lt;/pre&gt;&lt;h3 id=&#34;ログイン時自動作成-pulseaudioの再起動&#34;&gt;ログイン時自動作成 PulseAudioの再起動&lt;/h3&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pulseaudio --kill
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pulseaudio --start
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;デバイス接続時の入出力デバイス自動切り替えを無効化する&#34;&gt;デバイス接続時の入出力デバイス自動切り替えを無効化する&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://askubuntu.com/questions/1061414/how-to-disable-pulseaudio-automatic-device-switch&#34;&gt;https://askubuntu.com/questions/1061414/how-to-disable-pulseaudio-automatic-device-switch&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;新しい出力デバイスが検出されたとき、デフォルト出力デバイスが切り替わるのを防ぐ。&lt;/p&gt;</description>
    </item>
    <item>
      <title>PulseAudioでマイク入力をスピーカから出力する</title>
      <link>https://blog.aoirint.com/entry/2020/pulseaudio_mic_input_to_speaker_output/</link>
      <pubDate>Sun, 04 Oct 2020 03:40:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2020/pulseaudio_mic_input_to_speaker_output/</guid>
      <description>&lt;p&gt;まずはPCに接続されている音声入力デバイスのIDを確認する。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pactl list short sources
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# pactl list sources&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-plain&#34; data-lang=&#34;plain&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;3 alsa_output.pci-0000_00_1f.3.analog-stereo.monitor module-alsa-card.c s16le 2ch 44100Hz RUNNING
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;4 alsa_output.pci-0000_01_00.1.hdmi-stereo.monitor module-alsa-card.c s16le 2ch 44100Hz RUNNING
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;5 alsa_output.usb-GeneralPlus_USB_Audio_Device-00.iec958-stereo.monitor module-alsa-card.c s16le 2ch 44100Hz RUNNING
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;6 alsa_input.usb-GeneralPlus_USB_Audio_Device-00.analog-mono module-alsa-card.c s16le 1ch 44100Hz RUNNING
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;ここでは、以下のようになっている。&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th style=&#34;text-align: left&#34;&gt;ID&lt;/th&gt;
					&lt;th style=&#34;text-align: left&#34;&gt;種類&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;3&lt;/td&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;本体のヘッドホン端子&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;4&lt;/td&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;HDMI&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;5&lt;/td&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;USBサウンドカードのヘッドホン端子&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;6&lt;/td&gt;
					&lt;td style=&#34;text-align: left&#34;&gt;USBサウンドカードのマイク端子&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;以下のコマンドで、ID=6のUSBサウンドカードのマイク端子に入力されている音声をスピーカにループバックするモジュールがロードされる。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pacmd load-module module-loopback source&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;6&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;名前を使って指定することもできる。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pacmd load-module module-loopback source&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;alsa_input.usb-GeneralPlus_USB_Audio_Device-00.analog-mono
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;必要に応じて、&lt;code&gt;pavucontrol&lt;/code&gt;を開いて出力先デバイスを設定する。&lt;/p&gt;
&lt;p&gt;以下のコマンドで、ループバックモジュールをアンロードする。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pacmd unload-module module-loopback
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>User Style Sheet（Firefox）</title>
      <link>https://blog.aoirint.com/entry/2020/firefox_userstylesheet/</link>
      <pubDate>Fri, 22 May 2020 06:00:00 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2020/firefox_userstylesheet/</guid>
      <description>&lt;ul&gt;
&lt;li&gt;Firefox 76&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://diary.palm84.com/entry/20190527/1558967870&#34;&gt;https://diary.palm84.com/entry/20190527/1558967870&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Firefox 69以降デフォルトで無効化されたらしいので、&lt;code&gt;about:config&lt;/code&gt;から&lt;code&gt;stylesheets&lt;/code&gt;で検索、&lt;code&gt;toolkit.legacyUserProfileCustomizations.stylesheets&lt;/code&gt;を&lt;code&gt;true&lt;/code&gt;にする。&lt;/p&gt;
&lt;p&gt;ブラウザ右上の三本線メニューからHelp、Troubleshooting Informationの&lt;code&gt;Profile Directory&lt;/code&gt;という項目から現在のプロファイルのディレクトリがわかる。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;PROFILE_DIR/chrome&lt;/code&gt;ディレクトリを作成、&lt;code&gt;PROFILE_DIR/chrome/userContent.css&lt;/code&gt;ファイルを作成。あとはこのCSSがすべてのWebサイトに適用されるのでCSSを書いていくだけ。Firefoxを再起動すると変更が適用される。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-css&#34; data-lang=&#34;css&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;body&lt;/span&gt; { &lt;span style=&#34;color:#66d9ef&#34;&gt;background&lt;/span&gt;: &lt;span style=&#34;color:#66d9ef&#34;&gt;black&lt;/span&gt; &lt;span style=&#34;color:#75715e&#34;&gt;!important&lt;/span&gt;; }
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://developer.mozilla.org/ja/docs/Web/CSS/@document&#34;&gt;https://developer.mozilla.org/ja/docs/Web/CSS/@document&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://puppet.asablo.jp/blog/2008/11/25/3974444&#34;&gt;http://puppet.asablo.jp/blog/2008/11/25/3974444&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;code&gt;@-moz-document&lt;/code&gt;で特定のドメインのWebサイトにだけスタイルを適用できる（&lt;code&gt;@document&lt;/code&gt;では動かなかった）。ドキュメントは&lt;code&gt;@document&lt;/code&gt;のものを見ればいいのかな（Firefoxにしかこのクエリは実装されてないらしい、CSS 4で検討中？）。ID/クラスが被ってる場合に使えるか。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-css&#34; data-lang=&#34;css&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;@&lt;span style=&#34;color:#66d9ef&#34;&gt;-moz-document&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;domain&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;(&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;twitter&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;com&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;)&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#f92672&#34;&gt;body&lt;/span&gt; { &lt;span style=&#34;color:#66d9ef&#34;&gt;background&lt;/span&gt;: &lt;span style=&#34;color:#66d9ef&#34;&gt;black&lt;/span&gt; &lt;span style=&#34;color:#75715e&#34;&gt;!important&lt;/span&gt;; }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://qiita.com/uzumushi/items/f95f9e89fde2a507d7e8&#34;&gt;https://qiita.com/uzumushi/items/f95f9e89fde2a507d7e8&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Ubuntu上のデスクトップ音声出力をZoomの音声入力にする（PulseAudio）</title>
      <link>https://blog.aoirint.com/entry/2020/ubuntu_desktop_audio_output_to_zoom_input/</link>
      <pubDate>Tue, 19 May 2020 12:35:27 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2020/ubuntu_desktop_audio_output_to_zoom_input/</guid>
      <description>&lt;h2 id=&#34;environment&#34;&gt;Environment&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Ubuntu 18.04&lt;/li&gt;
&lt;li&gt;PulseAudio&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;スピーカー出力を仮想マイク入力にする&#34;&gt;スピーカー出力を仮想マイク入力にする&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;pavucontrol&lt;/code&gt;を実行し、&lt;code&gt;Input Devices&lt;/code&gt;のタブを開く。&lt;code&gt;Show:&lt;/code&gt;を&lt;code&gt;All Input Devices&lt;/code&gt;に設定すると、&lt;code&gt;Monitor of YOUR_SPEAKER&lt;/code&gt;という項目があり、このデバイスからの読み取りはスピーカーへの出力がループバックされたものになっている（&lt;code&gt;YOUR_SPEAKER&lt;/code&gt;への出力＝&lt;code&gt;Monitor of YOUR_SPEAKER&lt;/code&gt;からの入力。&lt;/p&gt;
&lt;p&gt;しかしここで音声を入力するアプリケーションとして仮にZoomを開いても、Microphoneの選択肢に&lt;code&gt;Monitor of YOUR_SPEAKER&lt;/code&gt;は現れない。回避策として、Microphoneを&lt;code&gt;Same as System&lt;/code&gt;（デフォルトの音声入力デバイス）にし、Input Devicesで&lt;code&gt;Monitor of YOUR_SPEAKER&lt;/code&gt;の&lt;code&gt;Set as Fallback&lt;/code&gt;（緑のチェックマーク、デフォルトの音声入力デバイス）を有効にすることでZoomのマイクとしてスピーカー出力を渡すことができた。&lt;/p&gt;
&lt;p&gt;このままでは他の人から送られてきた音声が自分のコンピュータの中でループ（Zoom Output→YOUR_SPEAKER→Monitor of YOUR_SPEAKER→Zoom Input）してしまうんじゃないかと思うが、少なくともZoom上ではそうはならなさそう（PC1のマイク→Zoom→PC2の音声出力→Monitor of PC2 Speaker→Zoom→PC1の音声出力 とはならなかった？）？　これはハウリング防止フィルタが効いてるのかどうなのか..&lt;/p&gt;
&lt;p&gt;Zoomの音域系フィルタが効いているのか音楽は若干変になる（もともと声を送るためのチャンネルだし。きれいな音声を送るにはShare Screenを使う必要ありか）。&lt;/p&gt;
&lt;p&gt;Zoomの入力デバイスをpavucontrolから直接変えられないのはZoom側でなにか固定してるのか、チャンネル数とかフォーマット対応してないみたいなことなのか..&lt;/p&gt;
&lt;p&gt;前回のデスクトップ映像の出力と組み合わせた場合、映像と音声の同期がとれないと思われるので、お気持ちでなんとかするか、あるいはffmpegで同時に送り出すことまでを保証する、くらいはできるのだろうか..&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://aoirint.hatenablog.com/entry/2020/05/15/185853&#34;&gt;https://aoirint.hatenablog.com/entry/2020/05/15/185853&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;挿入音声の再生デバイス分離&#34;&gt;挿入音声の再生デバイス分離&lt;/h2&gt;
&lt;p&gt;Zoomの音声を出力するデバイスと挿入音声を出力するデバイスを分離して、目的の音声だけ送り出せるようにしてみる。つまり、Zoomの音声出力は&lt;code&gt;YOUR_SPEAKER&lt;/code&gt;のままにして、挿入音声を仮想音声出力デバイスに出力するようにする。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pacmd load-module module-null-sink sink_name&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;DummyOutput0 sink_properties&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;device.description&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;DummyOutput0
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# Or&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pacmd load-module module-null-sink sink_name&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;DummyOutput0
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pacmd update-sink-proplist DummyOutput0 device.description&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;DummyOutput0
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# ---&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pacmd unload-module module-null-sink
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;これでデフォルトの音声入力デバイスを&lt;code&gt;DummyOutput0&lt;/code&gt;に設定すればZoom上に&lt;code&gt;DummyOutput0&lt;/code&gt;への出力が送り出される。あとは挿入音声を流しているアプリケーションからの音声出力を&lt;code&gt;DummyOutput0&lt;/code&gt;に送り出せばOK。&lt;/p&gt;
&lt;p&gt;この状態で&lt;code&gt;DummyOutput0&lt;/code&gt;に出力されている挿入音声を&lt;code&gt;YOUR_SPEAKER&lt;/code&gt;で聞くには、&lt;code&gt;Monitor of DummyOutput0&lt;/code&gt;をループバックして&lt;code&gt;YOUR_SPEAKER&lt;/code&gt;に出力する。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pacmd load-module module-loopback source&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;DummyOutput0.monitor
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;pacmd unload-module module-loopback
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;物理マイクの入力をミックスする&#34;&gt;物理マイクの入力をミックスする&lt;/h2&gt;
&lt;p&gt;ここでZoomの入力デバイスに送り出されるのは自分のコンピュータ上で出力された音声だけになっているので、物理マイクを接続していてもこれに入力された音声をZoomに送り出すことはできていない。物理マイクへの入力もZoom上に送り出せるようにする。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu上のOBSでVirtualCamを使う（デスクトップ映像を仮想カメラに送る）</title>
      <link>https://blog.aoirint.com/entry/2020/ubuntu_obs_virtualcam/</link>
      <pubDate>Fri, 15 May 2020 18:58:53 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2020/ubuntu_obs_virtualcam/</guid>
      <description>&lt;p&gt;Zoomなどでデスクトップ画面をカメラ映像として共有するのに使える。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;参考： &lt;a href=&#34;https://github.com/CatxFish/obs-virtual-cam/issues/17&#34;&gt;https://github.com/CatxFish/obs-virtual-cam/issues/17&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;environment&#34;&gt;Environment&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Ubuntu 18.04&lt;/li&gt;
&lt;li&gt;FFmpeg 3.4.6-0ubuntu0.18.04.1&lt;/li&gt;
&lt;li&gt;v4l2loopback &lt;code&gt;#ed2b709&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;OBS Studio 25.0.8 &lt;code&gt;#14b0565&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;obs-v4l2sink &lt;code&gt;#1ec3c8a&lt;/code&gt; はOBS Studioがクラッシュして使えなかった。&lt;/p&gt;
&lt;h2 id=&#34;how-to&#34;&gt;How to&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/obsproject/obs-studio&#34;&gt;https://github.com/obsproject/obs-studio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/umlaeute/v4l2loopback&#34;&gt;https://github.com/umlaeute/v4l2loopback&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# sudo apt install v4l2loopback-dkms # これはバージョンの問題で使えないかも&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git clone https://github.com/umlaeute/v4l2loopback.git
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;cd v4l2loopback
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo make install
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo depmod -a
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 仮想カメラを作成（モジュールをロード）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo modprobe v4l2loopback devices&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt; video_nr&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;10&lt;/span&gt; card_label&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;OBS Cam&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 映像転送サーバを立てる（OBS→仮想カメラ）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ffmpeg -an -listen &lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt; -i rtmp://127.0.0.1:1935/live -f v4l2 /dev/video10
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 仮想カメラを削除&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo modprobe -r v4l2loopback
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;カメラデバイスの一覧を確認するには&lt;code&gt;sudo apt install v4l-utils&lt;/code&gt;して以下のコマンド。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Install TexLive on Ubuntu 18.04</title>
      <link>https://blog.aoirint.com/entry/2020/ubuntu_install_texlive/</link>
      <pubDate>Sun, 12 Apr 2020 01:49:01 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2020/ubuntu_install_texlive/</guid>
      <description>&lt;p&gt;普段TeXを書くときはAtom + latex + pdf-viewなのですが、うまくpdf-viewが動作してくれなくなった（空のタブが開いたりする）ので検証ついでに（関係ないとは思いつつ）TeXのバージョンを上げてみたくなった。aptからインストーラでのインストールに変更。&lt;/p&gt;
&lt;p&gt;TeXはインストールに時間がかかっていけない..。dockerイメージ化したいが、毎回dockerコンテナ付けるとめっちゃオーバーヘッドできそう。&lt;code&gt;up -d&lt;/code&gt;して&lt;code&gt;exec&lt;/code&gt;で動かせば速いのかな？　一般ユーザでdockerコマンド実行できるようにもしないといけないか。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo apt purge texlive-*
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;東京周辺ならJAIST、山形大学などのミラーサーバに繋がるかと思います。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;SHA-512 (2020-04-11)&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://ctan.org/tex-archive/systems/texlive/tlnet&#34;&gt;https://ctan.org/tex-archive/systems/texlive/tlnet&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sha512sum install-tl-unx.tar.gz
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;6fbca1895f0f08645e2ff97b34b9b07d659af7d25de1edc6e123fc472f3dd05db42edc9e5450fd09fae548f5259f93d7f98f63d29dfe6ff7e069685ba202661b  install-tl-unx.tar.gz
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;tar xf install-tl-unx.tar.gz
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;cd install-tl-*
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo ./install-tl
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-plain&#34; data-lang=&#34;plain&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Actions:
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &amp;lt;I&amp;gt; start installation to hard disk
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &amp;lt;P&amp;gt; save installation profile to &amp;#39;texlive.profile&amp;#39; and exit
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &amp;lt;H&amp;gt; help
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; &amp;lt;Q&amp;gt; quit
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Enter command: I
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Installing to: /usr/local/texlive/2020
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Installing [0001/3978, time/total: ??:??/??:??]: texlive.infra [420k]
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Installing [0002/3978, time/total: 00:01/02:06:37]: texlive.infra.x86_64-linux [143k]
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;おうちの回線では1h-2hくらい。おやすみなさい..&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ubuntu, TigerVNC</title>
      <link>https://blog.aoirint.com/entry/2020/ubuntu_tigervnc/</link>
      <pubDate>Wed, 18 Mar 2020 18:53:09 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2020/ubuntu_tigervnc/</guid>
      <description>&lt;p&gt;Setup VNC via ssh on Ubuntu Desktop.&lt;/p&gt;
&lt;p&gt;Install TigerVNC.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# Ubuntu 18.04&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo apt install tigervnc-scraping-server
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# Ubuntu 16.04&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo apt install tigervncserver
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Set password.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;vncpasswd
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;startVNC.sh&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;#!/bin/bash
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;x0tigervncserver PasswordFile&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;~/.vnc/passwd Display&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;:0
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;configure &lt;code&gt;LocalForward LOCALPORT localhost:5900&lt;/code&gt; in ~/.ssh/config.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;TigerVNCのクライアントはあんまり機能が多くない&lt;/li&gt;
&lt;li&gt;RealVNC社のクライアントはWindows, Linux, Mac, Mobileにリリースされてて便利
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.realvnc.com/en/connect/download/viewer/&#34;&gt;https://www.realvnc.com/en/connect/download/viewer/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://qiita.com/Tats_U_/items/c170f61a5e03ae045128&#34;&gt;つまずかない！？TigerVNCでリモートデスクトップ - Qiita&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>tar 圧縮</title>
      <link>https://blog.aoirint.com/entry/2020/tar_compress_command/</link>
      <pubDate>Tue, 17 Mar 2020 14:37:10 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2020/tar_compress_command/</guid>
      <description>&lt;p&gt;解凍&lt;code&gt;tar -xf&lt;/code&gt;はよく使うので覚えるけど、圧縮のほうが覚えられん..&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://qiita.com/supersaiakujin/items/c6b54e9add21d375161f&#34;&gt;[Linux]ファイルの圧縮、解凍方法 - Qiita&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;tar.gz&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;tar -zcf compressed.tar.gz FILES
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;extractとcompressかな&lt;/p&gt;
&lt;p&gt;おまけ&lt;/p&gt;
&lt;p&gt;zip&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;zip -r compressed.zip DIR
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;unzip compressed.zip
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>Open JTalk mpg123</title>
      <link>https://blog.aoirint.com/entry/2019/openjtalk_mpg123/</link>
      <pubDate>Sat, 25 May 2019 08:29:02 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2019/openjtalk_mpg123/</guid>
      <description>&lt;p&gt;Open JTalkの出力したwavをmpg123で再生したらエラー出た。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;[&lt;/span&gt;src/libmpg123/layer1.c:30&lt;span style=&#34;color:#f92672&#34;&gt;]&lt;/span&gt; error: Illegal bit allocation value.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;[&lt;/span&gt;src/libmpg123/layer1.c:171&lt;span style=&#34;color:#f92672&#34;&gt;]&lt;/span&gt; error: Aborting layer I decoding after step one.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;ffmpegでmp3に変換して再生するとok。mpg123では同じくエラーで変換できなかった。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ffmpeg -i b.wav b.mp3
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;mpg123 b.mp3
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;ffmpegのinfo&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-plain&#34; data-lang=&#34;plain&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Guessed Channel Layout for Input Stream #0.0 : mono
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Input #0, wav, from &amp;#39;b.wav&amp;#39;:
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  Duration: 00:00:01.17, bitrate: 768 kb/s
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 48000 Hz, mono, s16, 768 kb/s
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-plain&#34; data-lang=&#34;plain&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Input #0, mp3, from &amp;#39;b.mp3&amp;#39;:
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  Metadata:
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    encoder         : Lavf57.56.101
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  Duration: 00:00:01.20, start: 0.023021, bitrate: 65 kb/s
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    Stream #0:0: Audio: mp3, 48000 Hz, mono, s16p, 64 kb/s
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ffmpeg -i b.wav c.wav
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;これもダメ&lt;/p&gt;</description>
    </item>
    <item>
      <title>Open JTalk</title>
      <link>https://blog.aoirint.com/entry/2019/openjtalk/</link>
      <pubDate>Sat, 25 May 2019 08:03:29 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2019/openjtalk/</guid>
      <description>&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# Open JTalk Test&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# python3&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# exec `apt install open-jtalk open-jtalk-mecab-naist-jdic`&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# get `mei_normal.htsvoice` from http://www.mmdagent.jp/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;import&lt;/span&gt; subprocess
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;p &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; subprocess&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;Popen(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m mei/mei_normal.htsvoice -r 1.0 -ow /dev/stdout&amp;#39;&lt;/span&gt;, stdin&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;subprocess&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;PIPE, stdout&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;subprocess&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;PIPE, stderr&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;subprocess&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;PIPE, shell&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;True&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;text &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;こんにちは&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;out, err &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; p&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;communicate(text&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;encode(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;utf-8&amp;#39;&lt;/span&gt;))
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;print(text)
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;print(err)
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# outにwavのバイナリが入ってる。必要に応じてここ変えてね&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;with&lt;/span&gt; open(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;b.wav&amp;#39;&lt;/span&gt;, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;wb&amp;#39;&lt;/span&gt;) &lt;span style=&#34;color:#66d9ef&#34;&gt;as&lt;/span&gt; fp:
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    fp&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;write(out)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://qiita.com/yoichi22/items/5afa8b3b39c723acb359&#34;&gt;subprocess で shell=True でリストを与えたときの挙動 - Qiita&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://qiita.com/sukesuke/items/be2a4562bd809ccc0fab&#34;&gt;合成音声(Open Jtalk)でwavファイルを作成しないで再生する - Qiita&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://stackoverflow.com/questions/41479825/input-directly-in-process-communicate-in-subprocess-library&#34;&gt;python - input directly in process.communicate() in subprocess library - Stack Overflow&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://qiita.com/HidKamiya/items/b2244fb01715eca33965&#34;&gt;subprocessについて調べたメモ - Qiita&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://namotch.hatenablog.com/entry/2015/06/25/225000&#34;&gt;Debian Jessie に OpenJtalk を入れてテキストを読み上げてみた - 残しときます（自分用）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://thr3a.hatenablog.com/entry/20180226/1519619690&#34;&gt;日本語音声合成Open JTalkをPythonから実行する - 動かざることバグの如し&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://www.mmdagent.jp/&#34;&gt;mmdagent.jp&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://open-jtalk.sp.nitech.ac.jp/index.php&#34;&gt;Open JTalk - HMM-based Text-to-Speech System&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;see-also&#34;&gt;See also&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;mpg123&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Windows10でCortanaの検索結果から&#34;Recent&#34;を消去する</title>
      <link>https://blog.aoirint.com/entry/2017/windows_cortana_remove_recent/</link>
      <pubDate>Sun, 29 Oct 2017 12:24:30 +0900</pubDate>
      <guid>https://blog.aoirint.com/entry/2017/windows_cortana_remove_recent/</guid>
      <description>&lt;p&gt;17/11/05 追記：この記事でやっているのは履歴の消去のみ。記録を無効にするものではない。&lt;/p&gt;
&lt;p&gt;Winキー、アプリケーション名入力、Enterでアプリケーションを開くのが便利だが、Cortanaは&amp;quot;最近開いたファイル&amp;quot; = &amp;ldquo;Recent&amp;quot;を記録する。&lt;/p&gt;
&lt;p&gt;この&amp;quot;Recent&amp;rdquo;、右クリック、&amp;ldquo;この一覧から消去&amp;quot;では消えなかった。Cortana（検索）を開き直すと復活する。アプリケーションを右クリックして出るジャンプリストも同じだ。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://account.microsoft.com/privacy/cortana&#34;&gt;https://account.microsoft.com/privacy/cortana&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ここから&amp;quot;Cortana データを消去する&amp;quot;で消すことができた。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
