min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

Linux

fedora ffmpegで動画にテキストを表示する(字幕焼き込み)

なんと、ffmpegを使えば動画の上にテキストを表示できるらしい。 qiita.com さっそく試す。 ーーー まずはフォントファイルが必要らしいので用意する。 iMacからsshでLinux(fedora)に繋げる環境と仮定して $ scp /System/Library/Fonts/ヒラギノ*W9.ttc fe…

RaspberryPi コマンドでテレビ電源をオンオフする(cec制御)echo 'on 0' | cec-client -s

RaspberryPi を再起動すると、HDMI接続されたテレビの電源が入る。どういう仕組みか不思議だったけど、調べたら分かった。cec-utils なるものを使っているらしい。 takuya-1st.hatenablog.jp qiita.com つまり、ラズベリーパイからコマンドでテレビの電源オ…

bash ファイル一覧(ls -l)の表示サイズをGB単位で表示する(awk)

// ファイル名に「NHK」を含むtsファイルの合計サイズをGB単位で表示させたい。 コマンドの変遷 $ ls -l | grep NHK $ ls -l | grep NHK | awk '{print $5,$9}' $ ls -l | grep NHK | awk '{a+=$5; print $5,$9}' $ ls -l | grep NHK | awk '{a+=$5; print $…

bash awk で URLデコード(POSIX準拠)

URLエンコードされた文字列(空白が %20 になってるのとか)を、元の文字列に戻す(デコード)するのを手軽にやりたいと、常々思っていた。 この本を買ったら「URLデコードする」記事があったのでそのまま試す。 WEBにも同じ記事あり。コピペでは理解になら…

RaspberryPi omxplayerで再生中のファイル名をWeb画面から取得する(PHP使用→shell_exec()の日本語文字化け対処)

// RaspberryPi の omxplayer が再生中の動画名を iPhone や iPad で確認したい。 PHP の shell_exec を用いて 叩いたシェルコマンド ps auxの結果を 変数 $myOMX に入れて表示するようにしたが、なぜか日本語が文字化けしてしまう。 参考になりそうな情報が…

RaspberryPi での動画再生をiPadから行う(ループ再生)

// RaspberryPi の動画再生(omxplayerでの再生)を、iPadからできるようにしたくてPHPで実装中。 開発中のiPadイメージはこんなの。フォルダ読込み → 再生したいファイルを選ぶ → 実行 すると、RaspberryPiからテレビに動画再生してくれる。 繰り返し処理の…

RaspberryPi 3 PT3配信したテレビ番組を Piの omxplayer または VLC で受信して視聴する

// fedora(PT3が挿さっている) テレビ映像配信サーバ(サーバ室) | |udp配信 | RaspberryPi 3 omxplayerで映像再生(リビング) | | HDMI | テレビ ーーー ①fedora側 $ recpt1 --b25 --strip --udp --addr 192.168.3.110 --port 1234 --device /dev…

RaspberryPi cronが効かない → ログ表示設定して解決

// Rasbpberrpi でまたcron が効かなくなった。ちゃんとログ出して対処することにする。 このサイトが良かった。まんま設定する。 shima-nigoro.hatenablog.jp rsyslogでcronのログを取る設定にする。 $ sudo vim /etc/rsyslog.conf rsyslog サービスを再起…

RaspberryPi Apache から sudo コマンドを実行できるようにする/www-data ALL=(ALL) NOPASSWD: ALL

// Apache + php で、RaspberryPi のシェルコマンドを実行するスクリプトが増えてきた。ここで、Apache から sudo コマンドを実行できないと色々と使い物にならない。このサイトを参考に、Apacheからsudoできるようにしておく。 ApacheとPHPのインストール |…

RaspberryPi 初代 mplayer の Segmantation Fault エラーの原因を探る

// ラズパイ(初代)で便利にラジオを聴いていたんだけど、突然再生できなくなった。ラジを再生スクリプトを叩くと、mplayer が Segmantation Fault エラーで落ちている。 スクリプトはこれ。 $ vim play_tachikawa.sh エラーはこう。 sudo apt-get -y updat…

RaspberryPi ZERO W を使ってスマホからテレビにラジオを流す

// iPhoneからRaspberryPi ZERO を操作して、ラジオを再生する。音はテレビから 出す。イメージはこんな感じ。 ---HDMI--- ↑ iPhone または iPad または Android UIはhtml。サーバ側は php で受けて、ラジオ再生するシェルコマンドを叩く。Pi に必要なものは…

RaspberryPi 3 SSH接続できない場合の対処

// 手元のiMacからリモートのRaspberryPi 3(無線接続)にSSH接続できなくなった。タイムアウトしてしまう。 昨日までは通じていたのになぜ?たぶんroute設定が原因だと思う。ゲートウェイの設定がおかしいのかも。ちゃんと調べることにした。 ーーー 構成は…

RaspberryPi 3 cgi-binでpython3 スクリプトを動かす

// せっかく作った Python 3 スクリプト。コンソールだけで動かすのはもったいないから、WebでUIを作って、iPhoneからでも実行できるようにしたい。 ーーー RaspberryPi3 で apache を動かして、cgi-bin の Python3 を叩けるようにする。Apache はインストー…

RaspberryPi ZERO W に python3 をインストールする

// RaspberryPi ZERO W 。先日 Pimori でイギリスから取り寄せたもの。 Raspberry Pi Zero - Pimoroni Raspbian Jessie を使用中。今回、Python3 を使いたいのでインストールする。以前の記事そのまま進める。 min117.hatenablog.com $ python -V $ sudo apt…

RaspberryPi 検索単語と枚数指定してGoogle Custom Search API で画像収集(Python 3)

前回記事のソースを改良。検索単語と画像枚数を指定して検索できるようにした。 min117.hatenablog.com RaspberryPi で画像を一括ダウンロードできる。使い方はこう。 ーーー 「ガッキー」という単語で、10枚の画像を検索してダウンロードする場合。 $ pytho…

RaspberryPi Google Custom Search API で画像収集(Python 3)

// このサイトのとおりやってみる。 qiita.com まずは カスタム検索 で新しい検索エンジンを作成する。 カスタム検索 ・「検索するサイト」には www.google.co.jp と入れておく(この後削除する)。 ・「言語」は日本語に変更する。 ・「作成」をクリック。 …

RaspberryPi 画像収集APIを使って大量画像を一括ダウンロードする(Python3)

// Google画像検索で都度探すのが面倒なので、APIを使って画像を一気に収集したい。このへん参照。 qiita.com d.hatena.ne.jp まずは に従って words.txt と imagenet.synset.obtain_synset_list をダウンロードする。 $ wget http://image-net.org/archive/…

fedora 「.fuse_hidden…」という名の巨大ファイルの削除

// 「.fuse_hidden...」という隠しファイルが、HDDを圧迫している。 以前も似た対応をした。 min117.hatenablog.com このときは、fedora上の共有フォルダにネットワーク経由でmvしようとしてゴミが残ったのが原因だったけど、より詳しい解説のあるサイトを発…

RaspberryPi ラジオ再生が途中で止まってしまう → 受信はしているが音だけが切れているらしい → ALSAデバイスを確認する

// せっかく cron で定期的になるようにしたはずの RaspberryPi + テレビ のラジオ環境だけど、再生している途中に音が聞こえなくなってしまう。どうやら RaspberryPi が突然出力デバイス(HDMI経由のテレビへの音出力)を見失うのが原因のようだ。 このへ…

RaspberryPi ラジオの自動再生を crontab で設定する

// せっかく radiko Premium で全国のラジオを(テレビで)聴けるようになったので、定期的な再生を cron で仕込みたい。 やることは ① 毎時 0分から55 分の間で、20分ごとに、RaspberryPiを自動で再起動する 例えば 6:00 再起動 6:20 再起動 6:40 再起動 6:…

IPA に情報処理技術者試験を申し込む

// 7月6日から、IPAが秋季の情報処理技術者試験の受付を開始したようだ。 www.ipa.go.jp クレジットカードだけで申し込みできる。 受験料は 5,700円。まあ、ケジメには良い。受ける。

RaspberryPi vi の閲覧専用モード(viewコマンド)について今さら知る

// 仕事でやりとりしたお客さんとこの SE が使っていたコマンド「view」。古めの Redhat で叩いていたので「ほぅ、こんなコマンドもあるんだ」と思って調べたら、なんてことはない、vi そのものだった。 d.hatena.ne.jp 手元の RaspberryPi にも最初からイン…

fedora Apache(httpd)で cgi-bin が動かない場合の対処(permissionエラー)

// Apache から直接 pythonスクリプトを実行したいが、どうしてもエラーになる。 You don't have permission to access /test.py on this server. 環境は以下。 ・fedora 20 ・Apache/2.4.10(Fedora) ーーー 解決手順 ① まずログをみる $ sudo -s # ls -sh…

Python 3 で twitter の画像を一括取得する(お気に入り ❤️ を付けたツイートの画像の一括ダウンロード)

// このサイトのコードそのままで動いた。最高すぎる。 prpr.hatenablog.jp ーーー スクリプトのファイル名は twAllDL.py(tweetAllDownLoad.py)にする。 $ vim twAllDL.py 実行してみる。 $ python3 twAllDL.py ダーっと画像がダウンロードされる。最高だ…

bash if文の中で正規表現を使う

// RaspberryPi や fedora の bash にて。 「あるフォルダの中の全てのファイルを調べて、ファイル名の頭が数字3桁のものだけ表示する」をやりたい。 ーーー まず「あるフォルダの中の全てのファイルを調べる」のは、超簡単。毎日やっている。 $ for i in *;…

MacbookAir Python 3 をインストールする(OSX Sierra)

// Mac へのPython 3のインストールは以前の記事で行ったが、もっと簡単な方法がないか試す。以前の記事では pyenv をインストールした。 http://min117.hatenablog.com/entry/2017/01/17/233852 今回は純粋に pip だけで python3 をインストールする(Beaut…

RaspberryPi 音が出ないときは sudo vim /boot/config.txt に dtparam=autio=on を記述して解決

// RaspberryPi(初代)の cron に radiko の起動スクリプトを設定して、毎日決まった時間にテレビのスピーカーからラジオが流れるようにしたつもりなのに、なぜか音が鳴らない。 ーーー RaspberryPi 3 のほうはうまくいっているので、比較して調べたら、音…

RaspberryPi cronが効かない → 時刻設定を見直して解決( sudo timedatectl set-timezone Asia/Tokyo && ntpdate ntp.jst.mfeed.ad.jp)

// 前記事に続いて、cronがうまく動かないときの対処。 min117.hatenablog.com ーーー Raspberry Pi 初代 で、どうにもcronがうまくいかない。crontabの設定も問題ないのに。正しく動いている Pi 3 と比べてみたら時刻の設定がおかしかった。 (誤)Pi 初代 …

RaspberryPi 3 で radiko Premium をテレビで聞く(録音ではなく、再生する)

// radiko Premium の 録音は 前記事でできた。 min117.hatenablog.com 今回は、録音ではなく、再生したい。radikoプレミアムを、再生して、テレビで聴きたい。 以下の方法でうまくいった(2017/6/26 時点)。 ーーー 事前に必要なものをインストールしてお…

RaspberryPi cronが効かない → /etc/crontab のパーミッションと所有者を見直して解決

// RaspberryPi 1 の調子が悪かったので Raspbian を再インストールした。各種設定ファイルをバックアップから復帰したものの、cronだけがなぜか実行されない。 このへんを参照して対応する。 tamulapin.hatenablog.com ーーー うまくいっている RaspberryPi…

RaspberryPi 3 起動時にラジオを再生する

// RaspberryPi 起動時にラジオを再生する。「起動時に***する」という処理はこのへんによくまとまっていた。 hendigi.karaage.xyz 今回は /etc/rc.local に記述して起動時実行する。スクリプト「play_tachikawa.sh」というファイルを起動時に再生する。 …

RaspberryPi 3 コマンドで音量を上げる(ラジオをテレビで再生→音量不足→コマンドで音量UP)

// RaspberryPi はラジオの再生と相性バツグン。 テレビのHDMIポート3つは全てRaspberryPi(Pi1 と ZERO w と Pi3)で埋まっていて、それぞれで違うサイマルラジオを再生させている。テレビ入力を変えるだけで全国のラジオを3つ切り替えられる。 (再生スク…

RaspberryPi 3 radiko Premium を録音する → ffmpegが必要 → リポジトリに無い → コンパイルしてインストールする

// radiko Premium(ラジコプレミアム)を RaspberryPi で録音したい。このサイトと同じにやってみた。 kyoshiaki.hatenablog.com この記述。 http://kyoshiaki.sakura.ne.jp/osx/Sample/rec_radiko2_2.zip RaspberryPi で落としてきて rec_radiko2.sh を実…

RaspberryPi 3 cvlc でハードウェア支援を使って動画再生

// RaspberryPi 3 のVLCは、ハードウェア動画再生支援で爆速にできるらしい。 signal-flag-z.blogspot.jp 前提としてRaspberryPi は MPEG ライセンスを購入しないとts動画が再生できないので、購入しておく。といっても、300円くらいだし、ネットでポチッ支…

RaspberryPi 無線LANが繋がらないときは/etc/network/interfaces の dns-nameservers の記述を確認する

// RaspberryPi の無線LAN の接続設定がプチプチ切れるときは、DNSの設定が悪いのかも。 $ sudo vim /etc/network/interfaces ifaceの記述毎に(SSID毎に)「dns-nameservers DNSのIPアドレス」の記述を入れていく。 これで、「繋がらないのは名前解決が原因…

RaspberryPi SSHで connection refused になったら fstab を確認する(起動時に A start job is running ...が出ていないか?)

// RaspberryPi で 突然SSH 接続ができなくなった。原因はなんと fstab。 fstab でのマウントに失敗 → 起動時に緊急モード(rootログイン)になってしまった → そのために、SSH接続しようとしても(権限不足で)connection refused になる という流れ。 ーー…

RaspberryPi をソーラーパネルで動かす(東京デバイセズ「ソーラーUSB電源システムキット 60Whクラス」)

// 予算1万円くらいでソーラーパネルで RaspberryPi を動かせるか試す。うまく行けば、簡易 IoT 監視システムなんかを作りたい。 これを購入。 tokyodevices.jp 東京デバイセズ「ソーラーUSB電源システムキット 60Whクラス」。 メーカー型番: IW3100-60WS …

bash 管理者実行「su」「su -」「sudo -s」を比べてみる(スド、スドゥ)

// シェルスクリプトの管理者実行「su」「su -」「sudo -s」の何が違うかよく分からずに使っていた。結論としては「su」が一番いいみたい。 ーーー 読み込む環境ファイルが違うらしい。 qiita.com 試してみる。 一般ユーザー:fedora 管理ユーザー:root ー…

fedora Linuxで物理メモリの詳細(DDR2とかDDR3)を調べるには sudo dmidecode --type 17 を使う

// qiita.com $ sudo dmidecode --type 17

bash 配列の要素をhtmlでテーブルに書き出す(SELECT + SORT)

bashでSQLのSELECTとSORTのようなことをやってみる。 $ vim math004.sh 出力 $ ./math004.sh >> math004.html

bash 配列の要素をhtmlでテーブルに書き出す

配列 ${PRODUCTS[@]} の要素を全てhtmlに書き出したい。このへん参照。 d.hatena.ne.jp ソースは以下。 $ vim math003.sh html に書き出して、ブラウザから見てみる。 $ ./math003.sh >> math003.html 素晴らしい。色々応用できそう。

bash ファイルを逆順に並べて頭に01、02、03…とつける

IMG_01.JPG IMG_02.JPG IMG_03.JPG … と画像があるが、一番最初に撮ったのはIMG_03で、次が02、最後に01だった。ファイルを逆順に並べるようにファイル名を変更したい。 (変更後) 01_IMG_03.JPG 02_IMG_02.JPG 03_IMG_01.JPG ーーー cnt=1 && for i in $(l…

bash 深いディレクトリパスの最深部フォルダ名だけを取り出してmvする

日常的に使うファイル移動で、深いPATHにあるフォルダを移動するときに、できるだけラクしたい。コマンド(ワンライナー)で最深部のフォルダ名を取り出して変数toに入れて使えば便利そう。 // $ ls /media/3TB/Dropbox | grep Jobs_Seiko 深いパス:/media/…

bash echo {1..11..2} で「1から11までの数を2とびで表示」する(ブレース展開)

こんなことができるとは。驚愕。 bashのそれって実はこういう書き方できるよ一覧 - Qiita 実際やってみる。 ーーー fedora20 $ bash --version $ for i in {1..11..2}; do echo "$i"; done すごい。できた。 ーーー Macだとできないみたい。 //

PHP フォルダ内にあるmp4動画の再生サムネイル画面を自動作成する(PHP + HTML5/videoタグ)

// フォルダ内に溜まった動画をサムネイル表示して、クリックしたら再生できるようにしたい。画面イメージはこんなの。 母艦fedoraのApache HTTP + PHP5 の環境。 ーーー できた。ソース。 $ vim html5_03_video.php

fedora 一括画像縮小 convert TARGET.jpg -resize 640x480 OUT.jpg

iPhoneで撮った画像を、ブログに貼る用に一括で縮小したい。fedoraでやる。たぶんRaspberryPiでもいける。 まずはファイル1個で実験。 $ convert TARGET.jpg -resize 640x480 out.jpg いいね。一瞬で縮小された。縮小後の画像もキレイ。 フォルダ内の全てのJ…

PHP フォルダ内の全てのテキストファイルの中身を1ページ内にまとめて表示する

Apacheで公開している自宅サーバのフォルダ内に、複数のテキストファイルがある。 全てのテキストファイルの中身を確認したい。1つ1つ開いていくのは大変なので、index_txt.php をクリックするだけで、全てのテキストファイルの内容を1ページに表示できるよ…

bash フォルダ内のテキストファイルの文字コードを一発で調べるコマンド

テキストファイルが4つあるが、このうち1つだけが文字コードが違っている。 $ ls -shal それぞれのファイルの文字コードを、コマンド1行(ワンライナー)で調べる。 $ for i in *txt; do echo "$i"; nkf -g "$i"; echo ===== ; done 一つだけ Shift-JIS が混…

RaspberryPi 3 形態素解析エンジンMeCabをインストールする

ツイッターで見かけたニュース。258億語の日本語を使った検索システム「梵天」が一般公開されるらしい。 internet.watch.impress.co.jp 記事中に MeCab の記載あり。以前から気になっていたので、RaspberryPi3 にインストールしてみる。 インストール方法は…

bash ファイル名の年月日と時刻の間にアンダーバーを挿入する(正規表現・awk)

ハイビジョン録画ファイルの命名規則を途中で変えてしまった。 ーーー ① ファイル名の年月日と時刻の間にアンダーバーがある。 $ ls | grep -e '^NHK_........_.*' | tail -n 3 NHK_20170304_070001.ts.mp4 ーーーー ② ファイル名の年月日と時刻の間にアンダ…