RaspberryPiでNEC MW5650CをAirPrintで使う

やり方がわからないのでGoogle検索したところ以下のサイトを見つけたので参考にする。
Raspberry PiをAirPrintサーバ化して、iPadでAirPrint非対応プリンタで印刷するまで

cups と avahi-discoverを入れるらしい。

[text]sudo apt-get install -y cups cups-pdf python-cups avahi-discover[/text]

[text]
sudo /etc/init.d/cups start
sudo /etc/init.d/avahi-daemon start
sudo vim /etc/cups/cupsd.conf
[/text]

cupsd.confをvimで編集。
#でコメントアウトしてport 631を追加

#Listen localhost:631 
Port 631

Allow @Localを入れる

# Restrict access to the server...
  Order allow,deny
  Allow @Local

# Restrict access to the admin pages...
  Order allow,deny
  Allow @Local

# Restrict access to configuration files...
  AuthType Default
  Require user @SYSTEM
  Order allow,deny
  Allow @Local

ユーザーが最初のpiであれば以下のようにlpadminで追加する。

[text]
sudo usermod -aG lpadmin pi
[/text]

[text]
sudo /etc/init.d/cups restart
[/text]

この次は、WEBサーバーにアクセス。
http://raspberrypiのURL:631

タブの『管理』-> プリンターの追加
この後、先ほどlpadminで管理者として追加したユーザーでログインする。

ログイン後にネットワークプリンターの項から自分のプリンターを追加。
発見されたネットワークプリンター: NEC MultiWriter 5650C

『新しいプリンターの追加』 で、『このプリンターを共有する』にチェックを入れる。

Xerox Phaser 6360DN をとりあえず設定してみた。
これで使えるだろうか。・・・AirPrintには出てくるんだけど、印刷にならない。なんだろうなぁ。
ここまで1時間くらい作業して疲れてしまったので、次回テストにする。

Raspberry Pi のSoftether-VPNを更新する。

https://ja.softether.org/
ここに行って、
コンポーネントをServer
プラットフォームをLinux
CPUをARM EABI(32bit)
で選択して、出てきたURLをコピーする。

http://jp.softether-download.com/files/softether/v4.22-9634-beta-2016.11.27-tree/Linux/SoftEther_VPN_Server/32bit_-_ARM_EABI/softether-vpnserver-v4.22-9634-beta-2016.11.27-linux-arm_eabi-32bit.tar.gz

頭にwgetを付けてraspberrypiのsshに貼付け

[text]
wget http://jp.softether-download.com/files/softether/v4.22-9634-beta-2016.11.27-tree/Linux/SoftEther_VPN_Server/32bit_-_ARM_EABI/softether-vpnserver-v4.22-9634-beta-2016.11.27-linux-arm_eabi-32bit.tar.gz
[/text]

tar zxvf と入力してsoftと打てばダウンロードしたファイルまでtabキーで出てくるはず。

[text]
tar zxvf softether-vpnserver-v4.22-9634-beta-2016.11.27-linux-arm_eabi-32bit.tar.gz
[/text]

ここまでやるとファイルが解凍されて vpnserverというフォルダにそろう。

[text]
cd vpnserver/
make
[/text]

これでライセンス条項にagreeするか聞かれるので確認してOKなら1を押して更新する。

完了。すごく簡単に更新できるのにまた放置してしまっていた・・・。今度から定期的に確認しよう。

nanodlpの時刻を日本時間に合わせる。

nanodlpを使うようになって、ログをちょいと見てみたら時刻が世界標準時だった。このままでも良いと思うけれど、何度もみるときはすこしこんがらかってしまうし、毎度計算するのも面倒なので変更することにした。

 

dateコマンドで時刻確認すると、世界標準時だった。
pi@nanodlp:~ $ date
Sat  8 Apr 14:05:32 UTC 2017

タイムゾーンを東京にしてみる。
pi@nanodlp:~ $ sudo timedatectl set-timezone Asia/Tokyo

もう一度dateコマンドで確認。日本時間になった。
pi@nanodlp:~ $ date
Sat  8 Apr 23:05:55 JST 2017

RaspberryPi3購入

RaspberryPi3を購入した。発売からずいぶん経ったけど。

ラズベリーパイ Raspberry Pi 3B 技適対応 日本製 バンドル品 ACアダプタセット ブラック(RS品番125-4093)は、通常5,200円を3月末までセール中で4,700円

これは安いなとすぐに感じて発注です。
RaspberryPi3は2までと異なる点はいろいろあろうけれど、電源として必要とする部分の要求レベルがあがったので適切なACアダプタになるものを見つけてつけるのが面倒だったので手を出さないでいました。事実、VPN利用のRaspberry Pi 2B+は実用十分でしたので。でも4,700円でセット価格になるなら話は別。RSの純正お墨付きアダプタがつくので安心だなと探す手間考えたらすごーく楽ちんでしたし。

用途は、Wanhao D7のNanoDLPくらいしか現在のところは想定していませんが。

ちなみにVPN機にしているRaspberryPi2は大阪出張の際に大変活躍してくれました。やはりホテル滞在などの優先LAN環境ではVPN接続のメリットが増すので、自宅PCをほぼそのまま操作しているようなそんな環境にできることはすごく便利でした。
P_20170328_200310

P_20170328_200511_HDR

見た感じ変化は感じません。正直miniUSB端子からの給電をやめてもらいたいのが本音。
4芯の電源供給をはんだ付けできるようなボードにしてほしい。そうでないと電源コネクタが外れてしまうなど、信頼性が大きく下がるし。

P_20170328_200849_HDR
アクリルボードを挟み込むタイプのケース。RaspberryPi2B+で使っており今も現役利用中のケースですが、CPUファンがセットになって値段が下がっていたので再購入。この写真の時は気づかなかったのですが、左上のアクリルねじあなが埋まっています。この後この穴をあけるのに苦労しました。ちゃんと空いていてくれよと。ドライバ・ねじ回しで押せば空きます。

P_20170329_021836_HDR

アクリルに貼ってあった保護シールをはがして組立ました。このケースにしている一番の理由はCPUファンです。CPUは熱伝導のファン無しクーラーが売られていますが、冷却力についてはほとんど効果ありません。一緒に熱くなって終わりです。やはり空冷をしっかりしてあげるのが熱源に対しては有効です。これは熱いシチューはふーふー冷ますのと同じかと。

経験上、まちがいなくCPUファンが必要だと感じていましたので、このケースに落ち着いています。これでnanoDLPをRaspberryOSに入れてみようかな。

RaspberryPi B+にOSMCをインストールする

RaspberyyPi B+は1年前までメインでしたがPi2の登場で、置き換えしてしまってありました。ところがRegza(東芝TV)の外付けHDDがいっぱいになりVardia(東芝HDDレコ)がいっぱいになったという家族の叫びがあったのでメディアサーバー機能を持たせた専用機として生まれ変わらせることにしました。

OSMCのソフトウェアインストール

RaspberryPiのOSイメージがあるページにXMBCというOSがあったはずなのですが、OSMCしかなかったのでいつの間にか変わっていたみたいです。LinuxOSの変化は結構早いので知識がすごく古くなっててびっくりしました。

https://www.raspberrypi.org/downloads/

上記リンクのOSMCをクリックすると以下のURLに移行します。

https://osmc.tv/download/

ここでWindows用を選んでインストールをしようとしましたが回線が遅いのか年末の1月3日で混んでいるのかさっぱりわかりませんが、データダウンロードで途切れたらしくエラー。

001

この画面の後のダウンロードを待っていたのですがエラーになってしまいました。

OSMCのOSイメージダウンロード

https://osmc.tv/download/

仕方ないので上記の一番下のDisk Imageというところからダウンロードを始めました。ここからのダウンロードもかなり遅くて待っていられなかったのでimageの名前で検索してもっと早いミラーはないのかと探していました。

osmc_tgt_rbp1_20151129.img

これを探していたのですが、

https://ftp.uni-erlangen.de/osmc/osmc/download/installers/diskimages/

osmc_tgt_rbp1_20151230.img

さらに新しいファイルがあったのでこれをダウンロードしました。この最新バージョンと思われるものをダウンロードしてインストールしたら細かいところが動作不良していたので、素直に11月29日版をダウンロードしてインストールするのが

高速ダウンローダーのインストール

Chromeダウンロードでは遅すぎてだめだったので、高速ダウンロードに信頼を置いているEagleGetをダウンロードしてきてインストールしました。

超早いです。Chromeで2時間待ちの表示から2分かからず落ちてきました。

microSDにDD書き込み

VectorでDD書き込みソフトをダウンロードして、microSDにOSイメージを書き込みます。

OSイメージをダウンロードしたファイルのGzipはWinRARなどで解凍します。

OSMCの初期設定

最初にJapanese(日本語)を選んだら文字が化けてなにも読めなくなりました。
初期設定時点では、LanguageでJapaneseを選んではいけません!ダメ!絶対。

これにひっかかって、再起動を余儀なくされました・・・

OSMCの日本語化

SSHログインをしてID:osmc PASS:osmcで入ります。

[bash]
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Updating APT cache. Please be patient.
[/bash]

Pi2ではないためか、SSHログインに時間がかかりました。何かしてたのかな。

[bash]curl -L http://git.io/pjg5 | sh -[/bash]

上記コマンドを実行です。このコマンドはgitに上がってるスクリプトを実行してくれるものです。
中身はこれです。

[bash]
#!/bin/sh

URL="https://gist.github.com/mzyy94/15ee1b3880107e9d7ece/download"
TMP="/tmp/mplusfonts"
FONTSDIR="/usr/share/kodi/addons/skin.osmc/fonts/"
FONTCONF="/usr/share/kodi/addons/skin.osmc/16×9/Font.xml"

set -x

mkdir -p ${TMP}
wget ${URL} -O – | tar -zxvC ${TMP}
find ${TMP} -name "*.tar.gz" -exec tar -zxvf {} -C ${TMP} \;
find ${TMP} -name "mplus-1[cp]-*.ttf" -exec cp {} ${FONTSDIR} \;
sed -i.bak -e ‘s/-Semibold/-medium/’ -e ‘s/OpenSans/mplus-1p/’ -e ‘s/Roboto/mplus-1c/’ -e ‘s/-\([A-Z]\)/-\L\1/’ ${FONTCONF}
rm -rf ${TMP}
[/bash]

これでOK

OSMCのIDとPassを変更します。

IDとPASSがosmcのままでは危ないので必須の作業です。

OSMCの初期設定画面から日本語に変更

Settings ⇒ Appearance ⇒ International ⇒ Langage

Languageで決定するといくつかの言語一覧がでてくるのでJapaneseを探して決定ボタンです。すると待ちに待った日本語画面が出てきてくれました!

SAMBAのインストール

USBHDDを接続してファイルにアクセスできることは確認できたけど、ネットワークにRaspberryPiが現れない。うーん、と思ったがまさかSAMBAがインストールされていないとは思わなかった。

OSMCは、MyOSMCからAPPSTOREでsambaを選んでインストール、Applyをするとインストールできるようだ。

SSHコンソールからインストールするのかと思ったが違っていてびっくりしたとともにOSMCはすごいなぁと感心した。

ちなみにUSBHDDを接続しているなら再起動をかけるとSAMBAに共有化されて自動で共有認識されるようになっていてさらに驚いた。

文字化けするのでUTF-8を設定する

[bash]sudo dpkg-reconfigure locales[/bash]

これでjp_JP.UTF-8を選択してDefaultにする。

これをやっても、UTF-8が選べずファイルが文字化けしてしまう。どうしたらいいものか[]みたいな四角い表示がなくなってほしいのだが。

便利だが不満点もある

とりあえずUSB3.0がつながってOSMCをインストールできる安価なデバイスが出たら最強になるだろうなぁと思う。

USB3.0のRaspberryPiがでると自分の不満は解消する・・・。

RaspberryPi B+でも十分に実用できる

OSMCの動作は結構軽いし、MP4(H264)もしっかり再生できている。TS録画した大ファイルをNVEncなどで圧縮して視聴用に保管しておくにはとても良い。

Raspberry Pi Wheezy から Jessieにupgrade

Raspberri Pi 2の大掃除をしていたら、Debianのバージョンアップがあったことに気付いた。

WheezyからJessieになったようなのでアップグレードしてみた。

[bash]
sudo aptitude update
sudo aptitude upgrade
sudo aptitude dist-upgrade
[/bash]

これだけではだめだった。

[bash]
sudo vim /etc/apt/sources.list
[/bash]

/wheezy で検索してみると2か所あったのでこれをjessieに書き換え。

[bash]
sudo aptitude update
sudo aptitude upgrade
sudo aptitude dist-upgrade
[/bash]

これでアップグレードできた。確認するとjessieになっているので最新だ。

ただ、やってみてわかったが、すごく時間がかかる。依存関係の解決プロセスに2時間近くはかかっていたと思う。

とりあえず時間に余裕がある年末だからこそできた作業という感じ。

このあと、らじる★らじるの録音テストは問題なし。

sambaの新規更新をダイアログでかけてしまったため、設定が消えたのでやり直しした。

SoftEtherVPNの設定については全く変わらず、そのまま継続使用可能なことを確認。

VPNが一番便利なので最初からインストールしなおさなくてよかった。

アニソン・アカデミーが5時間放送のライブ

らじる★らじる録音サーバを立ち上げているので余裕かと思いきや、3時間位以上で警告がでたので記事にしておく。

らじる★らじる録音サーバの構築はこちらで紹介している。

アニソン・アカデミー 午後1:00 – 6:00(300分)

アニソン・アカデミースペシャル~冬休みっ!ライブ!ライブ!ライブ!~

中川翔子,あべあきら,藤崎弘士,【ゲスト】ささきいさお,山野さと子,いとうかなこ,elfin’ ~NHKふれあいホールから中継~

コマンドとしてはこれ。

[bash]radiru_rec.py -t アニソン・アカデミー fm 12/26 13:00 5h[/bash]

表示は以下の通り。

/home/pi/.radiru_confs
警告.録音時間が3時間以上です
アニソン・アカデミー,fm, 2015-12-26 13:00:00,300
warning: commands will be executed using /bin/sh
job 202 at Sat Dec 26 13:00:00 2015

 

このように警告が出たのは初めて。3時間以上のラジオ英会話などなかったし、アニソン・アカデミーも2時間番組だったので今まで気づいたことはなかった。

ffmpegの変換ミスが出ちゃうかもしれないがなんとか録音しておいてほしい。

 

中川翔子さんがコアなんだけど、ときどき知らないけど合わせて言ってみたみたいな感じでMCしてるのが面白い。

 

 

Linux Mint でrtmpdumpをソースビルド

Rasbpianでrtmpdumpをソースビルドしたので、LinuxMintの環境も変更しようとしてrtmpdumpのソースピルドをしようとしたところ同じでは失敗しました。
試行錯誤とグーグル検索でやり方がわかったのでメモしておきます。

Linuxmintでの通常のrtmpdumpインストール方法

[bash]sudo aptitude install rtmpdum[/bash]
こうなると思うが、これだと共通ライブラリのバージョンが古い。

rtmpdumpをgitから取得

[bash]git clone git://git.ffmpeg.org/rtmpdump
cd rtmpdump
make
sudo make install[/bash]

これだと共通ライブラリが不足しているとエラーが出てしまう。

librtmp-devをインストールする

[bash]
sudo aptitude install librtmp-dev
git clone git://git.ffmpeg.org/rtmpdump
cd rtmpdump
make
sudo make install[/bash]

Raspbianであればこの方法で問題なく共通ライブラリを最新にできたが、Linuxmint ではうまくいかなかった。

librtmp.so.1がある場所を特定する

[bash]
sudo find / | grep librtmp.so.1

/usr/local/lib/librtmp.so.1
/home/pi/rtmpdump/librtmp/librtmp.so.1
[/bash]

rootになるsudoを使わないと一発で検索されない。なんだかわからないが、sudoだと一発完了する。面白い。
検索結果としてちゃんと/usr/local/lib/にあるので組み込んでもらいたいものだがそうはいかないらしい。

librtmpを指定する

こちらのホームページを検索してやり方がわかった。
RTMPDumpによるNHKラジオ放送の録音(現状メモ)

なるほどこうすればいいのかと、LinuMintとして置き換えて以下の通り記載。
ld.so.confファイルに検索して見つけた場所を書き込んでおけばビルド時に読み込んでくれるようだ。

[bash]
sudo vim /etc/ld.so.conf

include ld.so.conf.d/*.conf
/usr/local/lib/librtmp
[/bash]

エラーが出ないか試してみる

[bash]
sudo aptitude install librtmp-dev
git clone git://git.ffmpeg.org/rtmpdump
cd rtmpdump
make
sudo make install[/bash]

[bash]
rtmpdump

RTMPDump v2.4
(c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL
[/bash]

ばっちりである。これでらじるらじるをしっかり録音できるようになった。
Raspbianで録音すれば十分なのだが、まれに手元で録音したいという作業もある。
アニソン・アカデミーとか手元録音したくなるときがあって2時間録音なのでLinuxMintに任せるか・・・みたいな感じである。

raspbianでrtmpdumpをソースビルド

RaspberryPi2でRaspbianをつかってらじる★らじるをつかっているのですがrtmpdumpはlibrtmp.so0でバージョンが少し古いようだった。
そのため、git最新のソースからビルドしておりました。

gitからのソースビルド記事を検索しても見つけづらかったので記事投稿してメモ代わりに残しておくことにします。

RaspberryPi2での通常のrtmpdumpインストール方法

[bash]sudo aptitude install rtmpdum[/bash]
こうなると思うが、これだと共通ライブラリのバージョンが古い。
Plamoリナックスのページを読まなかったら気づかなかったと思う。
助かりましたありがとう。

rtmpdumpをgitから取得

[bash]git clone git://git.ffmpeg.org/rtmpdump
cd rtmpdump
make
sudo make install[/bash]

これだと共通ライブラリが不足しているとエラーが出てしまう。

librtmp-devをインストールする

[bash]
sudo aptitude install librtmp-dev
git clone git://git.ffmpeg.org/rtmpdump
cd rtmpdump
make
sudo make install[/bash]

これで共通ライブラリを含めてエラーが出なくなった。

ちなみにgitインストールが必要な場合

[bash]sudo aptitude install git[/bash]
これで問題なくインストール完了。
ただし、調べてみると少しバージョンが古いらしい。
gitでソースダウンロードに利用していたが古いとかそういうのを考えたことがなかった。
ダウンローダーのような感じにとらえて使っていたためだ。開発する側ではないので気にしない点なのだろう。

[bash]git –version
git version 1.7.10.4[/bash]

新しいと1.8より上になるみたい。
今度新しいバージョンにしてみたいなぁ。

らじる★らじる 録音サーバーの構築(2015-09移行版)

らじるらじるの録音について放置していたために投稿記事の通りに作業したことで困ってしまう方を作ってしまった。
大変申し訳ない。2015年9月になるまでは問題なかったのだが仕様が変わったためなのです。

新しいスクリプトで更新されたタイプに置き換えて使う記事で更新したい。

録音スクリプトの入手

らじる★らじるの録音スクリプトはこちらにあります。

http://plamo.linet.gr.jp/wiki/index.php?diary%2FKojima%2F2015-10-06

9月16日の記事にもファイルがあるようですが、10月6日版が不足なくそろっています。

ここからファイルが6つダウンロードできる。
・radiru_check.py
・radiru_del.py
・radiru_rec.py
・radiru_tag.py
・rtmdump-2.4-i686-P3.txz
・rtmdump-2.4-x86_64-P3.txz

今回もraspberry pi2を母艦にするので、このうち上の4つ(.py)を利用します。

atのインストール

[bash]sudo aptitude install at[/bash]

今まで役割を理解していなかった。Ubuntuなどではインストール不要。すでに入っていると思う。
RaspberryPi2の運用ではatのインストールされていないので、らじる★らじる録音スクリプトradiru_rec.pyの動作に必要になる。

rtmpdumpのインストール

[bash]sudo aptitude install rtmpdump[/bash]

これでデータを取得する。

この方式だとより時間がずれずにデータ取得できるようだ。いままで頭と尻に少し余裕を持たせた録音をしていたのだがこれで解決した。

このあと、rtmpdumpはソースビルドしないと録音失敗することが分かった。
ソースビルドだけ別記事にしたのでこちらを参照

ffmpegのインストール

[bash]sudo aptitude install ffmpeg[/bash]

flv形式で取得されたファイルデータをAACにエンコードする。MP3よりもタグの形式にバージョンのばらつきによるソフトウェアアプリケーションの取り扱いの違いが発生しないのでとても良いと思う。

MP3はタグの問題があるので個人的には使いづらかったので朗報である。

2015年10月以前版でインストールした情報を削除する。

これは、ずーーーーーーーっっとUBUNTUで運用してきたのでRaspberryPiやRaspberryPi2にして便利に運用できるからもっとみんなに知らせたいと思ってしまった過去の自分が書いた記事により古い情報で環境構築された方のためのコメントです。

記事を書いた当時はとても便利な状態だったのですが9月にURLが変わったので使えなくなり、すぐ気づいた人は中身テキストなので(pythonですから)書き換えて使ってると思います。

旧pythonの予約ファイルを削除する(旧版利用者)

これは、旧radiru_rec.pyで予約したものが残っているときれいではないからです。

ターミナルエディタから以下の通り打ち込みます。これは、前回記事のとおりにやってる場合、.pyファイルを/bin/に移して実行権限を与える環境構築をしているためです。

自分もURL変更した旧版環境を削除して一からインストールしなおすことにしました。

[bash]radiru_check.py

104 r2 入門ビジネス英語.mp3 12/15(火) 09:15:00 16m
80 r2 入門ビジネス英語.mp3 12/21(月) 09:15:00 16m
78 r2 入門ビジネス英語.mp3 12/7(月) 09:15:00 16m
77 r2 入門ビジネス英語.mp3 11/30(月) 09:15:00 16m
82 r2 入門ビジネス英語.mp3 1/4(月) 09:15:00 16m
106 r2 入門ビジネス英語.mp3 12/29(火) 09:15:00 16m
79 r2 入門ビジネス英語.mp3 12/14(月) 09:15:00 16m
102 r2 入門ビジネス英語.mp3 12/1(火) 09:15:00 16m
83 r2 入門ビジネス英語.mp3 1/11(月) 09:15:00 16m
107 r2 入門ビジネス英語.mp3 1/5(火) 09:15:00 16m
103 r2 入門ビジネス英語.mp3 12/8(火) 09:15:00 16m
81 r2 入門ビジネス英語.mp3 12/28(月) 09:15:00 16m
105 r2 入門ビジネス英語.mp3 12/22(火) 09:15:00 16m
108 r2 入門ビジネス英語.mp3 1/12(火) 09:15:00 16m
[/bash]

こんな感じに残っています。

[bash]radiru_del.py 104[/bash]

このように打ち込んでチェックすると

[bash]
radiru_check.py
80 r2 入門ビジネス英語.mp3 12/21(月) 09:15:00 16m
78 r2 入門ビジネス英語.mp3 12/7(月) 09:15:00 16m
77 r2 入門ビジネス英語.mp3 11/30(月) 09:15:00 16m
82 r2 入門ビジネス英語.mp3 1/4(月) 09:15:00 16m
106 r2 入門ビジネス英語.mp3 12/29(火) 09:15:00 16m
79 r2 入門ビジネス英語.mp3 12/14(月) 09:15:00 16m
102 r2 入門ビジネス英語.mp3 12/1(火) 09:15:00 16m
83 r2 入門ビジネス英語.mp3 1/11(月) 09:15:00 16m
107 r2 入門ビジネス英語.mp3 1/5(火) 09:15:00 16m
103 r2 入門ビジネス英語.mp3 12/8(火) 09:15:00 16m
81 r2 入門ビジネス英語.mp3 12/28(月) 09:15:00 16m
105 r2 入門ビジネス英語.mp3 12/22(火) 09:15:00 16m
108 r2 入門ビジネス英語.mp3 1/12(火) 09:15:00 16m
[/bash]

104が消えました。
これを繰り返します。空白を開けて連続削除ができます。

[bash]
radiru_del.py 77 82 106 79 102 83 107 103 81 105 108
[/bash]

radiru_check.pyを実施しても何も表示がでないので、これで削除残しがなく予約削除を完了したことがわかります。

旧 radiru_xxファイルを削除する(旧版利用者)

[bash]
sudo rm /bin/radiru_*.py
sudo rm /home/pi/radiru_*.py
[/bash]

前回のとおりの場合は、これで消えます。
/home/pi/というのはホームフォルダにpiユーザーでログインして利用している場合です。

初期ユーザーpiで環境構築している場合を想定しています。

2015年9月移行版の新規環境 ファイル取得

http://plamo.linet.gr.jp/wiki/index.php?diary%2FKojima%2F2015-10-06
Pythonファイルはここにあります。

  • radiru_rec.py
  • radiru_noa.py
  • radiru_tag.py
  • radiru_check.py
  • radiru_del.py

.pyファイル本体の文字コード変更

ダウンロードしたこれらのファイルはEUC文字コードで保存されているのでUTF-8にします。
RaspberryPi2がUTF-8で運用しているためです。文字コードがEUCのLinux構築をしているならそのままでOK

Windowsの場合
サクラエディタを使っています。
名前を付けて保存のときに文字コードセットがでてくるので、ここをUTF-8にする

Linux側利用の場合

[bash]
wget http://raspi.wpblog.jp/wp-content/uploads/2015/11/radiru_rec.py_.txt
wget http://raspi.wpblog.jp/wp-content/uploads/2015/11/radiru_noa.py_.txt
wget http://raspi.wpblog.jp/wp-content/uploads/2015/11/radiru_tag.py_.txt
wget http://raspi.wpblog.jp/wp-content/uploads/2015/11/radiru_check.py_.txt
wget http://raspi.wpblog.jp/wp-content/uploads/2015/11/radiru_del.py_.txt

iconv -f EUCJP -t UTF8 radiru_rec.py_.txt > radiru_rec.py
iconv -f EUCJP -t UTF8 radiru_noa.py_.txt > radiru_noa.py
iconv -f EUCJP -t UTF8 radiru_tag.py_.txt > radiru_tag.py
iconv -f EUCJP -t UTF8 radiru_check.py_.txt > radiru_check.py
iconv -f EUCJP -t UTF8 radiru_del.py_.txt > radiru_del.py
[/bash]

こんな感じでUTF-8に書き換えできる。

pythonコードの文字コード指定を変更する

[bash]
#! /usr/bin/python
# -*- coding: utf-8 -*-;
[/bash]

書き換え実施。

coding:euc-JP —> coding:utf-8
にしてるだけ。

Windowsの場合
サクラエディタで直接書き換えるなどするだけ

Linux側で作業する場合

[bash]vim radiru_rec.py[/bash]

このように開いて、書き換えを一つずつ行う。

vimは使いやすいけど使い方覚えてないと使えないですよね。

i キー insertモード 文字を入力できるようになる。
ESCキー insert解除 閲覧モードに変わる

ESCキーで解除している状態で
/wq   上書き保存

最初はこれだけ覚えておけば十分使える。

(1)フォルダの環境設定

radiru_check.pyの9行目を例にとる

[bash]
config = {‘script_dir’:’~/radiru_scripts’, ‘MP3_dir’:’~/MP3′,’DB_dir’:’~/MP3′}
[/bash]

この~/というのがフォルダの場所を示すのだが、指定したフォルダにファイルを置くことにした。

置き換え
~/
/home/pi/

具体的には
9行目

[bash]
config = {‘script_dir’:’/home/pi/radiru_scripts’, ‘MP3_dir’:’/home/pi/MP3′,’DB_dir’:’/home/pi/MP3′}
[/bash]

これをすべてのファイルで行っておく

(2)MP3をMP4に置き換え

上記の具体例テキストにもあるMP3フォルダは旧仕様のままMP3フォルダを使う人向け。
自分は、MP4フォルダを作ることにするので、文字列置き換えの全置き換えを実行する。

置き換え
MP3
MP4

MP4ファイルがMP3フォルダに保存されているのが気持ち悪いだけで実施しているのでMP3としてフォルダを利用したい場合は実施しなければ一つ作業が減るのでそれもOK

具体的にはこうなる
[bash]
config = {‘script_dir’:’/home/pi/radiru_scripts’, ‘MP4_dir’:’/home/pi/MP4′,’DB_dir’:’/home/pi/MP4′}
[/bash]

(3)euc-JP指定をutf-8に変更する

  • radiru_rec.py
  • radiru_noa.py
  • radiru_tag.py
  • radiru_check.py
  • radiru_del.py

これらはもともとeuc-jp環境で動作させようとしているものなのでutf-8ですべてやるようにしたい。

File “/bin/radiru_tag.py”, line 104, in main
ufile = file.decode(‘euc-jp’)
など、euc-jpの指定が多数あるのでこれを書き換える。
ちなみにこのeuc-jpには最初気づかなかった。録音テストをしたらサーバーメールが来て、なんかエラー有るよ?っておしえてくれたため。やっぱり試行錯誤はつきもの。

UTF-8に書き換え
(2)の作業と同じく文字列全置き換えで対処する。

置き換え
euc-JP
utf-8

これを全部の.pyファイルに実施

フォルダを作る

[bash]
mkdir radiru_scripts
chmod 777 radiru_scripts
mkdir MP4
chmod 777 MP4
[/bash]
ユーザーがpiでUTF-8環境かつMP4フォルダで利用できるように文字置き換えしたpythonデータは
このようになると思う。どうにも間違えてしまう場合は参考できるとおもう。

新環境を実行にする

まず、実行フォルダに4つのファイルをコピーします。
/home/pi/にradiru_rec.py等のファイルがそろっていることを前提にしています。

[bash]
sudo cp radiru*.py /usr/local/bin/
[/bash]

実行権限を付与します。
[bash]
sudo chmod +x /usr/local/bin/radiru_*.py
[/bash]

テスト実行してみよう

ここでテスト用の教材として番組表から何を録音するか探してみましょう。
http://www3.nhk.or.jp/netradio/hensei.html

[bash]
radiru_rec.py -w -r 5 -t 入門ビジネス英語 r2 11/30 9:15 15m
[/bash]

[bash]
入門ビジネス英語,r2, 2015-11-30 09:15:00,15
warning: commands will be executed using /bin/sh
job 116 at Mon Nov 30 09:15:00 2015
入門ビジネス英語,r2, 2015-12-07 09:15:00,15
warning: commands will be executed using /bin/sh
job 117 at Mon Dec 7 09:15:00 2015
入門ビジネス英語,r2, 2015-12-14 09:15:00,15
warning: commands will be executed using /bin/sh
job 118 at Mon Dec 14 09:15:00 2015
入門ビジネス英語,r2, 2015-12-21 09:15:00,15
warning: commands will be executed using /bin/sh
job 119 at Mon Dec 21 09:15:00 2015
入門ビジネス英語,r2, 2015-12-28 09:15:00,15
warning: commands will be executed using /bin/sh
job 120 at Mon Dec 28 09:15:00 2015
[/bash]

これで録音がOKでした。

実行方法の具体的な説明をすると・・・

入門ビジネス英語は
放送: 月・火曜日 午前9:15~9:30
再放送:同日 月・火曜日 午後0:40~0:55/午後11:20~11:35
再放送:土曜日 午前10:30~11:00(2回分)
このような放送なのです。

月火を1年間録音したい場合は
[bash]
radiru_rec.py -w -r 52 -t 入門ビジネス英語 r2 11/30 9:15 15m
radiru_rec.py -w -r 52 -t 入門ビジネス英語 r2 12/1 9:15 15m
[/bash]
-W 毎週録音
-r 52 毎週録音を52回繰り返す(1年)
-t タイトルを入れる。これはもちろん入門ビジネス英語
r2 NHKラジオ放送第2の意味
11/30 m/d形式でOK yyyy/m/dでもOK
9:15  24時間で入れる9:15から始まるから9:15 うろ覚えだが26:00的な書き方も許容してたような・・・
15m 15分録音という意味

土曜放送を1年間録音したい場合は
[bash]
radiru_rec.py -w -r 52 -t 入門ビジネス英語-再放送 r2 12/5 10:30 30m
[/bash]

こんな感じ。

とても便利なのだが、解説するような暇な人はいないだろう。
前回記事で録音したかったのにできなかった人など迷惑をかけてしまったので詳細にした。