試験運用中なLinux備忘録・旧記事

はてなダイアリーで公開していた2007年5月-2015年3月の記事を保存しています。

recordMyDesktopで保存した音声入り動画をステレオ音声でYouTubeにアップロードする覚え書き(前半)

recordMyDesktopを使用して音声入りの動画を作成して、YouTubeにアップロードする実験を行った。
せっかくのテストなので、音声をステレオのままにしてアップロードする試みも同時に行い、結果的にうまくいったため、そのあたりも含めて色々とメモ。
(2008/9/13)高画質版(fmt=18指定時)では、動画がサーバ上で再エンコードされた場合であっても、アップロードした動画がステレオ音声を含んでいれば、再生される動画もステレオ音声になる。

  1. 準備
    1. 素材
    2. 音声入りの録画をする
  2. YouTubeの再エンコードと音声について

準備

素材
音声入りのテストということで、Frozen Bubbleというゲームを初めの面だけプレイして、その様子を保存することにした。

音声入りの録画をする
Frozen BubbleSDL(http://www.libsdl.org/)というライブラリを使用しているが、SDLはJACK Audio Connection Kitに対応していないため、ALSA経由でJACKを使用することにした。その設定は関連記事を参照。
設定が済んだら、cpufreqが動作している場合は一時的に動作クロックを最高にしておいて*1から

$ AUDIODEV=pjack frozen-bubble &

のように、${HOME}/.asoundrcで指定したALSA PCMデバイス名をAUDIODEV変数に指定して起動しておく。
この後でgtk-recordMyDesktopqt-recordMyDesktopでJACKポートのリストから「alsa-jack.pcm.(中略):out_000」と「alsa-jack.pcm.(中略):out_001」の2ポートを選択*2し、取り込むウィンドウはFrozen Bubbleのものを指定して録画開始。ゲーム内の操作をしばらく進めた後でシステムトレイから録画を停止し、エンコードが済むのを待つ。
その後、MPlayerなどの動画プレーヤーで、生成された動画の内容を見て、もたつきや大きな音ずれなど、問題がないことを確認する。

YouTubeの再エンコードと音声について

YouTubeに動画をアップロードすると、その動画がある条件を満たしたときを除き、サーバ上でエンコードが行われ、その際に音声はモノラルにされてしまう。条件に関しては、

あたりが参考になった。が、リンク先にもあるが、条件は今後変更される可能性がある。

使用したバージョン:

  • recordMyDesktop 0.3.6

*1:音ずれ・もたつきを可能な限り防ぐため

*2:音が出始めるまでの間はポートが見えないので、音が出始めてからとなる