2020年12月10日木曜日

2020年12月7日月曜日

kdialog フォント

KDEの kdialog fontに使えるっぽいもの。

Debian + KDE上の kdialog --msgbox で実験。
同じディレクトリの hisa0.gif という img も表示可能なようです。
(hisa0.gif は特に意味ありません。たんなる gif画像です。)

$ ./example.sh
表示結果

以下 example.sh の内容
---
#!/bin/bash
kdialog --msgbox \
"
<h1>Hello world!</h1>
<ol> 
<li><font style="color:red">KDialog</font></li> 
<li>How are you?</li> 
<li><b>Not so bad</b></li> 
<li><big>M&aacute;s y menos</big></li> 
</ol> 
<br><img src="./hisa0.gif" ><br> 
<ol type=a> 
<li><i>&iquest;Qu&eacute; tal?</i></li> 
<li><u>&iexcl;Muy bien!</u></li> 
</ol><br>
<b>ciao</b><br> 
<b><font style="color:green">auf Wiedersehen</font></b><br>
<font style="background-color:yellow">バイバイ</font><br> 
<h2>bye</h2> 
"
--- ここまで
以上、間違ってるかもの個人的メモ

2020年12月1日火曜日

ffmpeg の進捗率を pipe viewerで表示

[概要]
シェルスクリプトのクリックで起動。KDEのkdialogを使って、ディレクトリ/home/usr/Videoから mp2t/tsのファイルを表示。選んだファイル1個を ffmpegで 同名.mp4に変換する。入力ファイルのサイズが大きいとkdialogが固まったようにみえるので、KDE konsoleを表示して ffmpegの標準エラー出力と pv(pipe viwer)の進捗状況を表示。キャンセルで終了。

[材料]
KDE kdialog, konsole (Gnomeならgnome-terminal, zenity), pv, ffmpeg 

[ts2mp4.shの中身] 基本的なとこだけ
#! /bin/bash
while true
do
 infile=$(kdialog --title ts2mp4 --getopenfilename '/home/usr/Video/' 'video/mp2t   video/mpeg')
  if [ "$?" = "0" ]; then
    konsole -e $SHELL -c "pv '$infile' | ffmpeg -i pipe:0 -codec copy \"${infile%.*}.mp4\" ; echo \"...Finished\"; sleep 3"
#    trash-put "$infile"
  elif [ "$?" = "1" ]; then
    kdialog --title ts2mp4 --passivepopup "CANCEL" 3
    exit $?
  else
    kdialog --title ts2mp4 --error "ERROR";
    exit $?
  fi;
done

[説明]
・ffmpeg用のGUI メディアコンバーター: winff-qtをインストールすれば済む話。
・ディスクトップ環境KDEで、シェルスクリプトからGUIモドキが使える kdialogを使用。gnomeではZenityを使う。
・KDEのkonsoleは、xtermだと、xterm -e "pv $infile | ffmpeg -i pipe:0  -codec copy \"${infile%.*}.mp4\" ; echo \"...Finished\"; sleep 3" となる。
・pv はインストール要。
・ffmpegのオプション pipe:0 標準入力, 1:標準出力, 2:エラー出力, ":-"または ": " 自動判定。
・pv はあくまで目安程度。瞬間表示で見難いけどバーが伸びていって%表示や残り時間を表示。

・KDE:trash-cli をインストールすると、元ファイル.tsをゴミ箱に送れる $ trash-put "$infile"
・kdialog --progressbar ...は、awkの変数をシェルスクリプトにうまく渡せないのでヤメた。

環境は "2020年11月27日金曜日"の下の方
以上、素人の使い捨て道具