写真のtype3はSECO製UDOO dualです。現時点ではOSにAndroid4.4.2/kernel 3.0.35を採用します。type3の特徴はなんといっても、Freescale i.MX 6 ARM Cortex-A9 CPUとAtmel SAM3X8E ARM Cortex-M3 CPUの2種類のCPUを搭載し、デジタルとアナログI/OをAndroidを使ってArduinoで制御できるとういうこと。ですから”YOURBORD2”では、モニタ表示に合わせて、商品が置いてあるフェイスのLEDが点灯するとか、ディスプレイされている商品にスポットライトが当たるというような「演出」も付加できるようになりますね
Zooming DSsytem”YOURBORD2″player type2 “Utilite2”
写真のtype2はCompulab製Utilite2です。現時点ではOSにAndroid4.4.3/kernel 3.4.0を採用します。desktopコンピュータとして完成され、WiFi標準搭載です。Qualcomm/Snapdragonを搭載し、AndroidPCとして信頼性の高い出来上がりです
CPU: Qualcomm® Snapdragon™ 600 (APQ8064) quad-core @1.7GHz
RAM: 2GB DDR3-1066
Storage: eMMC 4GB, mSATA socket
Display: HDMI 1.4a
LAN: GbE
Wireless:WiFi 802.11b/g/n + Bluetooth 4.0
USB: 4x USB2.0 host + USB OTG
Zooming DSsytem”YOURBORD2″player type1 “ODROID”
写真のtype1はHardkernel製ODROID-XU3lite、実際に使用するのはXU4です。現時点ではOSにAndroid4.4.4/kernel 3.10.9を採用します。kernelが新しいので多くの種類のタッチモニターを利用でき、1080PをソフトウェアデコードしてもCPU使用率が50~60%程度という強力なCPU(オクタコア)です
Samsung Exynos5422 Cortex™-A15 2Ghz and Cortex™-A7 Octa core CPUs
* Mali-T628 MP6(OpenGL ES 3.0/2.0/1.1 and OpenCL 1.1 Full profile)
* 2Gbyte LPDDR3 RAM PoP stacked
* eMMC5.0 HS400 Flash Storage
* 2 x USB 3.0 Host, 1 x USB 2.0 Host
* Gigabit Ethernet port
* HDMI 1.4a for display
* Size : 82 x 58 x 22 mm approx.(including cooling fan)
Our DS players decided !
Episode 02 / develop DS player with SBC
結果はEpisode01の通り、今回はそこに至るまでに気づいたことのあれこれ
モバイル市場においてAndroidが登場し注目されるようになってから生産が始まった韓国(Samsung製Exynos)や中国製(Rikomagic,Allwinner)のSoCは、Andoroidに最適化さ
れ、それに対しモバイル市場をNOKIAが牽引し以前から組込み用コンピュータで使用されてきた欧米製SoC(Freescale,Qualcom,TI,Broadcom)では、基本が組込み用Linuxがベースとなっているようだ
ODOROID-XU3lite/CPU:Exynos GPU:Mali では、Android4.4.4/Android Media Frameworkで開発することしか解決策を発見できず、Android上でのFramework”Kivy”や”PyQt”での動作は確認(Pygletは未確認、KivyはBuidozerでAPKファイルにトランスレートするかランチャをインストールしてKivyコードを実行、ただしいずれの場合もHWaccelerationは無効、本機Android上でHardwareAccelerationを有効にするには、NativeにてAndroid Multimedeia Framework/OpenMAXを活用するのがよさそう)できたので、これらのFrameworkでの開発がGoodと判断。更に木曽さんの協力により、stageVIDEOを利用したAIRプログラムにおいてHardwareAccelerationも有効になることが確認でき、very good!! LubuntuでPyQtを使用した場合、ビデオ再生でPhonon.VideoPlayer Classが使用される。このclassの基本メディアエンジンとなるGStreamerでは、XU3上において、HardwareAccelerationを適応できない。他のエンジンとしてVCLが考えられるが、GStreamerを削除しなくてはならずリスクが大きすぎるので却下した。
ODROID-C1/ CPU:Amlogic S805 GPU:Mali では、Lubuntuにおいて、XU3と同じくGStreamerでのHardwareAccelerationを適用できないが、Kodi Player(旧XBMC)でHWaccelerationを適用できる。こちらもAndroid4.4.2上では、XU3と同じくKivyの動作確認はできたが、ただし、1080P出力は不可720Pまで、またHardwareAccelerationが無効なため、実際プレイヤーとしては使用不可。stageVIDEOを利用したAIRプログラムにおいては音は出力されるが絵が出力されなかった。
ODROID-XU3lite とC1の総評として、XU3lite+Androidはプレイヤーとして使用可能、XU3とC1+Lubuntuではプレイヤといっしょに設置するマイクロWWWサーバとして利用可能と考えます(ARMは、メモリ小ということもあり、マルチタスク不可、デュアルタスクまでと考えると、WEBとの連携したサービスを実現する上では、マイクロWWWサーバもいっしょに設置する必要があると考えました)
INFORCE6410plusは、Linaro(組込みLinux/Ubuntu)に完全互換。KivyもPPAからすんなりインストールしアップデートもOK。もち、すんなりKivyを直接再生可能!! QT及びPyQTは今後引き続き検証します
UDOO Quad and DUAL/Freescale製i.MX6なので、Linuxが基本。Kivyの実装はできない。しかし、インストールされているGStreamer-0.10とi.MX Linux Multimedia Framework で、HWaccelerationによるHDの再生を実現しているi.MX Linux Multimedia Framework の使い方がいま一歩理解不足だが、基本的にGStreamerが使用できるので、PyQtで可能なように思われるが、要調査。また、Udoobuntu02のβ版が公開されたので、この検証も引き続き実施予定
Episode 01 / develop DS player with SBC
長らくお休みしていて、すいません
まずは、SBCについてですが、AdobeAIR(AndroidOSのみ)、Python/KivyまたはQt5.*で開発が可能かを検証しました。検証方法は、それぞれの言語でビデオ再生するシンプルなコードを作成し、それが実行するという方法です。AIRの場合はstageVIDEOを活用してハードウェア・アクセルレーションが有効かどうかも試しました
【ODROID-XU3lite】Samsung Exynos5422 Cortex-A15 2Ghz +Cortex-A7 Octa core CPUs、Mali-T628 MP6 GPU
Android4.4.4では、KivyコードをBuidozerを使ってトランスレートしたAPKファイルが実行できました! でも残念ながらHWアクセルレーションは無効、ソフトウェアデコードで720P動画再生時のCPU負荷が50~60%程度です。しかし、adobeAIR+stageVIDEOでは、ハードウェア・アクセルレーションによる1080P動画の再生ができました! LubuntuではKivyを実行できませんでしたが、OSとしては使い勝手がいいので、後継機XU4では、ApacheいれてマイクロWWWサーバとしても使えそうです
【ODROID-C1】Amlogic ARM Cortex-A5(ARMv7) 1.5Ghz quad core CPUs、Mali-450 MP2 GPU
Android4.4.2では、KivyコードをBuidozerを使ってトランスレートしたAPKファイルが実行できますが、HWアクセルレーションは無効ソフトウェアデコードで720P動画再生時のCPU負荷が100%フレームドロップがひどく、プレイヤとして使用は不可ですね。adobeAIR+stageVIDEOでは実行できますが画面表示ができない(音のみ)、たぶんSoCとの関係のためかと思います。こちらもLubuntuでApacheいれてマイクロWWWサーバとしてのみ使える可能性はあります
【Inforce6410plus】Qualcomm Snapdragon 600 (APQ8064 SoC)
Linaro/ubuntuにて、Kivyコードを直接実行できました! 組込みLinuxとしてQt5.*での実行も期待大!! ただし、値段がODROIDの約2倍は痛い・・・・・
【UDOOquad】Freescale i.MX 6 Quad + Atmel SAM3X8E、Vivante GC 2000 + Vivante GC 355
UDOObuntu2beta1で再検証しましたが、やはりKivyを直接実行はできませんでした・・・・ 9/10に発表されたbeta2で再トライ!! でもUDOOは、Kivyなどマルチメディアに拘らず+Arduinoという特徴を活かしたいね
今回の検証も含め、ブロッコデリ木曽様から多大なご協力を賜りましたこと、たいへん感謝しております
発表! ”UDOO Neo”
Freescale社のアプリケーション・プロセッサ ” i.MX 6soloX “を搭載したローコストなシングルボードコンピュータ”UDOO Neo”が発表されました。このチップは優れたリアルタイム性を持つCoreTex-M4コアとCoreTex-A9コアを統合しています。従って、このコンピュータではArduinoの高い操作性とローコスト&コンパクトを両立させています。さらに、ビデオカメラからのアナログ入力、加速度センサー、磁気センサー そして、ジャイロセンサーまで、このボードには搭載されているんです! 姿勢制御やナビゲーションに利用できる他、IoT(Internet of Things)に通じる面白い工作に使えそうです
It is Cool for DOOH! “Weather Unlocked API”
天気予報関係の探しものしてたら見つけた、とってもクールなサイネージ用API “Weather Unlocked” 。提携している天気予報サイトに連動して、気温が**度を超えたらトリガーを渡すなど、天気にまつわるいくつかの数値に連動させて、プログラムを制御できるというスグレモノ・APIです。Weather Unlocked が提携する天気予報会社は一応ワールドワイド で日本の主要都市でもカバーしているようだが、予報精度が???。日本でも同様のサービスを始めたら面白いかも! 天気によって売れる商品が異なるから、授業員の手を煩わさず、店頭のサイネージが切り替われば、販売チャンスのロスを最小限にできると思う!