あれこれ備忘録@はてなブログ

勉強したことやニュースや出来事を備忘録として書いていきます

このブログには広告が含まれます

デスクトップ画面やアプリの動作画面を録画してGIFに変換する

arekorebibouroku.hateblo.jp

先程の記事を書く時に、FirefoxでAbemaTVを見た時の動作画面をキャプチャ動画として記録する必要が出てきて、必要なアプリをインストール、GIFに変換する方法を学んだのでそれを記録しておく。

SimpleScreenRecorderというアプリケーションが、Linuxでは簡単にデスクトップやアプリの動作画面をキャプチャできるのでこれをインストールした。

Main page - SimpleScreenRecorder - Maarten Baert's website

sudo add-apt-repository ppa:maarten-baert/simplescreenrecorder
sudo apt-get update
sudo apt-get install simplescreenrecorder

今回は問題なかったが、32bitアプリケーションでOpenGLを使っているものをキャプチャする場合には32bitのSimpleScreenRecorderのライブラリが必要なようだ。

if you want to record 32-bit OpenGL applications on a 64-bit system: sudo apt-get install simplescreenrecorder-lib:i386

これで録画した動画の一部をアニメーションGIF画像にしたほうがWebの記事などで引用にするときには便利だ。

ffmpeg と ImageMagick で動画をアニメGIF 変換

GIFアニメ生成にImageMagickはオワコン、情強は高速なGraphicsMagickを使う - 海峡

ffmpeg -i test.mp4 -an -r 15 -s 320x180 work/%04d.png

などで一度PNG画像に変換してこれを使ってGIF画像を作ると綺麗な画面のアニメーションGIFになるらしい。

convert  work/*.png test2.gif

とするのは、ImageMagickを使った処理らしいが、これの派生であるGraphicsMagickを使うと高速にGIF画像が作れるようだ。

Ubuntuの標準のリポジトリにあるようなのでインストールしてみた。

GraphicsMagickを使った返還の場合には

gm convert *.png hoge.gif

とするそうだ。

Ubuntuクリーンインストールした時に再び設定できるように記録しておく。

arekorebibouroku.hateblo.jp

上の記事にもこの項目を追加しておこう。

追記

ちょうど良いタイミングで同じようなテーマの記事があったのでこれもリンクしておいて、あとで試してみる。

Peek Is An Animated GIF Screen Recorder Tool for Linux - OMG! Ubuntu!

Make Animated Screenshot Gifs Using Gifine for Linux - OMG! Ubuntu!

Peekは何だか通常のアプリケーションとは違って、直感的で使いやすそうだ。

GifineもこれひとつでアニメーションGIFもMP4動画も作れて便利そうだが、Luarocksなど依存しているアプリが複数あってこれらも一緒にインストールしなくはいけないのが面倒そうだ。

デマかと思ったら本当だった!AbemaTV(アベマ)で字幕なし英語動画が流れる不思議な不具合。原因は?

「この番組、字幕ないの?」

「英語でしか聞けないけど、どうしたの?」

数カ月前から時々、こんなコメントがAbemaTVのコメント欄で出ていた。

吹き替えの番組を見ているのに英語でしか見られないというものである。

字幕、吹き替えが切り替えられるといったデマが実際にあったため、この話題も詐欺だろうと考えていた。

またそのような不具合情報がAbemaTV内のコメント以外、ネット上に見当たらなかったので、デマであると判断していた。

しかし、今日、実際に試してみたところ本当だったのである。

現在、その不具合が確認できるのは『新ビバリーヒルズ高校白書』である。

もしかしたら他にもあるかも知れない。

技術的な原因はわからないが、直接的な原因はFlash Playerプラグインを使わずに動画を視聴している場合に起こっているようである。

以前にも書いたが、AbemaTVはHTML5での動画再生に対応している。

どうやらTHEOPlayerというHTML5ベースのプレイヤーを利用しているようだ。

World-Class HLS and MPEG-DASH HTML5 Video Player | THEOplayer

THEOplayer(ジオ・プレーヤー)プラグイン不要!HTML5ベースのストリーミングプレーヤー|Media-Gather(メディア・ギャザー)動画管理・配信プラットフォーム 対応


追記

動画の配信方式がApple HTTP Live Streaming (HLS)というものらしい。

HTML5時代のネット動画技術〜良い子悪い子普通の子(増補改訂版)

https://image.slidesharecdn.com/160625ccreativecamphtml5video-160712075809/95/html5-11-638.jpg

HLSとは? 11 https://developer.apple.com/streaming/examples/ ぶった切られた 動画ファイル (セグメントまたは フラグメント) 拡張子は.TS  m3u8という動画ファイルのプレイリスト(マニフェスト)に書かれているとお りに、10秒程度の長さにぶった切った動画コンテンツを次々と連続再生するの がHTTP Live Streaming(HLS)  HTMLやJPEGと同じHTTPでブラウザにダウンロードします  その名の通りライブ可能!でもVODにも対応してます  帯域に合わせて最適なビットレートに切り替え再生できる 「HTTPアダプティブストリーミング」の一種です

VLCプレーヤーで見られるようにならないかと思ったが、やっぱり駄目だった。

追記終わり


しかし、通常はFlash Playerプラグインを利用した動画再生を優先している。

ただ、Flash PlayerプラグインをClick to Playでクリックやタップしないと有効にならないようにしている人も多いと思われる。

以前はFlash Playerプラグインを明示的に無効にしない限りはプラグイン領域が表示され、クリックして有効にするまで待機されるようになっていた。

現在は、一瞬そのような画面が表示されるがすぐにHTML5プレーヤーを使うように変更される。

この状態で『新ビバリーヒルズ高校白書』を視聴すると英語音声が聞こえるのである。

またChromeChromiumでAbemaTVを視聴すると何故かPepperFlashプラグインが使われない場合がある。

PepperFlashプラグインが有効にしてあっても、アクセスしたときにこれが使われず、HTML5での視聴になるらしい。

こうなると英語音声での視聴になってしまう。

どうやらAbemaTVは日本語音声と英語音声が一緒になった形式の動画を配信しているようである。

ファイルサイズが大きくなることもあるし、普通は聞こえない方の音声は取り除いて配信するものだと思っていたのだが、どうやらそんなことはないようだ。

聞こえない音声の分の情報も受信しているのだろうか?

どうせそのようにして配信しているなら、プレーヤーで切り替え可能にしても良いのではないかと思う。

切り替えができなくても英語音声のデータは受信しているのである。

無駄に受信データが使われているのでとても無駄である。

さらには、FirefoxではHTML5での再生は不具合が多く、きちんと再生できないことがほとんどである。

真っ黒な画面で再生がいつまでも始まらないか、始まったとしても画面が同じ場面で妙なコマ送りの点滅がつづいて何コマかが延々と繰り返され、音声だけが流れたりする。

再生したスクリーショット動画

画像ではアニメーションGIFが繰り返されているだけだが、実際に動画を見てもこのようになってしまっているのだ。

音声だけは通常通り流れる。


追記

どうやら設定のせいのようだ。

「設定」-「詳細」にある「ハードウェアアクセラレーション機能を使用する (可能な場合)」のチェックを外すと問題は解決する。

追記終わり


他にもFirefoxChrome問わず、タイミングによって読み込みができず、動画が再生されない時がある。

再生されるまで何度も再読み込みすることになるのだ。

Flash Player有効の状態で見るのがAbemaTVとしても想定された利用の仕方なのだろうし、確実に問題なく見られるようなのでそのようにするのが正解なのだろう。

タブレットでもスペックに問題がなければブラウザでAbemaTVは見られるようだが、やはり専用のアプリで見るのが正攻法なのだろう。

ちなみにUbuntuではFirefoxでAbemaTVを見るとFlash Playerプラグインで視聴した場合には、「タブをミュート」する機能は使えない。

ミュートしても音声は消えないのである。

HTML5プレーヤーではタブのミュート機能を問題なく使うことができる。

小さな点だがなかなか悩ましい。

2017/01/15 追記

FirefoxでもFlash Playerプラグインの動画プレーヤーよりもHTML5プレーヤーが優先されるようになった。

Flashの方を優先する方法としてはアドレスバー右のハンバーガーメニューから「アドオン」を選択して「プラグイン」の「Shockwave Flash」で「実行時に確認する」から「常に有効化する」にする方法くらいしか思いつかない。

Chrome(Chromium)ブラウザでFlashを優先する方法は、アドレスバーに「chrome://flags」と打ち込む。

f:id:t_massann:20170115001932j:plain

出てきた画面でCtrl+Fを押して検索窓に「flash」と打ち込む。

FlashよりHTMLを優先する」という項目が見つかるのでそこの設定を「規定」から「無効」にする。

これでFlash Playerプラグインによる動画プレーヤーが優先されるはずである。

アロンアルファはもう古い。壊れたものを補修する最適なボンドとは?

あまり知られていないが今は便利なボンドがある。

光重合という仕組みで、光を当てると硬化してプラスチックの様に固くなる樹脂があるのだ。

歯医者で歯と同じような白い樹脂で穴を埋めてもらった人は多いだろう。

あれと同じような仕組みである。

光を当てなければ固まらないので手についても指がくっついたりすることはない。

また、容器の中や口付近で樹脂が固まって使えなくなるということもほとんどおきない。

アロンアルファは水分に反応して固まってしまうため、容器内で固まってしまい、口が詰まって使えないくなってしまった人も多いのではないだろうか?

ライトボンドではこういうことが起こりにくいため、とても便利である。

また、アロンアルファは面を接着するのが得意だが、補強という点でいうと弱い。

ライトボンドではプラスチックのように固まるために、横方向の力にも強く、ものを修理するのにはアロンアルファよりも利点がある。

特に現代の世の中にあふれているプラスチック製品の修理には持って来いの製品である。

アロンアルファでは接着面では強くても、横方向に力を加えるとパキッと折れてしまう。

溶液がなくなってもLEDは電池が切れるまでは使えるので、光重合や光硬化などと書かれたレジンを買えば良い。

ホットボンドよりも使える範囲が広い。

これからはライトボンドの時代である。

是否、おすすめしたい。