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です。

This site uses Akismet to reduce spam. Learn how your comment data is processed.