2015年11月25日水曜日

Samba、Webdav、Apacheの文字化けを解消する方法(FreeBSD10.2)

HPMicroserverが以前格安で手に入ったのでFreeBSDでサーバー構築したが、同じフォルダに対してSambaとWebdavアクセスを併用し、クライアントにWindows、Mac、iOS、Linuxが混在すると、どうしても文字化けする。それを解決する方法を紹介する。ちなみに、私の環境はFreeBSD 10.2である。

方法:
Sambaで文字コードを指定しないこと
その上で、Apacheの設定ファイルhttpd.confの<Directory "/hoge">にIndexOptions Charset=UTF-8を追記すること。

たったこれだけ。
これだけで、文字化けから解消される。
また、PuttyからSSHでログインする際は、ウィンドウ→変換のリモートの文字セットをUTF-8にしておく。

一応、私が使用している設定を一部載せておく。

Sambaの設定はこれを参照
/usr/local/etc/smb4.conf

[global]
workgroup = WORKGROUP
server string = FreeBSD
security = user
hosts allow = 192.168.
netbios name = hoge
map to guest = Bad User
load printers = no
log file = /var/log/samba4/log.%m
max log size = 50
dns proxy = no
max protocol = SMB2
printing = bsd
↑ここにcharsetのオプションを記載しない

[hogehoge]
path = /home/hogehoge
browseable = yes
writable = yes
guest only = yes
guest ok = yes
force create mode = 760
force directory mode = 770

Sambaでアクセスするフォルダ(hoge)はパーミッションを770もしくは777にする。Sambaでユーザー認証を用いる場合は777にしないと動作しなかった。

ただし、管理人自身FreeBSDに精通しているとは言い難いので、ほかにも必要な設定があったのかもしれない。 (うちではとりあえずこれで動きました)
やっていることは全てUTF-8に統一しているだけなので、CharsetにUTF-8を全てのクライアントOS用に記載してもよいのかもしれない。

時間があればMicroserverでFreeBSD+ZFSでサーバー構築する方法を書こうと思います。
一時期格安で販売されていたので、意外と宝の持ち腐れになっている人もいるのではないかと思う。FreeNASではできることが制限されるし。

2015年11月20日金曜日

VirtualPT+TvTest+TVRock再構築

Windwos7からWindows10にアップグレードしたのち、PT2関連の設定を再度行おうとしたらドツボにはまったのでメモを残す。
ちなみに、今回追加のランタイムは一切必要なかった。(もともとあったTvTest0.90、RecTaskを使用)

まずVirtualPTをセットアップする。
VirtualPTをセットアップしたら、TvTestをまずセットアップする。

当然Win7からのアップグレードインストールなので問題はなかったが、Windows10をクリーンインストールした場合、Win7のプロダクトキーを使っていてもMpeg2が再生できないので、適当なデコーダを入れる必要がある。
Windows10でMicrosoft DTV-DVD Video Decoderを有効にするには(未確認)

TvTestを入れたら、TvTestの中にRecTaskを入れる。このTvTestフォルダをコピーして、録画用、視聴用とに分ける。当然録画用の方をBonDriver_VTPT.iniのプライオリティを高くする。

次に、VirtualPTでチャンネルスキャンを行う。(Tvtestではしない)視聴用の方は拡張モードでプリセットを作り、録画用は拡張モードBのプリセットを作成すると同時に、TvRock用のデフォルトチャンネルを出力しておく。

TvTestでUHFのチャンネルスキャンを行い、BS、CSに関しては上記で出力したプリセットを読み込ませる。

録画用でも同様の手順を行う。これにより、BonDriver_VTPT.ch2が生成される。

その後、TVRockのDtune.batを行い、チューナーを使用する数選んで、いったんキャンセルで閉じる。するとドキュメントフォルダに設定ファイルができるため、ここのch-**.txtをVirtualPTのチャンネルスキャンで作成したTvRock用デフォルトチャンネルに置き換える。
ch-ts.txtのみ、TvTestのチャンネルスキャン画面のチャンネル一覧から、チャンネルとサービスIDを参考にして作成する。拡張モードBを使う場合、UHFのみチャンネルを+1にする。
例えば、TvTestのチャンネルスキャンのチャンネルがNHKが27だとすると、TvRockのch-ts.txtのチャンネルを28にする。BS,CSはそのまま

あとは普通にDtuneでTvRockを設定する。設定は下記のような感じにする。

プログラムフォルダ
C:\Program Files\TVTest録画用
視聴用プログラム
TVTest.exe
オプション
/d BonDriver_VTPT.dll /DID A
録画用プログラム
RecTask.exe
オプション
/d BonDriver_VTPT.dll /DID A
録画パス
C:\Videos\PT2 Record

頻繁にチャンネル再設定を行う場合、DTuneをチャンネル設定を行う直前のところでキャンセルすると、ドキュメントにdtv.iniができるため、これを再利用してセットアップするとスムーズにチャンネル設定まで進むことができる。

これで再構築できる。Windows10ではTvRockがスリープからの復帰にスケジューラーを使うと失敗するので、 TvRockのシステム設定で復帰処理をタスクスケジューラで行うのチェックを外す。

Windows10でMicrosoft DTV-DVD Video Decoderを有効にするには

以下コピペ。(未確認)

1.Win10のビット数に応じたcabファイルをWindows Updateサーバから直リンでダウンロード
32bit: http://download.windowsupdate.com/d/msdownload/update/software/updt/2015/07/windows10.0-kb3081704-x86_d7599a428c374970b64d87a5b2f842e55bc36647.cab
64bit: http://download.windowsupdate.com/d/msdownload/update/software/updt/2015/07/windows10.0-kb3081704-x64_ceaa55720fcf4dc8d568b7acb4cf9acf27f54f41.cab

2.作業フォルダの作成
c:\temp、c:\temp2

3.cabファイルを解凍し、msiファイルをc:\tempにコピー

4.コマンドプロンプト(管理者)で以下のコマンドを実行
>msiexec /a c:\temp\windows10.0-kb3081704-x64.msi /qb TARGETDIR=c:\temp2

5.powershell(管理者)で以下のコマンドを実行
>Add-AppxProvisionedPackage -Online -PackagePath c:\temp2\InstallDVDAppxPackage\cd0c0ffe0ee94518833e70b1e931fcff.appxbundle -LicensePath c:\temp2\InstallDVDAppxPackage\cd0c0ffe0ee94518833e70b1e931fcff_License1.xml

2015年11月1日日曜日

DiCEの設定バックアップ

自宅で何らかのサーバーを立てている人は、DiCEのお世話になっていると思う。
ただ、DiCEはたまに設定が消えるという致命的不具合がある。
DiCEの設定ファイルは、
%LOCALAPPDATA%\VirtualStore\Program Files (x86)\Sarad
にあるので、このファイルをバックアップして起き、設定が壊れたらリストアするとよい。(VirtualStoreごと取っておけばいいかもしれない)


リンク
http://www.hi-ho.ne.jp/yoshihiro_e/dice/
DiCE作者様のサイト

2015年8月28日金曜日

本家WinRARをライセンス購入画面を出さずに解凍専用で使う


RARの解凍には各種フリーソフトが使えるのだが、私の知る限りそれらはマルチコアに対応していないため、解凍速度が遅い。また、ファイルによっては文字化けしてしまうことが有る。
マルチコアに対応して文字化けも確実に起こさないのは唯一本家WinRARなのだが、無償で使い続ける限りライセンス購入を促すウィンドウが表示される。
今回は、解凍専用で用いるという条件で、本家WinRARのライセンス購入画面を出さずに使う方法を紹介する。また、解凍した後は自動で元ファイルをゴミ箱に移動する手順を紹介する。

WinRAR in Japan(本家)
http://www.diana.dti.ne.jp/~winrar/

上記のサイトのダウンロードより、WinRARをダウンロードする。32ビット版、64ビット版自分の環境にあった方を落とす。
ダウンロードしたら、通常通りインストールする。以下、 C:\Program Files\WinRAR\にインストールしたものとする。

次に、WRecycleというソフトをダウンロードしてインストールする。
WRecycle
http://pf-j.sakura.ne.jp/download/wrecycle.htm

2017年8月11日書き換え ↓下記ソフトのほうがゴミ箱移動のエラー率が低いようです。
次に、GBというソフトをダウンロードしてインストールする。GB
http://www.vector.co.jp/soft/win95/util/se327357.html

このソフトは、コマンドプロンプトからゴミ箱へのファイルの移動を可能にするソフト。解凍後の元ファイル削除はこれを用いる。
これはインストーラーがないのでC:\soft\GB\にインストールしたものとする。

上記2つをインストールしたら、メモ帳を開き、下記のように記載する。赤文字部分は自分の環境に合わせて変える。
@echo off
setlocal enableextensions
:repeat

set WinRAR=C:\Program Files\WinRAR\WinRAR.exe
set GB=C:\soft\GB\GB.exe
"%WinRAR%" x -ad -or %1

"%GB%" %1

if "%~2"=="" goto end
shift
goto repeat

:end
start /b explorer.exe %~dp1%~n1
endlocal
echo 処理が終わりました
これをC:\Users\ユーザー名\AppData\Roaming\Microsoft\Windows\SendToにRAR解凍.batというファイル名で保存する。
もしくは、%APPDATA%\Microsoft\Windows\SendToに入れる。

あとは解凍したいRARファイルを右クリックし、送るからRAR解凍.batを選択すれば解凍される。

2015年7月18日土曜日

TSファイルをMP4に変換する方法(中級者向け)

以前、TSファイルをMP4に変換する簡単な方法 二重音声も対応という記事を書いた所、意外に需要があったため、今回はやや画質、音質に拘った変換方法を書いてみる。

具体的には、TSSplitterで不要な情報をカット→改良したFFMpegで変換をV-autoEncoderを使用して自動的に行う。

詳細
FFmpegのAACエンコードはFDK-AACが優れているようなのだが、そのままでは使えない。
ソースコードを入手して自力でビルドする必要があるが、それも大変だしなんかうまく行かなかったなので 、オレ流FFmpegビルドツールWEBというソフトを用いて簡単にビルドする。

このツールは最新ソースコードを取り入れてFFMpegを半自動でビルドしてくれるというもの。使い方は作者様のサイトが分かりやすいため読んでください。

オレ流FFmpegビルドツールWEB
http://www.sakura-zaka.net/ffmpeg/
このサイトのダウンロードのページから順番に読み進める

上記ツールでビルドしたffmpeg.exeを任意のフォルダに配置し、続いてFFmpegのプリセットを作成し保存する。(下記のコマンドをメモ帳にコピペしてlibx264.ffpresetという名前で保存する。)
level=41
coder=1
flags=+loop
cmp=+chroma
partitions=+parti8x8+parti4x4+partp8x8+partb8x8
me_method=umh
subq=7
me_range=16
g=250
keyint_min=25
sc_threshold=40
i_qfactor=0.71
b_strategy=1
qmin=10
rc_eq='blurCplx^(1-qComp)'
bf=16
bidir_refine=1
refs=6

次にTSSplitterを入手して任意のフォルダに配置
http://www3.wazoku.net/2sen/dtvup/source/up0797.zip

そしてV-autoEncoderを入手。
http://www3.wazoku.net/2sen/dtvup/source/up0392.zip

V-autoEncoderは、コマンドラインでいろいろな処理を自動的に処理するためのプログラム。
コマンドプロンプトでのバッチファイルより柔軟な使い方ができる。
V-autoEncoderは、
[P1Application]
実行プログラム
[P1Dir]
ファイルが出力されるフォルダ
[P1Arguments]
プログラムに渡す引数
[P1SearchPattern]
出力されたファイル名の検索パターン
[P1SearchMethod]
出力されたファイルの検索方法
の構文からなる。が、ここで詳しい仕様方法を解説すると大変なため、今回はTSを音ズレなしで、簡単かつ確実にある程度の画質、音質でエンコードする事を主眼として解説する。
要は以下の設定ファイルをコピペして改変して使って欲しい。

下記コマンドをメモ帳にコピペして編集した上で、V-autoEncoder.exeと同じ場所にTSh264.cfgというファイル名で保存する。(の部分だけ変える。他は分からなければ変えない)
[RenameInputFile]
YES

[P1Application]
'TSSplitter.exeの場所
'例:C:\Program Files\TsSplitter\TsSplitter.exe
[P1Dir]
'TsSplitter.exeによる一時出力先
'例:C:\ProgramData\TsSplitter
[P1Arguments]
"%Input%" -SD -1SEG -OUT "%P1Dir%" -BUFF 512 -SEP -OVL5,7,0 -SEPA -WAIT2,1
[P1SearchPattern]
%InputName%*.ts
[P1SearchMethod]
Largest

[P2Application]
'ffmpeg.exeの場所
'例:C:\Program Files\ffmpeg\ffmpeg.exe
[P2Dir]
'変換したMP4ファイルの保存先
'例:C:\Users\user\videos
[P2Arguments]
-dual_mono_mode main -i "%P1Output%" -vcodec libx264 -s 1280x720 -aspect 16:9 -crf 25 -fpre "libx264.ffpresetの場所(例:C:\Program Files\ffmpeg\libx264.ffpreset)" -acodec libfdk_aac -vbr 2 -ac 2 -vol 384 -vf yadif -f mp4 "%P2Dir%\%InputName%.mp4"
[P2SearchPattern]
%InputName%.mp4
[P2SearchMethod]

[P1DeleteTemporalFiles]
yes
[P2DeleteTemporalFiles]
上記のコマンドを設定して保存したら、最後に実行するためのバッチファイルを作る

下記コマンドをコピペしてエンコード.batという名前で保存
@echo off
setlocal enableextensions
:repeat
start V-AutoEncoder.exeの場所(例:C:\Program Files\V-AutoEncoder\V-AutoEncoder.exe) -input %1 -settings "TSh264.cfg" -queue
if "%~2"=="" goto end
shift
goto repeat
:end
exit
あとは エンコード.batに、録画したTSデータをドラッグアンドドロップで持っていけば勝手に変換が開始される。(複数一気にドロップ可能)

やや注意する点として、 ドロップするTSファイルのファイル名もしくはフォルダ名のどこかに半角スペースが入ってないと不具合が出ることがある。
なのでTSファイルを保存するフォルダに半角スペースを入れておくとよい。例:"PT2 TS"など。

参考:
オレ流FFmpegビルドツールWEB(作者様のページ)
http://www.sakura-zaka.net/ffmpeg/
塵も積ればほこりと成る(V-autoEncoder作者様のページ)
http://ahnan.blog.fc2.com/

2015年5月16日土曜日

綺麗に画像を拡大する方法

画像を縮小するソフトは数あれど、拡大するとなるとなかなか無い。多くの場合ギザギザになってしまう。
しかし、NeuronDoublerというソフトを使うと画期的にきれいな拡大画像が制作できる。
実際128*128ピクセルの画像を512*512ピクセルに拡大するとこのような差となる。(左は単純な拡大。右がこのソフトによる拡大。クリックで元サイズ表示。)


NeuronDoubler(作者様の配布ページ)
http://loggialogic.blogspot.jp/2012/06/neurondoubler.html

このソフトにはJAVAランタイムが必須なため、入っていない人はJAVAもインストールする。64ビットOSならば64ビット版を推奨。

JAVA
https://java.com/ja/download/manual.jsp

後は、自分の環境に合ったバッチファイルからNeuronDoublerを起動する。
例えば、8GBのメモリを積んだ64ビットOSであれば Run_for_Windows_64bit_8GB.batから起動する。

が、私の環境ではそのままだと
Error: Unable to access jarfile NeuronDoubler_v*.jar
というエラーが出てしまい、起動できないため、バッチファイルをテキストエディタで編集し、NeuronDoubler_v*.jarの部分をNeuronDoubler_v321.jarと実体ファイルを明記して書き換える。すると起動する。 また、最後のpauseも削除していいと思う。

あとは、拡大したい大きさのボタンを選んで画像を選択するだけ。しばらく待つと元ファイルと同じ位置にリネームされた拡大画像が作成される。


雑感
繰り返しになるが、このソフトは画期的に自然な感じに拡大してくれ、本当に驚いている。
余談だが、昨年末100周年Suica騒動があった際、ニュースを聞いて私も欲しくなった。
当然買える状態では無いため、適当なサイトから100周年Suicaの画像を取得し、このソフトで拡大した後ノイズ除去を行い、痛Suicaを作る容量で作った所、本物と見紛うものを作ることが出来た(笑)。

ちなみに拾ったのはこのページのもの。
http://news.mynavi.jp/photo/news/2014/09/25/147/images/001l.jpg

ノイズ除去はここ
http://www.photo-kako.com/noise-reduction.cgi

但し、痛Suicaを作った場合、チャージなどでスロットインタイプの機械は通さないように注意して欲しい。(詰まる原因になる。)

このページの雪だるまの画像↓
http://mricons.com/icon/122401