カテゴリー:Linux

温度の不思議

投稿者:arrumis

仕事中に簡易懸濁法について話をすることがあります。そのときに使用するお湯の作り方で、ポットのお湯(95度)と水道水(約18度)を等量混合で55度程度のお湯が出来ますよ。と説明するんですが、学生時代にやってた家庭教師の時の学生からの質問をいつも思い出します。

中学2年生「100度のお湯と氷を同量混ぜても50度にならないのはなぜ?」 -> 大凡10度の水になるはず。(氷の融解熱が大凡333J/gとすれば、前記の値くらいになるはず・・・)(1)

この質問は、理科の授業で反応熱を勉強し始めた頃に出て来てた気がします。たぶん・・・。んでもって、ちゃんと説明して理解してもらった後に、次の問題を出すとチンプンカンプンになってしまうという罠があります。皆さんご注意を・・・

「100度のお湯と0度の水を同量混ぜると50度になる?」 -> 50度の水(お湯)、ただし水とお湯以外に熱が逃げなかったとする。(2)
「質量100gの0度の水と-15度の氷を同重量混ぜたら何になる?」 -> 0度の氷水、ただし(以下略 (3)

 

 

つまり、氷と水の違いが液体、固体だけじゃなくて、エネルギーが違うんだぞってのを教える難しさがよくわかる内容なんですよ。うん。今だから、難しいのが解るw

 

続き▽

tex,徒然なる日記|2017年12月6日|10:58 PM|コメント(0)			



(更新)QNAPにOpenSSHを入れて接続

投稿者:arrumis

更に追記(2017/10/06):バージョン4.3.3で確認しましたが、デフォルトのSSHでユーザーを指定してのSSHログインが出来るようになっているようです。色々いじる必要も無く、「コントロールパネル」->「TELNET/SSH」->「SSH接続を許可する」にチェックを入れ、下にある「アクセス許可の設定」からユーザーをしてすることでSSHが有効になる。

 

(追加の追加情報 2015/10/29)Var4にアップデートしたら、ipkgが使えなくなっているので、この記事のように行っても無駄になりました。新しい方法はこちらの記事を参考に。といってもリンクを張ってるだけですが。

久しぶりにlinux系のお話。

 

前置き

相も変わらず、忘備録なので信じちゃだめですよ。私がうまく動いても他の人が動くという保証はないですからね!

というテンプレはさておき。何がしたいかというと。現在のデスクトップPCがUBUNTU15.04なので、QNAPの提供しているQSYNCというフォルダ同期ソフトが使えない。
クライアント(デスクトップ)PCがlinux系なので、rsyncをcronで動かせばいいだろう。という発想に落ち着いた。

さて、それでrsyncについて調べてみたら、どうやらSSH通信をしているらしい。

さて、それでQNAPについて調べてみたら、どうやらSSH通信がメンドクサイらしい。

 

ということで、まずはQNAPにSSH通信をできるようにしよう。という話。

んでもって、QNAP標準のSSHを使ってみたら、これはビックリ、admin(管理者)しかログインできない。とのこと。私の感覚だと、管理者以外でのSSHログインは認めるが、管理者NGってのが普通だと思ってたので、こりゃいかん。どうにかして、一般ユーザーのSSH通信を確保せねば。

という経緯がある。

ということで、QNAPにOpenSSHを入れて、一般ユーザでのSSH通信を行う。というのがこの忘備録の目的である。

続き▽

Linux|2017年10月6日|2:40 PM|(更新)QNAPにOpenSSHを入れて接続 はコメントを受け付けていません。			



TmpegEnc,ffmpegどっちを使う?

投稿者:arrumis

ソースは30分アニメ(m2ts形式ファイル、CMカットなど編集してるので、実質24分前後)

現在の環境は第二世代Core i 5なので、エンコードにはちょっと時間がかかる。なので、できるだけきれいにそして短い時間で終わることが望ましい。相反する命題なんで、無理だとは解ってるけど!w

まぁ、x265にも興味があったので、実験がてら、タイトル通りのことをしてみました。

 

結果、90秒のサンプルを用意し(BS11放送うたわれるものOP使用)同じ設定でどちらがどのくらいの時間がかかるか。を見てみたところ、
ffmpegをpowershellで動かした時が、4分47秒。
TmpegEncが6分8秒

 

うん、こりゃ、ffmpegが早いな。90秒で2分の差、つまり24分だと32分の差となるわけだ。これが50本あるとしたら、1600分、つまり約26時間分時間がかかることになる。ちなみに、50本のエンコードはだいたい2日ちょっと。まぁ、これが、3日になろうがあまり影響はないんだけど、(エンコ専用マシンなので)消費電力考えると、結構悩ましい時間でもあるw

 

ちなみに、メインマシンの第6世代Core i 7で同じ実験をしたところ、ffmpegで2分26秒。TmpegEncで4分41秒。

やっぱりffmpegの方が早い。

 

ということで、x264のままであるならば、ffmpegのバッチエンコでしばらくは続けそうです。

 

x265が実用的な時間でエンコードできるようになったらまた考えるかも。

Linux,徒然なる日記|2015年10月2日|1:45 PM|TmpegEnc,ffmpegどっちを使う? はコメントを受け付けていません。			



TmpegEncのH265オプション

投稿者:arrumis

TmpegEncの話がでましたので、ついでにH265のオプションも気になったので調べてみました。
調べてみた、というよりも、先人たちの記事を丸写しした、といったほうが正しい。

参考にしたのは「私的x265解説まとめ:Nothing Here – ブロマガ」。

表の左側はTmpegEncで出力したMP4ファイルをMediainfoで設定を引っ張ってきたもの。
右にその解説。ただ、この設定がTmpegEncのどの設定項目なのかはまだ確かめていない。

wpp WPP(Wavefront Parallel Processing)、波状並列処理。
ctu=32 HEVCは動画をCTU(Coding Tree Unit:四分木型符号化単位)という正方画素ブロック単位にわけ、さらにそれをCU(Coding Unit:符号化単位)単位に分割して様々な処理を行う。PU(Prediction Unit:予測単位)とTU(Transform Unit:変換単位)が扱う領域の平坦なところをまとめて処理すればその分圧縮できるので、これの最大値が大きいほどビットレート当りの画質を稼ぎやすい。逆に複雑な部分にはより細かなCUを割り当てる。減らしたぶんだけエンコードも早くなる.
tu-intra-depth=1 ブロック階層はCUの四分木分割の回数
tu-inter-depth=1 ブロック階層はCUの四分木分割の回数
me=1 動き予測アルゴリズム。4:Full Searchは3:Starに毛が生えた程度で時間に見合うだけの出力が得られないので1:Hexか2:Umhでいいと思う。 Umhで満足できない画質なら、他の設定が悪いかソースが悪いの2択なので無理に上げる要素ではない。
subme=1 サブピクセル動き予測。数値を上げた分だけ画質も上がるがかなりエンコ時間が増える。3が実用的な値だと思う。5以上は時間が有る時にしたほうが良い。
merange=44 動き検索範囲。再生時間にもよるが増やしたぶんだけ効果はある。けど4桁5桁に設定するとエンコードが終わらないので57~99の範囲で設定するのがいいと思う。最大値にするとエラー吐いて止る。
no-rect CUに分けて処理する際に予測ブロックを正方形以外の形や長方形などにも分解できるようにする。
no-amp rectがオフだとampはオンにしても働かない。
max-merge=2 動き保障予測の範囲を決める。隣接するブロックの動き情報が似ていればそれを流用し、その位置情報を代わりに送る事で1つに統合して符号量を減らす。HEVCの強力な機能の1つで、動きの激しい動画では特に有効的。常に5でいいと思う
temporal-mvp
early-skip 最大サイズのCUを分析して省けそうな計算を取り除く。出力にほぼ差は出ないがエンコードが早くなる・・・・・・らしい。
no-fast-cbf Disable Cbf fast mode
rdpenalty=0 penalty for 32×32 intra TU in non-I slices. 0:disabled 1:RD-penalty 2:maximum
Default: 0
no-tskip Disable intra transform skipping
tskip-fast 唯一のN×Nイントラ予測(4×4ブロック)のスキップ変換を評価するパラメータ(解読不能)。
no-strong-intra-smoothing Disable strong intra smoothing for 32×32 block
no-lossless ロスレスの名のとおり超低圧縮(元の半分ぐらいの容量)でエンコしてくれる。
no-cu-lossless
no-constrained-intra Disable constrained intra prediction (use only intra coded reference pixels)
fast-intra イントラ予測では隣接する上左ブロックからの補間で予測画像を作成し、その差分を符号化することで容量を削減する初期値では有効になっており合計で10モードチェックする。–no-fast-intraで無効にすると合計で33モードチェックする。オフにしても劇的な画質向上はないけれどもエンコ時間は微増加.
open-gop
interlace=0
keyint=300
min-keyint=1
scenecut=80
rc-lookahead=10 レート制御先行検査フレーム数。先読みするスライス型フレームの最大数を決める。上げた分だけ効果はあるが最小値はbframesまでで、最大値はkeyframeを超えると効果が減る。
bframes=1 最大Bフレーム連続数。値が少ないほどエンコが早くなる。当たり前だけどb-adaptの値で効率が変化する。
bframe-bias=0 Bフレーム挿入傾向。値を増やせばよりBフレームを使うようになる。
b-adapt=0 適応的Bフレーム挿入。
ref=6 L0の最大参照数を決める。最大16まで使えるけどx265の方式ではBフレームを使用すると7までで、b-pyramidをオンにすると6までしか使用できない。それ以上にするとprofile none 、level none扱いとなりエラー吐いて止るので実質6まで。どうしても7以上使いたい場合はallow-non-conformanceをオンにする事で使える。アニメ素材や定点録画なら6にして、それ以外なら3以下でいいと思う。
no-weightp 重み付き予測を有効にする。Pスライスは1枚の画像から復号されるスライス
no-weightb 重み付き予測を有効にする。Bスライスは複数の画像から復号されるスライス
aq-mode=0 適応的QP(AQ)。複雑な部分ではビットレートを増やし、平坦な部分では減らす。 0でオフ。 1でAQをオン。 2でauto-variance AQをオン。
aq-strength=0.00 AQ強度。0にするとAQオフ。実写やゲーム以外のソースでは上げる必要はないと思う。
cbqpoffs=0 Chroma Cb QP Offset
Default: 0
crqpoffs=0 Chroma Cr QP Offset
Default: 0
rd=2 RDO(Rate Distortion Optimization)、レート歪み最適化のレベルを決める。3から5のどれかでいいと思う。
psy-rd=0.30 画質の視覚的な調整をする。人の視覚的に細かいと感じる部分をぼかす事で画質を稼ぐ。使うなら初期値か上げても1.00未満。
psy-rdoq=0.00 psy-rdのぼかしを防ぐことができる機能。rdoq-levelが1か2で使える。(?)実写や細かい粒子が漂う動画なんかでは、この値を高くすることで元の画質を保持できる。psy-rdと共に動きの激しい部分で効果がある。
signhide hide sign bit of one coeff per TU (rdo)
lft Enable Loop Filter
Default: Enabled
no-sao 画素適応オフセット(Sample Adaptive Offset)。エッジ・オフセット処理とバンド・オフセット処理で構成される。デブロッキングフィルタがブロックの境界の歪みを減らしてくれるのに対し、SAOはブロック内部のリンギング歪み、グラデーションの縞々の劣化を減らしくれる。
no-sao-non-deblock
no-b-pyramid ピラミッド参照。再生規格の問題で、PC以外で利用予定がないならオンでいい。
no-cutree x264のmbtreeのような物。動きが少なく参照数も少ないところはビットレートを少なく割り当て、頻繁に参照される部分には多く割り当てる。激しく動く動画では効果がある。オフにするメリットはエンコ時間が減らせるぐらい。
rc=2
pass
bitrate=2816
qcomp=0.60 ビットレート変動量。高い値にしておけばcqp(固定量子化量)の品質が改善する。
qpmin=0
qpmax=51
qpstep=4 最大QP変動幅。知らぬ間にコマンドから消えた。
cplxblur=20.0
qblur=0.5
vbv-maxrate=50000
vbv-bufsize=50000
ipratio=0.71
pbratio=1.30
Linux,PC関係|2015年10月2日|12:03 AM|TmpegEncのH265オプション はコメントを受け付けていません。			



Ubuntu15にFFMPEG

投稿者:arrumis

ubuntu15.04 にffmpegをインストールするをみてFFMPEGをインストールしようとしたのですが、一部動かない所があったので、改変し無事できたので、メモ。


#!bin/bash
cd ~
mkdir ffmpeg_sources
# 必要なパッケージのインストール
sudo apt-get update
sudo apt-get -y --force-yes install autoconf automake build-essential libass-dev \
libfreetype6-dev libgpac-dev libsdl1.2-dev libtheora-dev libtool libva-dev \
libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev \
libxcb-xfixes0-dev pkg-config texi2html zlib1g-dev unzip nasm
mkdir ~/ffmpeg_sources
# Yasmのインストール
sudo apt-get install yasm

# x264のインストール
cd ~/ffmpeg_sources
git clone --depth 1 git://git.videolan.org/x264.git
cd x264 && ./configure --enable-static \
&& make && sudo make install && make distclean && echo "x264 install ok"

# fdk-aacのインストール
cd ~/ffmpeg_sources
wget -O fdk-aac.zip https://github.com/mstorsjo/fdk-aac/zipball/master
unzip fdk-aac.zip
cd mstorsjo-fdk-aac*
autoreconf -fiv && ./configure --disable-shared && make && sudo make install && make distclean

# libmp3lameのインストール
sudo apt-get install libmp3lame-dev

# lameのインストール
cd ~/ffmpeg_sources
wget http://downloads.sourceforge.net/lame/lame-3.99.5.tar.gz
tar xzvf lame-3.99.5.tar.gz
cd lame-3.99.5
./configure --enable-nasm --disable-shared && make && sudo make install && make distclean
# libopusのインストール
cd ~/ffmpeg_sources
wget http://downloads.xiph.org/releases/opus/opus-1.1.tar.gz
tar xzvf opus-1.1.tar.gz
cd opus-1.1
./configure --disable-shared && make && sudo make install && make distclean

# libvpxのインストール
cd ~/ffmpeg_sources
git clone https://chromium.googlesource.com/webm/libvpx
cd libvpx
./configure --disable-examples --disable-unit-tests && make && sudo make install && make clean

# ffmpegのインストール
cd ~/ffmpeg_sources
git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
cd ffmpeg
./configure \
--pkg-config-flags="--static" \
--enable-gpl \
--enable-libass \
--enable-libfdk-aac \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libopus \
--enable-libtheora \
--enable-libvorbis \
--enable-libvpx \
--enable-libx264 \
--enable-nonfree && make && sudo make install && make distclean && hash -r

続き▽

Linux,プログラム|2015年7月18日|12:32 PM|Ubuntu15にFFMPEG はコメントを受け付けていません。			



パスワード管理・・・

投稿者:arrumis

多くの人が「パスワードの管理疲れ」を体験している | スラッシュドット・ジャパン.

 

パスワード管理ソフト使うと便利ですよ.私が使っているのがKeepass2と言うソフト.win/Linux/Androidに対応なので,大変重宝しております.

Linux,PC関係|2015年2月10日|10:54 PM|パスワード管理・・・ はコメントを受け付けていません。			



使い慣れたと思ったら,すぐに更新ですか・・・

投稿者:arrumis

win7が浸透して,使い慣れてきたこの時期にメインサポート終了ですか.@5年は使えるようですが,早めに次のOSに乗り換えてくださいとのこと.

Windows 7のメインストリームサポートが1月13日終了、全サポート終了まであと5年 -INTERNET Watch.

 

さて,そろそろ真面目にLinuxに移行する時期かな・・・

ゲームをしなくなったら,windows に拘る必要も無くなってきたしね.

Linux,PC関係,徒然なる日記|2015年1月8日|1:33 AM|使い慣れたと思ったら,すぐに更新ですか・・・ はコメントを受け付けていません。			



powershell上でのgrepとsed

投稿者:arrumis

先日書いた日記(これ)に一言書き忘れていまして,混乱された方が居られるようで.申し訳ないです.

あの記事はLinux上で行ったときの記録です.という事を書いていませんでした.

ですので,改めて,powershell上で同じことをやってみたいと思います.

続き▽

Linux,PC関係,徒然なる日記|2014年12月2日|12:01 PM|コメント(1)			



パソコンの話題が続きますが.

投稿者:arrumis

(追記)こちらの記事はLinux上で行った記事です.powershell上で同じ事を行いたい場合はこちらの記事を参考にどうぞ.

 

一つ前の記事でかいたシェルスクリプトで,ffproveをつかって,ファイル情報をjson形式で受け取り,その内容から解像度を読み出す.という方法をとりましたが,別のアプローチ.というか,たぶんこっちが一般的なんだろうなと言う方法も備忘録(ボウビ録って思ってたよw)として,残しておきます.

使うのは,

  • ffmpeg
  • grep
  • sed(正規表現も)

続き▽

Linux,PC関係,徒然なる日記|2014年11月5日|1:06 AM|コメント(3)			



ノートPCをubuntuにしてから

投稿者:arrumis

ちょうど一月が立ちます。
ついでに、先日13.10にUpdateしました。得に問題なく使えてます。
Wimaxはどうやら、linuxではつかえ無いみたいですので、おとなしく無線LANでつないでます。
WiFiルータ便利杉w

Linux,PC関係|2013年10月22日|8:26 AM|ノートPCをubuntuにしてから はコメントを受け付けていません。