min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

MacBookAir 内蔵カメラでコマンドから音無し自撮りする(imagesnap)

 

MacbookAir にはディスプレイの上にカメラが付いている。

f:id:min117:20160811153603j:plain

bashコマンドラインから使えるとよいなと思って調べた。imagesnap という良いソフトがあるらしい。

imagesnap

ImageSnap: Capture images from iSight and other sources from the command line

GitHub - rharder/imagesnap: Capture Images from the Command Line

f:id:min117:20160811153924p:plain

f:id:min117:20160811153940p:plain

ファイルを落としてきて実行するだけ。/usr/local/bin にも置いておくか。

f:id:min117:20160811154208p:plain

使えるカメラデバイスは -l オプションで確認できるらしい。

$ ./imagesnap -l

f:id:min117:20160811154323p:plain

./imagesnap をただ実行すれば内蔵カメラで写真が撮れる。音は鳴らない。ファイル名は自動でsnapshot.jpg となり、imagesnapと同じフォルダに落ちる。

$ ./imagesnap

f:id:min117:20160811154558p:plain

画質は荒めだけど充分。

f:id:min117:20160811154735p:plain

-v オプションをつけると、詳細モード(verbose)が表示される。

$ ./imagesnap -v

f:id:min117:20160811154905p:plain

逆に、全く詳細を表示させない(quietモード)で撮影するには -q オプションをつけるらしい。スクリプト化してバッチ実行するときに良さそう。

$ ./imagesnap -q

f:id:min117:20160811155137p:plain

-t 1.00 と付ければ、1秒毎に写真を撮ってくれる。

$ ./imagesnap -q -t 1.00

f:id:min117:20160811155733p:plain

 

 

Windows10 AnniversaryUpdateをMicrosoftのサイトから手動で適用する

 

仮想環境のWindows10にAnniversaryUpdateが降ってこない。仮想環境だから?英語版だから?原因不明。bash使いたいんだが。

f:id:min117:20160807084300p:plain

と思ってたら、ツイッターで見かけたこの記事。

f:id:min117:20160807084714p:plain

手動でAnniversaryUpdateを適用できるらしい。

https://support.microsoft.com/ja-jp/help/12387/windows-10-update-history?ocid=update_setting_client

f:id:min117:20160807084819p:plain

さっそく適用する。

ーーー

リンクからプログラムをダウンロードして、管理者で実行。

f:id:min117:20160807084751p:plain

このPCに変更加えていい?よいよい。

f:id:min117:20160807084917p:plain

Update Now!

f:id:min117:20160807084952p:plain

待ち遠しい。

f:id:min117:20160807085004p:plain

エラー…

Contact your system administrator to upgrade Windows Server or Enterprise editions.

f:id:min117:20160807085035p:plain

いや、システム管理者は自分だし。残念。

 

fedora ffmpegでハイビジョン映像tsから必要な部分だけ切り出す(トリミング)

 

f:id:min117:20160807082613p:plain

オリンピック男子体操を録画したハイビジョン.tsから、必要な部分だけ切り出したい。tsファイルから切り出すときは、-acodecオプションで音声を変更しないとうまくいかないらしい。

コマンド

 ffmpeg -ss 00:02:15 -i 20160806_222559.ts -vcodec copy -acodec libmp3lame -strict unofficial -t 600 20160806_222559_trim.ts

意味

-ss 00:02:15

 開始から2分15秒のところから切り出す(スタート位置の指定)

-i 20160806_222559.ts

 ソースファイル名

-vcodec copy

 ビデオのコーデック指定。元ファイルと変えないからcopyとする。

-acodec libmp3lame -strict unofficial

 音声もcopyでいいんだけど、こうしないとなぜか変換に失敗する。

-t 600

 開始から600秒(=10分間)を切り出す。

20160806_222559_trim.ts

 切り出したあとのファイル名。

 

 

 

数分程度で切り出し成功。男子体操。それにしてもすげえ筋肉だな。

f:id:min117:20160807082641p:plain

f:id:min117:20160807082710p:plain

f:id:min117:20160807082723p:plain

f:id:min117:20160807082740p:plain

f:id:min117:20160807082758p:plain

f:id:min117:20160807082821p:plain

RaspberryPi 3 omxplayerの音量UPして動画再生するには --vol +1500 オプションを付ける

 

omxplayerで動画再生するスクリプト作ったけど、再生時の音量が低い。音量UPするには --vol +n オプションを付ければいいらしい。

$ vim play_omxplayer_VOLUME-UP.sh

f:id:min117:20160806102354p:plain

$ omxplayer --vol +1500 ファイル名.mp4

f:id:min117:20160806102357p:plain

--vol +1500 くらいだと、ちょうどテレビのリモコンの+で1つ音量UPしてくらいの感覚。これはいい。

bash lastコマンドで得たログイン情報を一意化して並べ替え、いつどこからリモート接続したか一覧化する

 

自前サーバのlastコマンドの結果。

f:id:min117:20160805071234p:plain

左から3つ目のフィールドが、リモートからのログイン情報。これを、ログイン者ごと、最新のログイン時間と一緒に一覧化する。

擬似コマンド

SELECT DISTINCT login_user,login_time FROM last_log ORDER BY login_time;

bashコマンドでもいけそうだけど、mysql使ってみる。bashでlastコマンドの結果を定期的にmysqlに格納→一意化/並び替え→ファイルに格納 をcron化して定期的にやりたい。

bash dockerの日本語の文字化けは export LC_ALL=ja_JP.UTF-8 で解決

 

docker にアタッチした状態で nginx の index.html に日本語を書いたら文字化けした。調べて、以下で解決。

ーーー

dockerにアタッチた状態で

# export LC_ALL=ja_JP.UTF-8

f:id:min117:20160731205234p:plain

一応、実験した docker のバージョンも載せておく。ホストOSは fedora20、dockerのOSは centos:7 。

f:id:min117:20160731205327p:plain

参考

shunlog.hateblo.jp

bash docker の最新版をfedoraにインストールする

fedoraに最新のdockerをインストールしたい。

# yum -y install docker-io だと、バージョン1.5がインストールされてしまう。かなり古いからダメ。

ーーー

最新版のdockerインストールは以下のコマンドでできるらしい。

# curl -sSL https://get.docker.com/ | sh

http://qiita.com/Arturias/items/6c16ef4fd22e7ea4e7c3

f:id:min117:20160731124615p:plain

公開鍵も自動でインストールされる。

f:id:min117:20160731124348p:plain

インストール完了後に続いて「docker version」コマンドが走るもののdockerデーモンがまだ起動していないので「runnning on this host?」エラーが出ているが、インストール自体はうまくいっている。

# which docker にも反応がある。

f:id:min117:20160731125520p:plain

docker サービスを起動する。

# systemctl start docker.service

または

# sudo docker -D -d

docker のバージョンを確認する。

# docker version

f:id:min117:20160731130714p:plain

インフォメーションも確認する。

# docker info

f:id:min117:20160731130153p:plain

やっとインストールできた。これで使える。centos:7のコンテナを作ってみる。

# docker run --privileged -t -i -d -p 80:80 -v /mnt:/mnt --name example-nginx-binbash centos:7 /bin/bash

f:id:min117:20160731131135p:plain

うまくいった。