世界を動かす技術を、日本語で。

OpenIPC: オープンIPカメラファームウェア

概要

OpenIPC は、IPカメラ向けの オープンソースファームウェア。 既存の クローズドなファームウェア を置き換え、セキュリティと自由度を向上。 MITライセンス で公開され、商用利用も可能。 Buildrootベース で、多様なストリーマーを利用。 軍事利用は禁止、幅広いカメラと用途に対応。

OpenIPCとは

  • OpenIPC は、IPカメラ向けの 代替オープンファームウェア
  • ARMやMIPSプロセッサ 搭載カメラに対応
  • ベンダー提供の 閉鎖的でサポートが不十分なファームウェア の置き換え
  • バイナリファイル として簡単にインストール可能
  • ソースコード も公開、誰でも開発・改良が可能
  • MITライセンス 採用、商用利用や再利用が自由
  • 改善のフィードバックや商用利用時の連絡 を推奨
  • 軍事目的での利用は禁止

インストールと開発

  • プリコンパイル済みバイナリ の配布
  • GitHub でソースコード公開
  • Buildroot を利用したLinuxディストリビューション構築
  • ストリーマーは MajesticDivinusMiniVenc から選択
    • Majestic は非オープンだが高性能
    • Majesticのオープンソース化は資金次第で検討中、寄付歓迎

OpenIPCの特徴と利点

  • ユーザーの自由 を最重視
  • 完全なシステムアクセス とカスタマイズ性
  • バックドアやマルウェアの排除
  • 幅広いカメラ機種 への対応
  • 基本機能を重視 し、簡単なファームウェアアップグレード・ストリーミングを実現
  • IPEYEクラウドストレージYouTube・Telegram への動画配信
  • SOCKS5プロキシバーチャルトンネル の設定が可能

特殊用途への応用

  • ドローン搭載カメラ
  • 建設用ヘルメットカメラ
  • 測量機器用カメラ
  • 医療研究用カメラ(視覚器官観察)
  • 水中釣りカメラ など多様なプロジェクト展開

Hackerたちの意見

こういうプロジェクトもっと増えてほしいな。俺はtp-linkの「tapo」ってホーム「セキュリティ」カメラ使ってるんだけど、設定はオンラインでやるんだよね。で、常時インターネット接続なしで使おうとすると…勝手にオフになっちゃう。tp-linkに常時接続が必要なんだよ。理由は想像つくよね。

ほんと、常時インターネット接続が必要ってクソだよね。俺は「ノーブランド」のカメラを持ってたんだけど、MicroSDカードが内蔵されてて、インターネットなしでもちゃんと動くと思ってたんだ。オースティンでは数日間停電だったけど、カメラはポータブルバッテリーで動かしてたんだよ、なんでって?電源とインターネットが復旧してアプリをチェックしたら、なんと何も録画されてなかった!ずっとオンラインだったのに。めっちゃがっかりだわ。

家にTapoのユニットが2つあるけど、インターネット接続なしでもちゃんと動いてるよ。新しいサブネットとそれに関連するWiFi SSIDを作って、Tapoカメラを接続してRTSPカメラとして設定したんだ。それから、そのサブネットをFrigate NVRサーバーとゲートウェイ以外からはファイアウォールで隔離した。まだ問題なく動いてて、Frigateに動画をストリーミングしてる。多分、ゲートウェイからDNSをもらってるからかな?(それはブロックした方がいいかも、一般的なデータ流出の手段だからね)。初期設定にインターネット接続が必要なのは本当に面倒だね、同意するよ。シンプルなウェブインターフェースだけでよかったのに。

互換性のあるカメラモデルのリストってあるのかな?ちょっと見たけど、めっちゃクールだね!

ホームページからのリンク: https://openipc.org/supported-hardware/featured

紹介ページの「サポーター」には、GoodcamやRunCamってカメラメーカーがいくつか載ってるみたいだね。

名前に反して、openipcは完全にオープンじゃないんだよね。メインのレコーダー/エンコーダーアプリ(majestic)はクローズドソースだし。多くのopenipcの開発者は「thingino」っていう完全オープンソースのレコーダー/エンコーダー/ストリーマーのプロジェクトに移ってるよ。

このプロジェクトはIngenic SOCしかサポートしてないみたいだね(https://github.com/themactep/thingino-firmwareによると)。openipcamがサポートしてるリストとは大違い。編集: でも、Thinginoのインストールをサポートしてる製品名のリストはあるみたいだよ: https://github.com/themactep/thingino-firmware/blob/master/d...

エンコーダーアプリはエンコーダー本体とは別みたいだね。エンコーダーの大部分はハードウェアで処理されてるんじゃないかな。だって、あの機器は強力なCPUなしで、4Kのリアルタイムh265ができるんだから、熱くもならないし。

https://thingino.com/ フロントページがSOCs/SOMsをガンガン押し出してなくて、単純に対応カメラの写真が載ってるのがいいね(下にSOM情報もあるけど)。

https://thingino.com/ > https://github.com/themactep/thingino-firmware いいね、実際にアメリカの人気「ノーネーム」ブランド、ImouやWansviewをいくつかサポートしてる!それに、Eufy、TP-Link、Wyzeの主流カメラもthinginoでサポートされてるみたい。OpenIPCよりも使いやすそうだね。

https://thingino.com/ のリストを見たけど、thinginoがサポートしてる中で一番安いカメラはWansview Q5だね。正確なバージョンはわからないけど、Amazonには2つのバージョン、3MP/2019と5MP/2024があって、それぞれ2色あるんだ。古い3MPバージョンは20ドル以下で買えるよ。 https://www.amazon.com/stores/Wansview/page/1E1F86AB-C01A-45... https://www.amazon.com/dp/B07QKXM2D3 — 黒の3MP Q5 Wansviewが$16.14 FBA https://www.amazon.com/dp/B07QKWPT8J — 白の3MP Q5 Wansviewが$19.78 FBA それに、数ヶ月前にWootで$9.99で売ってたけど、売り切れた。 https://electronics.woot.com/offers/wansview-2k-ip-security-... 追記:アメリカで一番安いのは実際にはCinnado D1 2kで、Amazonで$14.99以下だよ。 https://github.com/wltechblog/thingino-installers/tree/main/... https://www.amazon.com/dp/B0CBBT5RMP — Cinnado D1が≤$14.99 FBA

いいね!Wansview Q5はWansview W7と似たSoC/カメラ/ワイヤレスセットアップを持ってるみたいで、Thinginoのウィキにインストーラーガイドがあるよ [1]。同じインストールプロセス(Q5ファームウェアで)で動くかな?$16なら試してみたくなるね。[1] - https://github.com/wltechblog/thingino-installers/tree/main/...

一般的にAmazonで一番安いのはCinnadoだね。私のチャンネルにもインストール動画があるよ。このモデルは$9.50で買ったこともある。 https://www.youtube.com/watch?v=phqR49t75Ak

thinginoはOpenIPCの代替品なの?初心者の質問だけど、カメラモジュール用のソフトウェアみたいだね。今はそれをカメラとどうマッチさせるか、またはRaspberry Piにどう接続するかを考えなきゃ。

5MPバージョンはまだサポートされてないみたい!Cinnado D1 5MPと全く同じで、センサーが良くなったのと(デュアルバンドWi-Fiも!)、次世代のIngenicプロセッサーを使ってるんだ。まだ進行中だね!

前回カメラを買ったときは、リファービッシュのWyzeカメラがめちゃくちゃ安くて、5ドルから10ドルくらいだったよ。

IPカメラを調べるたびに、スーパーのプライベートブランドのシリアルコーナーに入った気分になって、タブを閉じちゃう。「今なら刃物が少ない!」とか「他のプライベートブランドよりサルモネラの報告が半分!」って箱が叫んでる感じ。IPカメラのおすすめブランドは何?オープンソースのサポートと信頼性で一番いいのはどれ?屋内外のPoEカメラを混ぜて15台外、10台内が必要なんだ。コストは関係ない、信頼できるものが欲しい。

MindVisionのギガビットカメラを使ったことがあるけど、POEモデルもあると思うよ(でも主に屋内の産業用マシンビジョン向けかな)。Linux SDKもあるし(基本的に.soファイルとそのラッパーのPythonがある)。この投稿のコメントにあるリンクを全部見て、ドキュメントがしっかりしてて、手頃で、統合しやすいものを探してみるつもり。

オープンソースではないけど、Reolinkにはいい経験があるよ。Home AssistantやFrigateにうまく統合できるし。

車輪を再発明する必要はないよ - ipcamtalkには詳しい解説がたくさんあるから。Reolinkは買わない方がいいし、Amcrestも避けた方がいいよ。Loryta(Dahuaのリブランド)とHikvisionが一番強いけど、リファービッシュの商業カメラには他にも強力な選択肢があるよ。

オープンソースファームウェア付きのPoEカメラにもすごく興味がある。ほとんどがWi-Fiと電源ケーブルの組み合わせみたいだけど、ケーブルを引くならデータケーブルでもいいかなって思ってる。Wi-Fiは少数のデバイスを設定するのは簡単かもしれないけど、5台以上のカメラになるとPoEの方が価値があると思う。

コストは重要じゃない、信頼性が必要なんだ。全く考慮しないべきこと: OEMじゃない中国の製品(1兆のブランドがあって、リストにするには多すぎる、Reolinkみたいな店で見かける消費者向けのゴミも含めて)。コストが問題になる場合を考慮: 主要な中国OEM、HikvisionとDahua。注意: すべての中国OEMは明らかに中国の監視国家に関与してる。多くの「メジャー」ブランドもこの2社からOEM供給されてるし、意外なものもあるよ。例えば、Panasonicの製品の多くはDahuaのリブランドだし。基本的に、中国製のCCTVカメラの90%はDahuaかHikから来てるし、他の小さいブランドは大体、安物のハードウェアにクソみたいなファームウェアを選んで、もちろんファームウェアのアップデートもない。もしコストが本当に問題じゃないなら: Bosch、Axis、Dallmeier、Mobotix 注意: これらのほとんどは直接買えないし、ベンダーも話してくれない。 > オープンソースのサポートと信頼性の観点で、どれが一番いいの?これらは完全に対極にあるよ。良いCCTVカメラは、署名されていて、ある程度しっかり暗号化されたファームウェアを使ってるし、クロスフラッシングもあまり一般的じゃない。

Ubiquitiは本当に好きなんだけど、ちょっと高いよね。フルバリューを得るには、彼らのネットワーク機器も使わないといけないし。

ReolinkのPoEカメラはまあまあだけど、あんまり好きじゃない人も多いね。そうじゃなかったら、Axis(多分一番の選択肢の一つ)かDahuaの機器を探すかな。どれくらい本気でやりたいかによるけど、CostarやCohuHDみたいな素晴らしいカメラを作ってる業者もいるよ。ただし、かなり高い値段になる覚悟は必要かも(それに、うちのPTZみたいに大きいカメラも多いし)。

このコメントスレッド、今やシリアルコーナーみたいになってるね。

Axisがいいよ。屋外カメラが5台、屋内カメラが6台あるけど、全部PoEに対応してる。屋内の一部はPoE使ってるけど、他はインジェクターとWi-Fiドングル使ってる。基本的にどんな機器とも接続できるし、屋外のカメラは数年にわたってあらゆる天候に耐えてる。届いて1週間で壊れたカメラもあったけど、AxisのRMAプロセスはスムーズで簡単だったよ。彼らのサポートは、主に商業向けの顧客基盤を持つ会社らしい期待通りのもので、確か1、2年前に2030年から屋外カメラのソフトウェアアップデートをもう出さないって警告のメールが来た。

これ、いい感じだね。でも、もし合ってたら、Hikvisionみたいなメジャーブランドのデバイスには対応してないみたい。あの20ドルのカメラがどれくらい良いかは知らないけど、まあまあかもしれないね。でも例えば、8MPセンサーのHikvisionのカメラは4K@25fpsに対応してるし、こういう高性能カメラ向けのオープンソースファームウェアがあればいいなと思う。

ThinginoはARMプロセッサーのカメラをサポートしてないんだ。サポートしてるのはIngenic製のチップだけ(彼らがXburstって呼んでるMIPSのスーパーセット)。今は4メガピクセル(4Kじゃない)デバイスをいくつかサポートしてて、次世代のIngenicチップ(Xburst2)のサポートも追加中なんだ。これで8メガピクセル(4K)デバイスのサポートも始まるよ。安いモデルに重点を置いてるのも、もっと多くの人が手に入れやすいからだし、割引価格での購入がベンダーのクラウドサブスクリプションで補填されることが多いからね。安くて素晴らしいカメラモデルがたくさん手に入るよ。Hikvisionについては、ほとんどの人がそのブランドから離れる理由があるって話もあるし、Googleがインデックスしないくらい悪いんだよね。とはいえ、そもそも誰も第三者に自分の動画データを信頼して渡すべきじゃないと思う。

このファームウェアは、Shinobi [1]やFrigate [2]、ZoneMinder [3]みたいなオープンソースのカメラレコーダー(「NVR」)と使えるのかな? [1]: https://shinobi.video/ [2]: https://frigate.video/ [3]: https://zoneminder.com/

そうだね。これらのカメラをいくつか持ってて、全部フリゲートインスタンスに向けてる。このファームウェアは色んなプロトコルをサポートしてるから、ストリーミングビデオを見るために設計されたものなら基本的に何でも動くはず。

実はこれを前に試したことがあるけど、全然進展しなかったんだ。サポートされているハードウェアのリストは、特定のSoCを指していて、ブランドとかは関係ないんだよね。どの物理カメラがどのチップを使っているのかを特定するのはすごく難しいし。しかも、名前に反して、サポートされているデバイスのほとんどはウェブカメラ用で、現代の市販のIPカメラで使われているチップじゃないみたい。普通のカメラを使った、基礎からのガイドがあればいいのにって思う。

Thinginoプロジェクトの方がうまくいくかもしれないよ。特定のデバイスをターゲットにしてるからね。

ロシアのサイトにリンクされてるロシアのスポンサーを見ると、これって主にドローンや塹壕にこれらを取り付ける人たち向けなんだろうね…どこかでカメラを手に入れてるんだろうな。

数年前、コロナで暇を持て余して、Wyze Cam V2のリバースエンジニアリングをして、カスタムファームウェアを作ることにしたんだ。今はここにあるよ:https://github.com/openmiko/openmiko とはいえ、長期的にサポートされるオープンソースカメラソフトウェア/ファームウェアを作るのは本当に難しい。カメラを選ぶのもさらに難しくて、今の市場では全てを手に入れることはできないから、自分が本当に気に入る部分を選ばないといけない。あと、上記のコードも完全にオープンソースってわけじゃないからね。ドライバのバイナリを読み込まないといけなかったし、そのソースが公開されるかはわからない。カーネルも古いし。ただ、Wyzeがサポートをやめたときに、これらの古いカメラをゴミ箱から救えるのは嬉しいことだね。ファームウェアは簡単なケースで動くし、ただ読み込むだけでフレームをcurlで取得できるよ。ffmpegを使ってタイムラプス動画を作るスクリプトにも使ったし、認証やアプリ、メールとかでゴチャゴチャする必要もないから楽だよ。

関連情報: Show HN: WFB-ng – ドローンとロボティクス用の長距離高速リンク - https://news.ycombinator.com/item?id=41293934 - 2024年8月(コメント3件) Thingino: Ingenic SoCに特化したOpenIPC由来のカメラファームウェア - https://news.ycombinator.com/item?id=40261046 - 2024年5月(コメント2件) OpenIPCはあなたのIPカメラ用の代替オープンファームウェア - https://news.ycombinator.com/item?id=39571025 - 2024年3月(コメント70件) OpenIPC: あなたのIPカメラ用の代替オープンファームウェア - https://news.ycombinator.com/item?id=37812217 - 2023年10月(コメント59件) OpenIPC: あなたのIPカメラ用の代替オープンファームウェア - https://news.ycombinator.com/item?id=35975383 - 2023年5月(コメント1件)