ラズパイ4よりスペック高い NanoPi R6S に Ubuntu 22.04 LTS (Desktop) をインストールする

…おひさしぶりです。
といってもこんなインターネットの場末にあるこのブログを定期購読みたいな形でチェックしている奇特な人間がいるとは思えませんが、記事を書くモチベーションがかなり低下してしまったこともあって、このブログも去年の4月以来まったく記事を書いていませんでした。

さすがに放置しすぎてちょっとまずいだろうとなったのと、WordPress の Gutenberg のアプデ後の書き心地を試したかったのと、ちょうど NanoPi R6S が届いた(!)という記事にするにはいいかんじのイベントがあったので、適当に Ubuntu 22.04 LTS をインストールした方法についてメモしておきます。

NanoPi R6S - FriendlyELEC WiKi

…といっても OS のインストールドキュメントはここにまとまっていて(ラズパイ以外の SBC としては)珍しくそこそこ丁寧に解説されているのですが、そもそも NanoPi の日本語情報がない問題もあるので、少しでも普及(布教?)につなげられればと…。あとは記事書くリハビリの目的もある。

ドキュメントは英語しかないけどまあみんな大好き Google 翻訳で読めるっしょ?
私は英語全然だめなのでほぼほぼ Google 翻訳で読んでます。サンキュー Google 先生……

ちなみに NanoPi R6S はまさかの Amazon ほしいものリスト からの贈り物です…!
直販だと $139 + 送料なのですが、Amazon で買うと3万超えるぼったくり価格なのに贈っていただけて本当に恐縮…🙏🙏🙏🙏🙏

もともとほしいなと思っていたところ、さすがにちょっと高め & 海外からの輸入になるのでちょっと Amazon よりハードル高めなのもあってとりあえず円安が収まるのを待っていたのですが、これはちょっと予想外でした。買ってくれたらいいな~とは思っていたものの、ものがかなり高いだけに買ってくれる人はいないだろうとたかを括ってた…。

ケースはめちゃくちゃ質感が良く所有欲を満たしてくれる、美しい金属ケースになっています。公式いわくCNC (Computer Numerical Control) 削り出しらしい。
もともとデザインが良いな~と思っていましたが、いざ見てみると本当に美しいし、さらにヒートシンクの役割も兼ねているのがかなり良いです。ラズパイ含め、ヒートシンクを兼ねたここまで完成度が高くて堅牢なケースが公式であるのってあんまりないですからね。それにめちゃくちゃ小さい!

Sponsored Link

手順のまとめ

さて本題。NanoPi R6S はどこぞの入手困難なラズパイ4と異なり eMMC が 32GB もついています…!!
SD カードはどうしても安定性に難がありますから、せっかくの eMMC 32GB を有効活用したいものです。

ところで、NanoPi R6S の販売元である FriendlyElec の Wiki には、インストール方法が複数書いてあります。どれがいいのかわかりづらいのでメインのインストール方法を箇条書きでまとめると、

  1. OS を Micro SD カードにインストールする (Wiki では TF カードと書かれているが、これは SD カードのことらしい)
  2. OS を内蔵の eMMC にインストールする
    1. 一旦 FriendlyWrt (OpenWrt の独自フォークらしい) を焼いた Micro SD カードから起動したあと、FriendlyWrt の Web ページ内の eMMC Tools から OS イメージをアップロードしてインストールする
    2. Eflasher と呼ばれる FriendlyElec 謹製のツールを同梱した専用の OS イメージを Micro SD カードに焼くことで、NanoPi R6S の起動時に自動的に OS をインストールする
    3. PC と NanoPi R6S を USB-A to USB-A ケーブルでつなぎ、Rockchip SoC 専用の eMMC フラッシュツールを使って OS をインストールする

という感じ。

公式には「通常ユーザーは Web ページから OS 焼く方法が良い」みたいなことが書かれていたので、私もそれに載っからせてもらい、2-1 の方法でやってみたいと思います。
開発者向けには USB-A to USB-A で書き込むのが良いとか書いてあったけど、今回が初 NanoPi デビューだけに、まずは成功確率の高い方法でいきたいところ…(Qua Station で ARM SBC には一度痛い目を見ている…)。

必要な OS イメージを集める

このあたりもドキュメントに載っていますが、OS イメージは こちらの Google ドライブ からダウンロードできます。
今回は無難に Ubuntu を選択しましたが、Debian や Android 12 なんかもあるみたいです。もちろんもともとルーター用途向けなので OpenWrt (のフォークである FriendlyWrt ) がメインのようですが。

今回は、まず OS インストールのために SD カードに焼く用として FriendlyWrt のイメージ (rk3588-sd-friendlywrt-22.03-20230114.img.gz) と、Ubuntu 22.04 LTS Desktop のイメージ (rk3588-sd-ubuntu-jammy-5.10-arm64-20230114.img.gz) をダウンロードしました。

Ubuntu 22.04 LTS Minimal のイメージもありますが、地雷なのでやめたほうが無難です。
実際一度試しましたが、Nautilus(ファイラー)すら入っておらず本当にデスクトップ環境があってターミナルがあって一応動くくらいのものでしかなく、さらにデスクトップの設定に必要なパッケージも一部入っていないようで、通常の Ubuntu と外観が異なります。なぜか本来左側にあるはずのバーがなかったり、設定アプリの項目が不足していたり…。

そもそも Ubuntu 22.04 LTS Desktop のイメージ自体も通常の Ubuntu と比べるとかなりカスタマイズされていて、一般的な Ubuntu Desktop には入っているようなデフォルトアプリが入っておらず軽量化されている、Firefox ではなくパッケージマネージャーからインストールされたわけではない謎の Chromium があるなど、一般的に見れば十分軽量化されていそうなので、これで十分でしょう。正直ドライバ周り以外には何も手を加えていない純粋なイメージもほしいところですが…。

実際に Ubuntu 22.04 LTS Desktop Minimal のイメージをインストールしてしまったのですが、ファイラーすらないので初期状態ではまともに使えないほか、しょうがないので apt でいろいろ必要そうなソフトなどのパッケージをインストールしたところ「あれ?何かがおかしいです」と GNOME のデスクトップ環境自体がクラッシュし再起動しても一切動かなくなってしまったので、やむを得ず再インストールする羽目になりました…。

さらに再インストール時も実は単に上書きして OS イメージをインストールするだけではまたデスクトップ環境がクラッシュしてしまうため、一度 Micro SD カードから起動させた FriendlyWrt で内蔵 eMMC 内に残存する旧 OS のデータを全部消去してから再インストールする必要があります (eMMC 自体が何個ものパーティションに分かれている謎構成だが、最後から1番目と2番目のパーティションをマウントして中身を消せば良い) 。落とし穴すぎる…。

NanoPi R6S に Debian 11 をインストールした記事を公開しました。
後述の通り Ubuntu 22.04 LTS (Desktop) はイメージに問題があるのか私の環境では何度かいじっているうちに起動しなくなってしまったので、サーバー用途であればこちらがおすすめです。
Debian 11 の方の記事にしか書いていないノウハウなどもあるのでぜひ。

Micro SD カードに OS インストール用の FriendlyWrt を書き込む

私はネットワーク関連にまったく興味がないので自前ルーターをやろうとしている人が謎で仕方ないのですが、そんなことはさておき。
いずれにせよ OS インストールは一度 FriendlyWrt を SD カードに焼いた上で、一旦起動した FriendlyWrt の管理画面 Web ページからやるのが楽そうなので、そうしていくことにします。

自前ルーターの決定版! 8コアCPUと2.5GbE×2を搭載したシングルボードコンピューター「NanoPi R6S」を試す【イニシャルB】
「NanoPi R6S」は、CPUにRockchip RK3588S、メモリ8G、ストレージに32GBのeMMC、2.5Gbps×2+1Gbps×1のEthernetポート、HDMI×1を搭載したシングルボードコンピューターだ。汎用的なサー...

FriendlyElec さん的には win32diskimager がおすすめらしいのですが、こちらの記事いわく Raspberry Pi Imager でも普通に焼けるらしい (!) ので、今回は UI がよさげなそちらを使ってみます。

ちなみにラズパイ自体もう数年触っておらず、さらに当時は Raspberry Pi Imager が出ていなかった頃なので、実はこれを使うのははじめてだったりします。

超絶シンプルな UI で流石のクオリティ。
ただ Qt で書かれているらしく、高 DPI 環境でもスケールしないのが残念…(細かい)

「OS を選択」をクリック後、今回はカスタムイメージを使うので、「カスタムイメージを使う」を選択。

次に「ストレージを選択」をクリックして、焼く先の SD カードのドライブを選択します。
間違えないようにだけ注意。

あとは「書き込む」をクリックするだけ!もうスクショ付きで丁寧に説明する必要がないくらい簡単ですね。
そもそもそんなにイメージが大きくないので、書き込みは1分もかからず終わります。よほどアレな SD カードなら別だけど…。

この手のツールはどうしても玄人向けのものが多いのですが、ラズパイはもはやエンジニアやギークやおまいらオタク以外のごく普通の一般人もさわるものになっているからか、シンプルながら初心者でもわかりやすく作られていて、感動しました。
機能をシンプルに抑え、詳細なオプションは設定ページに隠蔽することでごちゃごちゃ感もなくせていて、とてもよい UI です。日本語環境だとフォークバックフォントとして MS UI Gothic で描画されるのだけどうにかしてほしいが…(オタク特有の早口)

終わったら、ちゃんと SD カードを「安全な取り出し」(アンマウント)してから、Micro SD カードを SD カードスロットから引き抜いて、NanoPi R6S 本体に差し込みます。
カチッという音がなるまでしっかり差し込みましょう。

NanoPi R6S を起動させる

さて、ドキドキの起動タイム…!!

Anker PowerPort III Nano 20W (PD 充電器 20W USB-C 超小型急速充電器)【PSE技術基準適合/PowerIQ 3.0 (Gen2)搭載】 iPhone 15 / 14 / 13 iPad Air (第5世代) Android その他 各種機器対応 (ホワイト)
Anker PowerPort III Nano 20W (PD 充電器 20W USB-C 超小型急速充電器)【PSE技術基準適合/PowerIQ 3.0 (Gen2)搭載】 iPhone 15 / 14 / 13 iPad Air (第...
Amazonベーシック USB-C to USB-C 2.0 高速充電ケーブル 速度480Mbps USB-IF認証取得 Apple iPhone 15/iPad/Samsung Galaxy/タブレット/ノートパソコン用 1.8 m ブラック
Amazonベーシックは、お客様に高品質の商品を低価格でお届けすることを目的とした、Amazonグループが全世界で展開するブランドです。 ご購入後、1年間限定で日本国内保証を利用頂けます。 (アマゾン合同会社保証)

…のその前に、NanoPi R6S には 5V3A の USB-C 給電が必要です。このあたりはラズパイと同じですね。
SBC の中には専用の電源が必要な厄介なやつもそこそこあるので、USB-PD 対応なのはポイント高いです。

私はこちらの Anker (安定) の給電器と、Amazon Basic の USB-C to USB-C ケーブルを買って、セットで使っています。
USB ケーブルの方は USB 2.0 しか対応してないっぽいですが、どっちみち給電用なのでヨシ!

急速充電器だからといって必ずしも 5V3A なわけではないので、説明をしっかり確認した上で買うのがおすすめです。

あと当然ですが、 FriendlyWrt の管理画面にアクセスするには LAN ケーブルを接続しておく必要があります。こちらも適当に接続しておきましょう。

あとで気づいたのですが、FriendlyWrt はルーターなので、ほかのルーターの下にぶら下げて同じネットワークに入れようとしてもうまく行かないみたいです。PC と NanoPi R6S を直接 LAN ケーブルでつなげたほうが早そう…(ドキュメントにもそう書いてある)。

いざ、USB-C 電源ケーブルを接続…!!
…SYS LED が点滅するだけで、点灯状態になりません。

もしやブートしてない…?と思って HDMI をディスプレイにつなげてみたところ、ちゃんと起動できていることを確認できました。ちなみにコンソールのログインユーザー名は root 、パスワードは password です。

古い機種の情報だと FriendlyWrt にはパスワードそのものが設定されていなかったりするらしいが、今回のイメージには設定されていた…。

…と FriendlyWrt を動かしたいだけならここで終えてもいいのですが、今回の本題は Ubuntu を入れることなので、サクッとやっていきます。

PC につけていた LAN ケーブルを外して(ノート PC をクラムシェルのように使っているので…)、代わりに一時的に NanoPi R6S の LAN-1 端子と直接つなげた上で、http://192.168.2.1/ にアクセスします。そうすれば FriendlyWrt の Web UI のログイン画面が出てくるはず…!
なお、パスワードはコンソール同様に password です。

初歩的すぎますが、私は LAN ケーブルの差し込みが甘いことに気づかず、当初 Web UI にアクセスできずにちょっと焦りました。LAN ケーブルはちゃんと奥までしっかり差し込みましょう…(自戒)。

この時点で ssh [email protected] を実行すると、FriendlyWrt の SSH にアクセスできます!
デフォルトのパスワードは他同様に password です。
何らかの事情で eMMC 内の OS を入れ替える際に、誤作動防止のため元の eMMC の内容を全削除するときとかに使えそうです。とりあえずレスキュー用 OS として MicroSD カードにひとつ焼いておくといろいろ便利かもしれません。

なお、内蔵 eMMC は、MicroSD カードから起動した FriendlyWrt からは /dev/mmcblk2 デバイスとして認識されます。 /dev/mmcblk2p0 から /dev/mmcblk2p9 まで謎のパーティションがありますが、実際にマウントできるのは p8 と p9 のみです。

Rockchip の eMMC 焼き込みは非常に特殊なパーティション構成を採用しているようで、p0 ~ p7 はおそらく U-Boot などの起動用ブートローダーが生データで書き込まれており、p8 は read-only な Linux の rootfs 、p9 はそれに重ねるようにユーザーが変更した writable な rootfs が記録されているようでした。
このあたり の記述を見るに、NanoPi の OS イメージでは Overlayfs を採用しているようです。読み取り専用の rootfs とデータパーティションを分けることで、データパーティションをフォーマットするだけで工場出荷時の状態に簡単に戻せたり、データパーティションが破損してマウントできなくなっても起動はできる、などのメリットがあるようです。

つまり、ユーザーが eMMC に保存したデータは /dev/mmcblk2p9 に記録されています。eMMC の内容をクリアする際は、ユーザーデータの入っている /dev/mmcblk2p9 と、念のため /dev/mmcblk2p8 をそれぞれ /mnt にマウントしてから rm -rf /mnt/* すれば良いでしょう。

はじめて OpenWrt (FriendlyWrt は OpenWrt を NanoPi 向けにカスタムしたもの) を触ってみましたが、たしかにこれは市販のルーターよりよくできてるしネットワークオタクは使いたくなるよな~という印象でした。意外と全部 GUI でできるようになっていてびっくり。

通信がつながった途端、LAN1 の LED が緑色に点灯するようになりました。
LED が点灯していれば接続はできていそうですね。

内蔵 eMMC に Ubuntu 22.04 LTS の OS イメージを書き込む

さて、ひととおり OpenWrt がどんなのなのかを体感したところで、いざ本題。

[システム] → [eMMC Tools] から、eMMC Tools の画面を開きます。
ここはおそらく FriendlyWrt のみの独自機能。

OS イメージをアップロードできる画面なので、以前ダウンロードしておいた rk3588-sd-ubuntu-jammy-desktop-5.10-arm64-20230114.img.gz を選択します。
最後に [Upload and Write] をクリックすると、OS イメージの書き込みがはじまります…!ドキドキ…。

もとよりそんなにイメージが大きくないこともあって、イメージの書き込みはすぐ終わります。…とおもいきや99%で止まるありがちなやつ……。
とはいえちゃんと処理は動いているので、しばらく待ちましょう。私の場合はたぶん3分もかからずに終わりました。決して進まないからといって書き込み中に電源引っこ抜いたりはしてはいけません!(すぐ考えればわかることですが、書き込み途中なので OS が壊れます…)。

この状態になったら、OS の書き込みは完了です!案外簡単でしたね…。
ちなみにこの状態では WAN・LAN1・LAN2 の緑系の LED がすべて点灯しています。Wiki にもインストール完了時にそのような点灯になると書いてあったので、問題なさそう。

もう SD カードは不要なので、SD カードを筐体から取り出します。
するとすぐに再起動するので、あとはドキドキの Ubuntu とのご対面…!!

ちなみに eMMC には FriendlyWrt を入れたわけではないので、eMMC Tools のページに書いてある「Go to Homepage」は機能しません。そもそもルーター機能も OpenWrt のコンパネも入っていないので当然ではあるが…。

ここからは一時的に PC につないでいた LAN ケーブルを家のルーターから伸びている LAN ハブにつないで、Ubuntu がインターネットにつながるようにしました。今回はルーター用途で使いたいわけではないので、順当に NanoPi R6S も家のルーター (ひかり電話ルーター) の下にぶら下がる形にします。

もちろんこのあたりは環境次第で異なるのでお好みで…。

Ubuntu 22.04 LTS Desktop を使ってみる

もともとサーバー用途のつもりなのでデスクトップはほとんど使う予定がないのですが、せっかくなのでデスクトップの方も見ておきましょう。家の Ubuntu マシンは 20.04 なので 22.04 は地味に初…。

適当に HDMI をディスプレイに、あとは有線/無線キーボードとマウスをつなげたら、いざご対面。
ちなみに Wi-Fi も Bluetooth もついていないので、使いたい場合は別途ドングルが必要な点に注意(その分安くなってるんだろうし、技適おじさん😩にガーガー言われずに済むメリットもあるが…)。

(画像は日本語化後のデスクトップ)

お〜〜〜〜!!!ちゃんと Ubuntu のデスクトップが動いてます。
ごく普通に使えているんですが、しれっとラズパイサイズの小ささのマシンで(重量級のデスクトップとして知られる)GNOME がモッサリ感なく普通に使えてしまうのはなかなかすごい…(ラズパイは確か Xfce のはず)。

基本問題はないのですが、私のディスプレイ環境だと(本来は 4K 解像度まで対応しているはずなのに)2560×1440 の解像度のディスプレイで 1920×1080 しか出ないのが気になりました。まあメインで使うわけでもないのでこれでも全然良いんだけど…。

家の Ubuntu 鯖は Ubuntu 20.04 のため Ubuntu 22.04 を触ること自体はじめてなのですが、Windows や Mac のようにアクセントカラーを変えられるようになっていて感動しました。いいですね。

ちなみにアイドル時の CPU 使用率はこんなかんじ。

デフォルトではキーボードが英字配列扱いされてしまっているので注意。

ちなみに SSH は既定で最初から有効化されているので、ssh [email protected] でログインできてしまいます。もちろんパスワード認証なので、パスワードには pi と入力しましょう。
パスワード認証はいろいろとあまりよろしくないので、手間が開いたときに公開鍵認証にでもしておくのがおすすめです。まあローカル内で使う分には問題ないかもだけど…。

OS インストール後にやったこと

日本語化

さて、さすがに世界共通イメージということもあって、デフォルトでは英語しか入っていません。これはまあ仕方ないでしょう(中国語イメージじゃないだけ全然まし)。

設定アプリから [Region & Language] → [Manage Installed Language] を開き、[Install / Remove Language] をクリックします。

出てきた画面で [Japanese] を選択して [Apply] します。

すると言語パックのインストールがはじまります。正直手動でインストールできなくもないのですが、GUI からやったほうが不足なくインストールしてくれるのでよさそうです

あとはこの辺のセレクトボックスを全部「日本語」にして [Apply System-Wide] すれば日本語になるはず・・・!

変更後は再起動が必要らしいので、ボタンを押してセッションを再起動します。

日本語化後に GNOME を開くとこんなことをきかれますが、個人的には英語のままにしておくほうがいいと思います(Windows / Mac は実際そうだし、なぜ Linux だけ英語から変えようとしてくるのか謎い)。

再起動後にデスクトップを開いてみました。
ちゃんと日本語化されていますね。フォント (Noto Sans JP) も自動でインストールされています。

日本語 IME を入れる

正直どうやったか忘れてしまったので、設定アプリのスクショだけ貼っておきます…。
日本語言語パックをインストールした時点で Mozc も入るっぽいので、あとはキーボードを日本語 (Mozc) に差し替えるだけ…のはず。

Ubuntu は入力ソースに応じてキーボード配列の割り当ても変わるらしいので、入力ソースは [日本語 (Mozc)] だけにしておいたほうがよさそうです(ここで日本語キーボードになる)。

GNOME Tweaks でウインドウを中央に表示するようにする

デフォルトで GNOME はウインドウを左上に表示するのですが(なぜかウインドウ位置を記憶してくれたりしないししかも左上ぴったりに出てくる…)、ちょっと気持ち悪いのでウインドウを中央に表示するようにしてみます。

sudo apt install gnome-tweaks

適当に GNOME Tweaks をインストールしたあと、GNOME Tweaks を開いて、

「新しいウインドウを中央に表示する」を設定するだけです。

ちゃんと Chromium をインストールする

FriendlyElec のイメージにはデフォルトで Chromium がインストールされていますが、実はこの Chromium はパッケージマネージャー (apt や snap) からインストールされたものではなく、謎のカスタムが施された Chromium がインストールされています。

さらにバージョンも少し古く、パッケージマネージャーからインストールされていないのでバージョンアップもできなさそうです。さらに(デフォルトでなぜか入ってないので別途入れた)Firefox よりもレンダリング系のパフォーマンスが重く、使い物になりません。

sudo apt install chromium-browser

しょうがないので、普通の Chromium をインストールしていきます(arm64 版の Google Chrome は存在しないため、Chromium 以外の選択肢はない)。

Ubuntu 22.04 では、Chromium や Firefox を apt からインストールした場合も、自動的に snap からインストールされるみたいです(apt はメタパッケージにすぎない)。昔は snap は IME 周りがうまく動かなかった印象ですが、さすがに進化したのか日本語 IME も使えるようになっていました。

先ほど入れた Chromium は snap 経由でインストールされるので、謎の Chromium とは併存してインストールできます。そもそもパッケージマネージャーからインストールされてない以上アンインストールしようがない…。

使ってみた感想

スペックに関しては ARM SBC としては申し分ないです。なんせ ARM SBC (Single Board Computer) 史上最高のスペックを誇る RK3588S 搭載ですし、ラズパイとは比べ物にならないほどです。

これくらい性能があれば、Web サーバーとしても余裕で使えるでしょう。CPU コア数は 8 コア、メモリも 8GB あるので、そこらへんの VPS (だいたい1~4コア、メモリも少ない) よりもスペックは高そうです。

ただし、やはり ARM であること、情報が少ないが故に嵌ったポイントもいろいろあります。
正直、ラズパイ + Raspbian ほど導入が簡単とはいえません。まあ OS イメージのデフォルト状態で「そのまま」使う分にはあれかもですが、少し凝ったことをやろうとすると大変です。

そもそも ACPI だったり UEFI だったりいろいろ方式が規格化されて何差しても動くようになっている(誇張表現)x86_64 と違い、ARM は SoC への依存が非常に強く、SoC に生えている PCIe バス、SoC に生えている GPIO 、SoC に生えている USB バスなどドライバが完全に SoC に依存していたり、あるいは独自規格だったりとかなりカオスな印象です。
ラズパイはソフトウェア面でのサポートが非常に手厚いからなんとかなっているものの、それ以外の有象無象のラズパイもどき (xxxxPi) はそこまでサポートが手厚くはない (超適当なのすらある) ので、情報も少なく何かあったときには自分でサバイバルする必要が出てきます。

このあたりは Qua Station を魔改造して Ubuntu 20.04 を入れられるようにした ときにいろいろ学びました…(丸々2ヶ月くらい費やした…)。

また、NanoPi R6S は 公式ストア からでもケース付きで $139 とまあまあお値段が張ります。
ケースなしなら $119 ですが、そもそもケースが不要なら Orange Pi 5 の方が安いです。

ミニPC N100 インテル最新のAlder Lake-Nシリーズ (4C/4T,最大3.4GHz) Windows11 DDR5 8GB+256GB SSD CHUWI HeroBox 2023 Mini Pc 4K@60Hz 小型PC高速WiFi 6 | BT 5.2 | Type-C USB 3.0 静音 Mini PC 小型パソコン 静音性 省電力 超小型
Herobox 2
ミニpc N4100 4C/4T 小型 mini PC DDR4 6GB+128GB 2133MT/S HDMI Type-C 4K@30Hz 画面出力対応 小型デスクトップパソコン
mini pc
ミニPC Windows11 Pro 8GB DDR4+128GB SSD Celeron J4125 最大2.7GHz Mini pc 4K@60Hz HDMI+DP USB3.0*4 高速Wi-Fi BT4.2 ファンレス 静音性 省電力 ミニパソコン NucBox3
ミニPC
https://www.amazon.co.jp/dp/B0B1GZBG1X?tag=tsukumijima-22

単に小型で何かしらのサーバー(ex: 録画サーバー)に使いたいだけであれば、(面白みはありませんが)もうちょっとだけ予算を積んで、上に貼ってあるような Amazon で1~2万 (!!!) で売られている CHUWI / GMKtec / Beelink あたりの中華激安小型 PC (Intel Celeron 搭載) の方が幸せになれそうです。
せっかくなら Celeron の中でも Jasper Lake のやつを買ったほうが性能が高くてよさそう。

ラズパイが特別に整備されているだけで ARM は修羅の道なので、基本自分でなんとかできる人向けの製品です。特に録画オタク的には Intel CPU 搭載ミニ PC なら Intel QSV が使えるのがデカい…

Intel QSV は NVENC と比べても見劣りしないくらいエンコード周りの機能や品質がかなり優秀で、CPU 内蔵の GPU とは思えないほどです。
Celeron ということで CPU 性能は下手すれば RK3588 より劣るかもしれませんが、QSV がちゃんと使えるなら CPU パワーはさほどいらないですし…。

特に、録画サーバー用途で HW デコード/エンコード目当てで買おうか迷っている人は、現状やめたほうが無難と言わざるを得ません。
実際にいろいろ試してみましたが、性能としては ARM SBC としてはかなり高い(フル HD + インタレ解除エンコードで 3.2 倍くらい出るし、同時エンコードもフル HD で2ストリームまでならリアルタイムトランスコード可能で、H.264 に加え H.265 / HEVC のエンコードにも対応している)ものの、ソフトウェアのサポート環境が GStreamer + 独自プラグインのみで、FFmpeg の公式サポートはありません。

私は録画サーバー用途でいろいろ試していたのですが、特に録画した放送波の MPEG-2 TS ストリームをエンコードする用途では現状 GStreamer を FFmpeg でサンドイッチする必要があるなど、ポータブルに使える状態ではありません。
H.264 な映像ソースのトランスコードであれば問題なくできるみたいなのですが…。

一応いろいろ試したときの シェルスクリプト を置いておくので、よければ試してみてください。なにか進展があれば追記します。

2023/03/31 追記:
なんと QSVEncNVEncVCEEnc などの作者として知られる rigaya さんが、RK3588 などの Rockchip SoC の HW デコーダー/エンコーダー向けの rkmppenc というエンコーダーを開発してくださっています…!!
インターレース解除や OpenCL フィルタなどにも対応し、ARM SoC としてはかなり高速にエンコードできます。Rockchip SoC に対応したハードウェアデコーダー/エンコーダーとしては最高性能なのではないでしょうか。

rkmppenc の使い方はこちらの記事にて解説しています。

youyeetoo NanoPi R6S Dual 2.5G+ ギガビット ミニ開発ボード SBC RK3588 8+32GB対応 8K60P エッジコンピューティング Android/Ubuntu/FriendlyWrt対応 (8G+32G (Kit))
youyeetoo NanoPi R6S Dual 2.5G+ ギガビット ミニ開発ボード SBC RK3588 8+32GB対応 8K60P エッジコンピューティング Android/Ubuntu/FriendlyWrt対応 (8G+32...

コメント

  1. As developer I found these tools wonderful