MakePython ESP32 Color LCD で 動画をWiFi受信 ー ScreenShotReceiver ー

アバター画像 お父ちゃん  2020.5.31 
Home > IoT > MakePython ESP32 Color LCD で 動画をWiFi受信 ー ScreenShotReceiver ー
すき 0
うんこ 0

前回は Makerfabs 様よりいただいたMakePython ESP32 Color LCD
ディスプレイにLovyanGFXライブラリをもちいてアニメーションを表示してみました。

MakePython ESP32 Color LCD で LovyanGFXを堪能

せっかくESP32が搭載されておりますので、今回はWiFiでの動画の受信を試してみました。

 

 

ScreenShotReceiver

ここではらびあんさんのScreenShotReceiverを使用してWiFiでの動画受信を試しました。

凄いですよね。これ。。。

ScreenShotReceiverとは

“PCの画面をJPEGにしてTCPで送信し、M5Stack/ESP32で受信して表示”するアプリケーションです。

以下でWindows用送信アプリと受信Arduinoサンプルコードがダウンロードできます。
 https://github.com/lovyan03/ESP32_ScreenShotReceiver

受信Arduinoサンプルコード (ScreenShotReceiver)

以下のESP32向けのArduinoコードをダウンロードしてMakePython ESP32 Color LCDに書き込みます。
 https://github.com/lovyan03/ESP32_ScreenShotReceiver/tree/master/ScreenShotReceiver

 
以下のライブラリも必要となりますので導入しておきます。

 
MakePython ESP32 Color LCDに搭載されたカラーLCD ST7789 (240 × 240)向けに設定します。
SPI設定にはTFT_eSPIが利用されていますので、TFT_eSPIライブラリのUser_Setup.h ファイルを編集します。

 

起動

書き込みが完了し起動すると”WiFi接続を試行し、接続できない場合はSmartConfigが起動します。”

 

 

SmartConfig

SmartConfigとはESP32をWiFiのアクセスポイントとして、スマホからWiFi設定を実行する機能です。
Android用スマホアプリは以下でインストールできます。

 
SmartConfigアプリでWiFi設定しESP32をWiFi接続します。

 

接続が完了するとディスプレイにIPアドレスが表示されます。

 

参考

Windows用 送信アプリ (ScreenShotSender)

送信アプリ ScreenShotSender.exe を起動します。
設定ウィンドウと送信範囲指定ウィンドウが立ち上がります。

 

 
“画像の幅・高さ・画質の各パラメータとJPEG化する範囲が設定できます
受信側のIPアドレスを入力して接続すると、Windowsの画面の一部がLCDに表示されます。”

 

動作

 

画質クオリティ60%でFSP 28ほどで送信できています。
凄い!これは非常に便利。

あとMakePython ESP32 Color LCD に搭載されているカラーLCD ST7789の画像がきれい!視野角も広いし。

 

速度改善

らびあんさんより速度改善方法を教えていただきました。

   

~\Arduino15\packages\esp32\hardware\esp32\1.0.4\tools\sdk\lib\libdriver.a
内のの5A 62 02 を B4 C4 04にバイナリエディタで変更でSPI 80MHzが可能になるとのことでした。

 
上記修正を施して、User_Setup.h ファイルで
 #define SPI_FREQUENCY 27000000 → #define SPI_FREQUENCY 80000000
に変更して動作させてみました。

FPS 40以上で送受信できるようになりました!!

おわりに

らびあんさんの ScreenShotReceiver を使用させていただき、
MakePython ESP32 Color LCD で 動画をWiFi受信を楽しむことができました。

凄くサクサク受信・表示できて驚きました!
これはまたまたいろいろ応用ができそうで楽しみです 😛 

追記

ESP32_ScreenShotReceiver 更新 (2020/6/30)

ScreenShotReceiver に更新があり、LCD SPI設定がTFT_eSPI依存であったのを
らびやんさんのグラフィックライブラリ LovyanGFXで設定できるようになりました。

詳細は以下の記事を参照ください。

MakePython ESP32 Color LCD で ESP32 ScreenShotReceiver を楽しむ

「MakePython ESP32 Color LCD で 動画をWiFi受信 ー ScreenShotReceiver ー」への1件のフィードバック

  1. I do not speak Japanese, But I would like to thank you for your great job you’ve done here, your project allowed me to create something that I had only in mind for years,
    I promise to let you see it as soon as it’s done, but in the meantime thanks again for this amazing project!!

コメントはこちらから

メールアドレスが公開されることはありません。コメントのみでもOKです。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください