我が家がほしくなってから……

自分の覚書のために
ブログを書きはじめてみました

Raspberry pi3でハードウェアアクセラレーションVLCインストール

2016年12月01日 | PC
最近、Raspberry pi3をいじってて寝不足
Google先生にHardware AccelerarionなVLCを検索して
使えるものがあったのでメモ

$ uname -a
Linux raspberrypi 4.4.35-v7+ #931
でvlc-2.2.1にて実施しています。

まずは
sudo apt-get build-dep vlc
apt-get source vlc
cd vlc-2.2.1
にて、依存関係チェックとソースのダウンロードして

debian/rulesの以下を編集
# configure features
confflags += \
--enable-a52 \
--enable-aa \
...
--with-kde-solid=/usr/share/kde4/apps/solid/actions/ \
$(NULL)
ここに追記して
# configure features
confflags += \
--enable-a52 \
--enable-aa \
...
--with-kde-solid=/usr/share/kde4/apps/solid/actions/ \
--enable-rpi-omxil \
--disable-mmal-codec \
--disable-mmal-vout \

$(NULL)

次は
debian/vlc-nox.install.inの以下を編集
...
usr/lib/vlc/plugins/codec/libomxil_plugin.so
...
ここに追記して
...
usr/lib/vlc/plugins/codec/libomxil_plugin.so
usr/lib/vlc/plugins/codec/libomxil_vout_plugin.so
...

パッケージを作成する
debuild -i -us -uc -b
cd ..

最後に、インストールと保護
sudo dpkg -i vlc-nox_2.2.1-3_armhf.deb
sudo apt-mark hold vlc-nox

解除したいときは
sudo apt-mark unhold vlc-nox
とする。

設定は
tools -> Preferences -> Video and select "OpenMax IL"
らしい。

やってみたところ、全画面で全面に動画が再生されるので、
ショートカットをしらないと大変なことになります

Ctrl+qで終了できます。

やってみたのはいいけど、使い勝手がやや悪いなぁ……
最近UoWは試してない

Windows10でUbuntu

2016年08月07日 | PC
Windows10でubuntuが使用できるようになったので、メモっておきたいとおもいます。
Windows10アニバーサリーアップデートすると使える!ってことであげてみたものの、
開発モードにしないと入りませんでした。
かつ、入れるとユーザ名・パスワードを入れることになるので、忘れないようにしないとダメみたいです。

仮想PCのAsteriskを留守電化

2016年03月27日 | PC
voice mailの設定と、日本語音声の導入について、備忘として残しておく。

①/etc/asterisk/voicemail.confの設定変更

[general]
format=wav49
serveremail=asterisk
skipms=3000
maxsilence=10
silencethreshold=128
maxlogins=3
charset=UTF-8
fromstring=不在着信のお知らせ
emailsubject=[PBX]: 新しいメッセージがあります。 電話番号 ${VM_MAILBOX} への ${V
M_MSGNUM} 番目のメッセージを添付します。
emailbody= ${VM_NAME} さんへ:\n\n\t メッセージの録音時間は ${VM_DUR} です。\n\t
電話番号 ${VM_MAILBOX} の録音可能件数は ${VM_MSGNUM}/10 件となります。\n 発信者
名<発信元番号>: ${VM_CALLERID}\n 着信日時: ${VM_DATE}\n\n\t メッセージと併せて、
録音可能件数をお確かめ下さい。\n\t\t\t\t--serviced by pbx.section9.\n\t\t\t\--ad
ministrator.
emaildateformat=%Y年 %m月 %d日 %H時 %M分

[zonemessages]
eastern=America/New_York|'vm-received' Q 'digits/at' IMp
central=America/Chicago|'vm-received' Q 'digits/at' IMp
central24=America/Chicago|'vm-received' q 'digits/at' H N 'hours'
military=Zulu|'vm-received' q 'digits/at' H N 'hours' 'phonetic/z_p'
european=Europe/Copenhagen|'vm-received' a d b 'digits/at' HM
japan=Japan|Q PHM 'jp-ni' 'vm-received'

[default]
999 => 999,all user voicemailbox,aaaa@hoehoe.ne.jp,,tz=japan



②/usr/share/asterisk/soundsに日本語音声を導入
sudo wget https://downloads.asterisk.org/pub/telephony/sounds/asterisk-core-sounds-ja-wav-current.tar.gz
sudo mkdir ja
cd ja
sudo tar zxvf asterisk-core-sounds-ja-wav-current.tar.gz
で、ファイルを取得して、展開すればOKでした。
他のOSだと/var/lib/asterisk/sounds/のようでしたが、lubuntuは/usr/share配下でした。

実機でなくて、仮想PCでasterisk

2016年03月27日 | PC
古いPCだと重いので、仮想PCでできたらいいなぁと、QEMUにチャレンジ。
Linuxがうまくインストールできず……、FreeBSDは入れられたんだけど、
QEMUはNAT接続が基本みたいなので、Asteriskの接続ができず

改めてVMware 12 Playerでチャレンジ。
Lubuntu15.10を使ったら、実機並みに簡単に導入できた。
ブリッジ接続にすることで、Asteriskも接続できた。

lubuntuでxrdp

2016年03月27日 | PC
結局できた。
lubuntuでxrdpをする場合は、
sudo apt-get install xrdp
だけでは足りなくて
sudo apt-get install lxde
も必要らしい。

で、できたけど、日本語入力が……ま、とりあえず使えりゃいいかな。

ひかりFAX アプリ

2016年03月14日 | PC
ひかりFAX
https://flets.com/hikaridenwa/hikarifax/

あれ?私のやりたいことって、「ひかりFAX」でできちゃう
玄箱とか、RasberryPiとか変な方向に進もうかと悩んでたけど
さて、電話機買い替えかなぁ~

asteriskの留守電というかvoicemailは

2016年03月13日 | PC
/etc/asterisk/voicemail.conf
をいじれば良くて、「asterisk voicemail」でググればすぐ出てきました。
録音はwav49だけにして、メールボックス番号にオプションを書けば
メール添付で飛ばすこともできました。

あと、ガイダンス音声は日本語のものをwgetしてきて展開すれば入れられました。

asteriskの記事を書くために

2016年03月12日 | Weblog
Linux使い始めたとはいえ、古いPCで遊んでいるだけで普段は電源を落としているのでWindowsからアクセスしたいなぁと。
xrdp入れてみたけど、うまくつながらないので削除。
sshを入れて、sudo vi /etc/ssh/sshd_configにてPermitRootLogin noにして、Windows側はTeraTermを入れてアクセス。

……何やってるんだ俺……まぁ、気にしちゃいけないw

lubuntu15.10+Asterisk13.1.0+iaxmodem+hylafax_serverでFAX送受信+α

2016年03月12日 | PC
LubuntuでWinModemを使用したFAX送信に引き続き、ひかり電話なのでAsteriskを用いたFAX送受信にTry。これができればWinModemじゃなくても今後もFAXが使用できるから。
(2017/8/5 注)間違え、勘違いがあり修正しています。

結果使用できた
FAX受信したらメールで通知も、FAX送信も
でも、WindowsクライアントからのFAX送信ができなかった……
HylafaxクライアントソフトをWindows10に入れることができなかったので。
(2017/8/5 注)後日試してみたらできました。
http://sourceforge.net/projects/wphf-reloaded/
https://sourceforge.net/projects/jhylafax/?source=recommended
どちらも大丈夫でした。


・ファックスを送るとき
sendfax -n -d 0312345678 fax.ps
(送信票無しで、03-1234-5678へfax.psファイルを送る場合)


実施した手順は以下。


①必要なファイルのインストール
・Asterisk
・iaxmodem
・hylafax-server

sudo apt-get install asterisk iaxmodem hylafax-server


②Asteriskの設定
元のファイルは.orgとかつけてバックアップしておきました。


・/etc/asterisk/asterisk.conf

languageprefix = yes
runuser = asterisk
rungroup = asterisk
defaultlanguage = ja


を有効にしました。


・/etc/asterisk/sip.conf

[general]
allowguest=no
allowoverlap=no
context=default
maxexpirey=3600
defaultexpirey=3600
port=5060
bindaddr=0.0.0.0
srvlookup=yes
language=ja
disallow=all
allow=ulaw
faxdetect=yes

;HIKARI ROUTER PR-400MI
pr-400mi=192.168.1.1
register => 7:password:0007@pr-400mi/400

[201]
type=friend
secret=pass
canreinvite=no
host=dynamic
context=default
mailbox=999

[202]
type=friend
secret=pass
canreinvite=no
host=dynamic
context=default
mailbox=999

[pr-400mi]
type=friend
secret=password
username=0007
fromuser=7
host=192.168.1.1
fromdomain=192.168.1.1
context=default
insecure=invite
canreinvite=no
disallow=all
allow=ulaw
faxdetect=yes

パスワードの位置でちょっと悩みました。


②iaxmodemの設定
うまく起動しなくて、ktgohanさんのWEB記事を参考にして
init.dを書き換えました。


・/etc/init.d/iaxmodem

#! /bin/sh
#
### BEGIN INIT INFO
# Provides: iaxmodem
# Required-Start: $syslog $remote_fs $network
# Required-Stop: $syslog $remote_fs $network
# Should-Start: asterisk
# Should-Stop: asterisk
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Software modem with IAX2 connectivity
# Description: Use this software modem with Asterisk or another
# IPBX with IAX2 connectivity to send and receive
# faxes over VoIP.
### END INIT INFO

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/bin/iaxmodem
DAEMON_OPTS=ttyIAX
NAME=iaxmodem
DESC=iaxmodem

test -x $DAEMON || exit 0

set -e

case "$1" in
start)
echo -n "Starting $DESC: "
start-stop-daemon --start --quiet --background --make-pidfile --pidfile /var/run/$NAME.pid \
--exec $DAEMON -- $DAEMON_OPTS
echo "$NAME."
;;
stop)
echo -n "Stopping $DESC: "
start-stop-daemon --stop --quiet --oknodo --pidfile /var/run/$NAME.pid \
--exec $DAEMON -- $DAEMON_OPTS
echo "$NAME."
;;
reload)
echo -n "Reloading $DESC: "
if [ -e /var/run/$NAME.pid ]; then
kill -HUP $(cat /var/run/$NAME.pid)
echo "$NAME."
else
echo "$NAME not running!"
exit 1
fi
;;
restart|force-reload)
echo -n "Stopping $DESC: "
start-stop-daemon --stop --quiet --oknodo --pidfile \
/var/run/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS
echo "$NAME."
sleep 1
echo -n "Starting $DESC: "
start-stop-daemon --start --quiet --background --make-pidfile \
--pidfile /var/run/$NAME.pid --exec $DAEMON \
-- $DAEMON_OPTS
echo "$NAME."
;;
status)
if [ -s /var/run/$NAME.pid ]; then
RUNNING=$(cat /var/run/$NAME.pid)
if [ -d /proc/$RUNNING ]; then
if [ $(readlink /proc/$RUNNING/exe) = $DAEMON ]; then
echo "$NAME is running."
exit 0
fi
fi

# No such PID, or executables don't match
echo "$NAME is not running, but pidfile existed."
rm /var/run/$NAME.pid
exit 1
else
rm -f /var/run/$NAME.pid
echo "$NAME not running."
exit 1
fi
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop|restart|reload|force-reload|status}" >&2
exit 1
;;
esac

exit 0


これって、/dev/ttyIAXを見るように設定している……のかな。


・/etc/asterisk/iax.conf
ここはktgohanさんのWEB記事そのままのものを入れました。


[general]
bindport=4569
iaxcompat=yes
language=ja
bandwidth=medium
disallow=all
allow=ulaw
allow=alaw
allow=gsm
forcejitterbuffer=no
jitterbuffer=no
;dropcount=2
;maxjitterbuffer=500
;maxexcessbuffer=80
;minexcessbuffer=10
;jittershrinkrate=1
;tos=lowdelay
;mailboxdetail=yes

[iaxmodem]
type=friend
username=iaxmodem
secret=password
host=dynamic
disallow=all
allow=ulaw
allow=alaw
allow=gsm
requirecalltoken=no
context=fax-out
ignoresdpversion=yes


・/etc/iaxmodem/ttyIAX
これは、参考にしたもののcidnameとcidnumberって要らないのかなと思うので削除。


device /dev/ttyIAX
owner uucp:uucp
mode 660
port 4570
refresh 300
server 127.0.0.1
peername iaxmodem
secret password
codec ulaw


で、iaxmodemを再起動
sudo service iaxmodem restart


③Hylafax の設定
faxsetupを実行したと思ったんだけど、ここらへんだったかなぁ……

・/etc/hylafax/config
国際電話はかけないので、InternationPrefixは適当……

LogFacility: daemon
CountryCode: 81
AreaCode: 3
LongDistancePrefix: 0
InternationalPrefix: 0036
DialStringRules: etc/dialrules
ServerTracing: 1


・/etc/hylafax/config.ttyIAX
確か、ファイルが無いので、どこかのweb参考に作ったはず。
FAXNumberは自分とこの番号を設定。


CountryCode: 81
AreaCode: 3
FAXNumber: +81.3.xxxx.xxxx
LongDistancePrefix: 0
InternationalPrefix: 0036
DialStringRules: etc/dialrules
ServerTracing: 0xFFF
SessionTracing: 0xFFF
RecvFileMode: 0600
LogFileMode: 0600
DeviceMode: 0600
RingsBeforeAnswer: 1
SpeakerVolume: off
GettyArgs: "-h %l dx_%s"
LocalIdentifier: "lubuntu server"
TagLineFont: etc/lutRS18.pcf
TagLineFormat: "From %%l|%F %T|Page %%P of %%T"
MaxRecvPages: 200
ModemType: Class1 # use this to supply a hint

Class1AdaptRecvCmd: AT+FAR=1
Class1TMConnectDelay: 400 # counteract quick CONNECT response

ModemResetCmds: AT+VCID=1 # enables CallID display

PagerTTYParity: none

CallIDPattern: "NMBR="
CallIDPattern: "NAME="
CallIDPattern: "ANID="
CallIDPattern: "NDID="


・/etc/hylafax/sendfax.conf
このファイルも無かったから作ったような……


MaxTries: 2
MaxDials: 2


・/etc/hylafax/hfaxd.conf
ここもktgohanさんのWEB記事をみて修正っと。


#JobFmt: "%-3j %3i %1a %6.6o %-12.12e %5P %5D %7z %.25s"
JobFmt: "%-5j %1a %-12.12e %5P %5D %Y %.27s"

TimeZone: local


④Asteriskの追加設定
今の設定だと、留守電になってるんだけど、どうにかしたいなぁ。
留守電入ったらメールするとか。extenの文法勉強してみなきゃなぁ。


・/etc/asterisk/extensions.conf
修正……

[general]
autofallthrough=yes
writeprotect=no

[globals]
MYNUMBER=03xxxxxxxx <= ってここはじぶんちの番号で
SPEAKINGCLOCK=917

[default]
exten => 400,1,Answer()
exten => 400,n,Ringing
exten => 400,n,Wait(1)
exten => 400,n,Playback(fax)
exten => 400,n,Ringing
exten => 400,n,WaitExten(10)
exten => 400,n,Dial(SIP/201&SIP/202,30)
exten => 400,n,GotoIf($["${DIALSTATUS}"="BUSY"]?busy)
exten => 400,n,GotoIf($["${DIALSTATUS}"="NOANSWER"]?unavail)
exten => 400,n,GotoIf($["${DIALSTATUS}"="CONGESTION"]?unavail)
exten => 400,n,GotoIf($["${DIALSTATUS}"="CHANUVAIL"]?unavail)
exten => 400,n,Voicemail(999)
exten => 400,n,Hangup

;;== sip client 201 & 202 un avail
exten => 400,n(unavail),Voicemail(999)
exten => 400,n,Hangup

;;== busy tone
exten => 400,n(busy),busy()

;;== fax-in
exten => fax,1,Dial(IAX2/iaxmodem)
exten => fax,n,Hangup

;
;**** 内線999でvoicemailの再生や削除
;
exten => 999,1,Goto(vm1,1)
exten => vm1,1,Answer()
exten => vm1,n,VoiceMailMain(999,s) ; sオプション : 再生時パスワード要求なし
exten => vm1,n,Hangup()

;
;**** 音声再生テスト : 内線900をコールすると話した内容が、追っかけ再生される
;
exten => 900,1,Answer()
exten => 900,n,Wait(1)
exten => 900,n,Playback(demo-echotest)
exten => 900,n,Playback(beep)
exten => 900,n,Echo
exten => 900,n,Playback(hello-world)
exten => 900,n,Hangup()

; Speaking Clock
exten => ${SPEAKINGCLOCK},1,Answer()
exten => ${SPEAKINGCLOCK},n,Wait(1)
exten => ${SPEAKINGCLOCK},n,Set(FutureTime=$[${EPOCH} + 5])
exten => ${SPEAKINGCLOCK},n,SayUnixTime(${FutureTime},Japan,YbdAPHM)
exten => ${SPEAKINGCLOCK},n,Playback(jp-desu)
exten => ${SPEAKINGCLOCK},n,playback(beep)
exten => ${SPEAKINGCLOCK},n,Hangup

;
;**** ひかり電話からの発信
; +++ 10 桁, フリーダイヤルの 11 桁の形式が一致したら発信OK
; +++ 00 発信 (国際電話発信) 不可

exten => _0ZZX.,1,Set(CALLERID(num)=${MYNUMBER})
exten => _0ZZX.,n,Set(CALLERID(name)=${MYNUMBER})
exten => _0ZZX.,n,Dial(SIP/${EXTEN}@pr-400mi)
exten => _0ZZX.,n,Hangup()
;
; +++ 携帯電話 (スマホ含む) の 11 桁の形式が一致したら発信OK

exten => _0N0X.,1,Set(CALLERID(num)=${MYNUMBER})
exten => _0N0X.,n,Set(CALLERID(name)=${MYNUMBER})
exten => _0N0X.,n,Dial(SIP/${EXTEN}@pr-400mi)
exten => _0N0X.,n,Hangup()

[fax-out]
exten => _X.,1,Set(CALLERID(num)=${MYNUMBER})
exten => _X.,n,Set(CALLERID(name)=${MYNUMBER})
exten => _X.,n,Dial(SIP/${EXTEN}@pr-400mi,300)
exten => _X.,n,Hangup

exten => _X,1,Dial(SIP/${EXTEN}@pr-400mi,30)
exten => _X,n,Hangup


・/etc/hylafax/FaxDispatch
FAX届いたらメールする設定。

SENDTO=aaaa@hoehoe.ne.jp
FROMADDR=aaaa@hoehoe.ne.jp
FILETYPE=pdf;


あとは、hylafaxとasteriskのserviceをrestartしてあげれば使えた……はずw


let's note(CF-W2)のlubuntuでfax使用(の覚書)

2016年03月04日 | PC
CF-W2のモデムはwinmodemなので、Linux(lubuntu15.10)で使えるのか調べてみたら
①sl-modem-daemonを追加
②/dev/modem -> ttySL0へシンボリックリンク
③efaxとefax-gtkを追加
④/var/lockのパーミッションを変更
したら、とりあえず送信できた


うちのFAXが壊れたので、留守電に買替を検討してるんだけど
FAX送れたらいいなぁってのが発端でした。