WSL側でラッパースクリプトを書いて /usr/bin/ あたりにインストールすると良いかも
# ラッパースクリプトを作成
$ cat <<'...' >ffplay
#!/bin/sh
# vim: set ft=sh ff=unix expandtab ts=2 sw=2 :
set -e
_d(){ [ -n "$DEBUG" ]; }; _d && set -x # debug
# wrapper of ffplay.exe (windows binary)
FFPLAY_PATH=${FFPLAY:-/mnt/c/Users/nobuoki/bin/ffplay.exe}
cd /mnt/c && exec "$FFPLAY_PATH" "$@"
...
# /usr/bin/ にインストール
$ sudo install ffmpeg /usr/bin/
一番重要なこと:FFMPEG(ffplay)のPATHを通したあとでWSL2のターミナルを起動する
$ ls *.mp3
airly.mp3
# mp3ファイルを再生(ファイル名渡し/Windowsのパス表記に変換)
ffplay.exe -autoexit "$(wslpath -w airly.mp3)"
# mp3ファイルをパイプ渡しで再生
cat airly.mp3 | ffplay.exe -autoexit -i pipe:
# WSLに timidity(とサウンドフォント)をインストール
sudo apt install timidity freepats fluid-soundfont-gm fluid-soundfont-gs
# midiファイルを timidity で wav 形式でレンダリングしてパイプ渡しで再生
timidity airly.mid -Ow -o - | ffplay.exe -autoexit -i pipe:
# Ogg FLAC 形式でパイプ渡し(timidity の出力をカット、ffplay の映像出力等々をカット)
timidity airly.mid -OF -o - 2>/dev/null | ffplay.exe -autoexit -nodisp -hide_banner -loglevel fatal -i pipe:
# gtts-cliをインストール
sudo apt -y install python3-gtts
# 日本語のロケールを生成
sudo locale-gen ja_JP.UTF-8
# 只今の時刻を日本語で喋らせる
$ LANG=ja_JP.UTF-8 date '+只今の時刻は %p %I 時 %M 分 です' | gtts-cli -l ja -f - | ffplay.exe -autoexit -nodisp -hide_banner -loglevel fatal -i pipe:
ffplay_original=$(command -v ffplay)
sudo mv "$ffplay_original" "${ffplay_original%/*}/fffplay"
sudo ln -s "$(command -v ffplay.exe)" "$ffplay_original"