🎬
ターミナルで動画を再生するコマンドラインツール「moview」の紹介
ターミナル上で動画を再生できるコマンドラインツールをつくりました。
なぜなら動画はターミナル上で再生できた方がいいので。
こういうの
前提条件
moview は事前に FFmpeg がインストールされている必要があります。
例えば Homebrew を使用している場合は brew install
でインストールすることができます。
$ brew install ffmpeg
その他のインストール方法については FFmpeg のドキュメントをご参照ください。
インストール
Homebrew を使用している場合は brew install
でインストールすることができます。
$ brew install koki-develop/tap/moview
また、 moview は Go で作られているので go install
でもインストールすることができます。
$ go install github.com/koki-develop/moview@latest
もしくは Releases ページからバイナリをダウンロードしてください。
使い方
$ moview --help
Play video in terminal.
Usage:
moview FILE [flags]
Flags:
--auto-play auto play video
--auto-repeat auto repeat video
-h, --help help for moview
-v, --version version for moview
moview
コマンドに動画ファイルのパスを指定すると再生が開始されます。
動画フォーマットは FFmpeg でサポートされているものであれば問題ありません。
$ moview ./path/to/video.mp4
再生中の操作方法は以下の通りです。
キー | 機能 |
---|---|
Space or Enter
|
再生 / 一時停止 |
← or →
|
再生位置の前後移動 |
Ctrl+c or Esc
|
終了 |
仕組み
FFmpeg で動画を 1 フレームごとの画像に切り出したあと、それらを 1 枚ずつ ASCII 文字列に変換しているだけです。
画像の ASCII 文字列への変換には qeesung/image2ascii を使用しています。
その他
moview では以下のパッケージやツールを使用しています。
- CLI フレームワーク : Cobra
- TUI フレームワーク : Bubble Tea
- リリースの自動化 : GoReleaser
この辺りは以前公開した次の記事で簡単に紹介しているので、こちらをご参照ください。
まとめ
Discussion
https://asciinema.org/ で共有すると捗りそう感ある。(zenn が対応していないのが残念だが。