またしばらく日記書いてなかった。作業がそこそこ進んでるので書くタイミング無くてなぁ。
銀歯が取れてしまったので近くの歯医者に行ったが案の定虫歯になっていたのでまたしばらく歯医者通いだ。だいぶ混んでてなかなかいい時間に予約とれないのがすげえな。
最近の作業はFLVからMPEG2-TSへの詰め替えをせっせとやっている。 資料集めてきたしね。
詰め替えができたら細切れにしてHTTP Live StreamingとかMPEG-DASHで出力することによって、ブラウザとか各種プレイヤーで見易くならないかなーという魂胆だ。WMVはトランスコード必要になるのでそのままでは無理ですけど。
しかしFLVにぶちこまれてるAACだのH.264の中身はどっちかというとMP4形式に入ってるものに近いのでMP4の方が簡単だったかもしれん。
いろいろ資料とにらめっこしつつなんとかそれっぽいデータを作れたんだが、ffplayでは再生できるもののWindows Media PlayerやVLCでは再生してくれない。一瞬再生してくれそうに見えるんだがすぐに終了しちゃう。なんだろなー。
ffmpegで変換したTSファイルを見ていると、SPSとPPSの後にIDR pictureが入ってくるんだけどこれどっから持ってきたものなんだろうか。元のFLVファイルにはIDR pictureはだいぶ後の方にしか入ってないんだけど、ここまでスキップしないとだめかなぁ。と、やってみたけどやっぱだめだった。うーん、わからん。
ffmpegのソースを見たけど難しくて流れがよくわからん。単純にコピるだけでというわけではなさそうだがどうなんだろな。もうちょっとだとは思うんだが……。
NanoPI NEOっていう小型Linuxマシンを買った。
名前から想像できるようにRaspberryPiみたいなARMのSoC使って安いマシンにしちゃってるやつだ。
RaspberryPiでいうとZeroあたりのポジションで、$8くらいからとお安い。 RaspberryPi Zeroと違うのは画面出力がないかわりにEthernetの口が標準で付いてるところ。あとCPUがパワフル。
$8からではあるがメモリ512MBにすると$10になるし、ヒートシンク買うとさらに$3増えるしケース買うとさらに$3増えるけど、合計$16ならまあ悪くない。ここからさらにmicroSDとUSBの5V2A電源が必要になるので安くはないんだが、それはRaspberryPiも同じなんで……。
似たようなのでOrangePi Zeroというのもあるんだが、こっちはCPUがちょっと廉価版なかわりにWiFiが付いてる。しかしまあWiFi使わないし(当然技適通ってないし)、OrangePi Zeroにはないケースやヒートシンクが標準で買えるのはうれしいのでNanoPi NEOにしといた。
電源とmicroSDは家にあるの使えるだろうと、本体とヒートシンクとケースだけ買ってみたが、送料がけっこう高かったので思わず2セット買ってしまった。まあ送料もその分高くなったから微妙なんだけど、2セットで送料込み5000円くらい。まあまあかな。注文したあと音沙汰がなくて大丈夫かよと不安だったが、10日くらいで唐突に届いた。全く音沙汰ない状態から届くもんだからびびったわ。
組み立てはドライバー一本で簡単。あとどこのご家庭にも1枚くらいは余ってるmicroSDに落としてきたイメージ焼いて、どこのご家庭にも余ってるLANケーブルつないでどこの(中略)5V2A出せるUSBのACアダプタつなぐだけでちょっとほっとくと無事起動した。 DHCPで勝手にアドレス取ってきてSSHでつなげるようになってるので、なんとか頑張って割り当てられたIPアドレス調べてSSHするだけだ。
標準のイメージはちょっと古めのUbuntu Coreだった。とりあえずmonoを入れてみてPeerCastStationを動かしてみるとあっさり動くし、普通に快適に使える。見た感じ4コア中1コアでも十分余裕で動いてるっぽい。意外とパワフルだなぁ。 まあAndroidスマホが動くようなSoCだし、そりゃペカステだけくらい余裕で動かないと困るか。
ffmpeg入れてトランスコード試そうかと思ったらffmpegのパッケージが見つからない。Ubuntu Coreだからだろうか。公式のイメージは更新されてたりする気配があるわけでもないし、これ使ってる理由も無さそう。メンテされてそうなArmbian使った方がいいかな。 Allwinner H3のビデオプロセッサでハードウェアアクセラレーション使える版のffmpegを作れるらしいが、これは自分でビルドする必要があるぽいし、Ubuntu Coreでは難しかろう。
しかし動いたとしてけっこうあっちっちになるから実用になるかどうかは微妙だな。まあやってみなきゃわからんし、実用になったらラッキーということで。
最終的には電源とLANケーブルをつなぐだけで簡単にPeerCastを見れるデバイスとして整えて、あわよくば頒布したい。3000円くらいで。たぶん5台くらいは売れるだろ。