TTGO T-CameraをESP-IDF & Eclipseで動かす(その3)

では”camera_index.h”をデコードしていきます。

“camera_index.h”はテキスト文なのでこれをいったんバイナリーファイルにします。

テキスト文からバイナリーファイルへの変換はPythonを使うのがいいかと思います。

ネットで検索・参照して以下のコードを作ってみました。

“camera_index.h”の内、”index_html_gz[]…”といった部分は削除して0x1f,0x8b,…といったデータ部分だけを取り出した”camera_index_data.h”を作りPythonプログラムを走らせてcamera_index.gzを生成します。

このcamera_index.gzを解凍した結果が以下のhtmlファイルになります。

どうせ人間が見るものでないということなのか最初の方のCSSや終わりの方のjavascriptは1行で書かれています。

CSSは適度に改行など入れれば概ねわかりますが、問題はjavascriptの方です。

人間に見せるつもりがないのか関数名がCとかDとかですし、改行、インデントを入れても括弧が省略されているのか括弧の数が合いませんし、let? fetch? 見慣れない単語が並んでいます。

どうやらモダンjavascriptと称されるECMAScript2015以降にいろいろな仕様追加が行われたようです。いずれにしろどこがどこにかかっているかよくわかりません。

いろいろ調べてみると追加仕様に未対応のブラウザーでも対応できるようにコードを変換してくれるBabelというツールがあるのでこれを通すとだいぶ見やすくなりました。

仕様がまだよくわかっていないのでまだまだ理解ができていませんが何となくこんな事をやっているのかな、というのが見えてきました。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です