STM32F4-DiscoveryでMotionJPEGの動画プレーヤーをつくりました。
映像だけでなく音声も一緒に再生できます。
タッチペンで動画の停止/再開ができ、シーク機能付きで好きなところから再生することもできます。
QuickTime Pro 7で動画をフォトJPEG形式(MotionJPEG)で書き出し、SDカードにコピーしてマイコンで読み込んでいます。
映像の各JPEGフレームはlibjpegを使ってをデコードし、LCDに描画しています。
ffmpegでエンコードしたものも再インターリーブを施すと再生できました。
データレートはビデオ1800kbps 音声256kbpsくらいまでなら再生できます。
フレームレートは24fps推奨で、30fpsも可能ですがちょっと厳しいです。
音声はサンプルサイズ8bit サンプリングレート32000Hzのモノラルです。

タカチのケースに入れました。

停止中の画面。
再生中に画面をタップすると停止し、アイコンが表示されます。
左上の赤いアイコンを押すと再生が終了し、ファイラ画面に戻ります。
その右の緑のアイコンを押すと再生が再開します。
停止中に画面をドラッグすると動画をシークすることができ、任意の場所から再生を再開することができます。

裏側
STM32F4-Discoveryです。デフォルトのシステムクロック周波数は168MHzですが、オーバークロックして240MHzで動作させています。

両面基板をサンドイッチする形でLCDボードとSTM32F4-Discoveryをヘッダピンで連結しています。
このaitendoの液晶ボードにはSDカードソケットが付いていますが、SPI仕様なので両面基板には高速でアクセスできるデータ幅4bitのSDカードスロットを付けてます。
映像だけでなく音声も一緒に再生できます。
タッチペンで動画の停止/再開ができ、シーク機能付きで好きなところから再生することもできます。
QuickTime Pro 7で動画をフォトJPEG形式(MotionJPEG)で書き出し、SDカードにコピーしてマイコンで読み込んでいます。
映像の各JPEGフレームはlibjpegを使ってをデコードし、LCDに描画しています。
ffmpegでエンコードしたものも再インターリーブを施すと再生できました。
データレートはビデオ1800kbps 音声256kbpsくらいまでなら再生できます。
フレームレートは24fps推奨で、30fpsも可能ですがちょっと厳しいです。
音声はサンプルサイズ8bit サンプリングレート32000Hzのモノラルです。

タカチのケースに入れました。

停止中の画面。
再生中に画面をタップすると停止し、アイコンが表示されます。
左上の赤いアイコンを押すと再生が終了し、ファイラ画面に戻ります。
その右の緑のアイコンを押すと再生が再開します。
停止中に画面をドラッグすると動画をシークすることができ、任意の場所から再生を再開することができます。

裏側
STM32F4-Discoveryです。デフォルトのシステムクロック周波数は168MHzですが、オーバークロックして240MHzで動作させています。

両面基板をサンドイッチする形でLCDボードとSTM32F4-Discoveryをヘッダピンで連結しています。
このaitendoの液晶ボードにはSDカードソケットが付いていますが、SPI仕様なので両面基板には高速でアクセスできるデータ幅4bitのSDカードスロットを付けてます。