This program plays QuickTime movies on GR-Peach

Dependencies:   AsciiFont GR-PEACH_video GraphicsFramework LCD_shield_config R_BSP TLV320_RBSP mbed-rtos mbed

Requirements

  • GR-Peach
  • GR-Peach Audio Camera Shield or I²S compatible audio DAC
  • GR-Peach LCD Shield
  • USB memory stick

How to play movie files

  • Encode movie files

encode movies with ffmpeg

$ ffmpeg -i <input -ar 44100 -acodec pcm_s16le -s 480x270 -vcodec mjpeg -q:v 3 -movflags faststart -threads 4 -vf fps=30 <output>.mov
  • Copy movies to the root directory of USB memory
  • Build and upload this program
  • Run it
Committer:
mtkrtk
Date:
Sun Mar 12 02:01:46 2017 +0000
Revision:
1:3e638b9e91cd
Parent:
0:d0f130e27d32
fixed lcd contrast pin

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mtkrtk 0:d0f130e27d32 1 /* mbed Microcontroller Library
mtkrtk 0:d0f130e27d32 2 * Copyright (c) 2006-2012 ARM Limited
mtkrtk 0:d0f130e27d32 3 *
mtkrtk 0:d0f130e27d32 4 * Permission is hereby granted, free of charge, to any person obtaining a copy
mtkrtk 0:d0f130e27d32 5 * of this software and associated documentation files (the "Software"), to deal
mtkrtk 0:d0f130e27d32 6 * in the Software without restriction, including without limitation the rights
mtkrtk 0:d0f130e27d32 7 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
mtkrtk 0:d0f130e27d32 8 * copies of the Software, and to permit persons to whom the Software is
mtkrtk 0:d0f130e27d32 9 * furnished to do so, subject to the following conditions:
mtkrtk 0:d0f130e27d32 10 *
mtkrtk 0:d0f130e27d32 11 * The above copyright notice and this permission notice shall be included in
mtkrtk 0:d0f130e27d32 12 * all copies or substantial portions of the Software.
mtkrtk 0:d0f130e27d32 13 *
mtkrtk 0:d0f130e27d32 14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
mtkrtk 0:d0f130e27d32 15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
mtkrtk 0:d0f130e27d32 16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
mtkrtk 0:d0f130e27d32 17 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
mtkrtk 0:d0f130e27d32 18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
mtkrtk 0:d0f130e27d32 19 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
mtkrtk 0:d0f130e27d32 20 * SOFTWARE.
mtkrtk 0:d0f130e27d32 21 */
mtkrtk 0:d0f130e27d32 22 #ifndef MBED_FATFILESYSTEM_H
mtkrtk 0:d0f130e27d32 23 #define MBED_FATFILESYSTEM_H
mtkrtk 0:d0f130e27d32 24
mtkrtk 0:d0f130e27d32 25 #include "drivers/FileSystemLike.h"
mtkrtk 0:d0f130e27d32 26 #include "drivers/FileHandle.h"
mtkrtk 0:d0f130e27d32 27 #include "ff.h"
mtkrtk 0:d0f130e27d32 28 #include <stdint.h>
mtkrtk 0:d0f130e27d32 29
mtkrtk 0:d0f130e27d32 30 using namespace mbed;
mtkrtk 0:d0f130e27d32 31
mtkrtk 0:d0f130e27d32 32 /**
mtkrtk 0:d0f130e27d32 33 * FATFileSystem based on ChaN's Fat Filesystem library v0.8
mtkrtk 0:d0f130e27d32 34 */
mtkrtk 0:d0f130e27d32 35 class FATFileSystem : public FileSystemLike {
mtkrtk 0:d0f130e27d32 36 public:
mtkrtk 0:d0f130e27d32 37
mtkrtk 0:d0f130e27d32 38 FATFileSystem(const char* n);
mtkrtk 0:d0f130e27d32 39 virtual ~FATFileSystem();
mtkrtk 0:d0f130e27d32 40
mtkrtk 0:d0f130e27d32 41 static FATFileSystem * _ffs[_VOLUMES]; // FATFileSystem objects, as parallel to FatFs drives array
mtkrtk 0:d0f130e27d32 42 FATFS _fs; // Work area (file system object) for logical drive
mtkrtk 0:d0f130e27d32 43 char _fsid[2];
mtkrtk 0:d0f130e27d32 44
mtkrtk 0:d0f130e27d32 45 /**
mtkrtk 0:d0f130e27d32 46 * Opens a file on the filesystem
mtkrtk 0:d0f130e27d32 47 */
mtkrtk 0:d0f130e27d32 48 virtual FileHandle *open(const char* name, int flags);
mtkrtk 0:d0f130e27d32 49
mtkrtk 0:d0f130e27d32 50 /**
mtkrtk 0:d0f130e27d32 51 * Removes a file path
mtkrtk 0:d0f130e27d32 52 */
mtkrtk 0:d0f130e27d32 53 virtual int remove(const char *filename);
mtkrtk 0:d0f130e27d32 54
mtkrtk 0:d0f130e27d32 55 /**
mtkrtk 0:d0f130e27d32 56 * Renames a file
mtkrtk 0:d0f130e27d32 57 */
mtkrtk 0:d0f130e27d32 58 virtual int rename(const char *oldname, const char *newname);
mtkrtk 0:d0f130e27d32 59
mtkrtk 0:d0f130e27d32 60 /**
mtkrtk 0:d0f130e27d32 61 * Formats a logical drive, FDISK artitioning rule, 512 bytes per cluster
mtkrtk 0:d0f130e27d32 62 */
mtkrtk 0:d0f130e27d32 63 virtual int format();
mtkrtk 0:d0f130e27d32 64
mtkrtk 0:d0f130e27d32 65 /**
mtkrtk 0:d0f130e27d32 66 * Opens a directory on the filesystem
mtkrtk 0:d0f130e27d32 67 */
mtkrtk 0:d0f130e27d32 68 virtual DirHandle *opendir(const char *name);
mtkrtk 0:d0f130e27d32 69
mtkrtk 0:d0f130e27d32 70 /**
mtkrtk 0:d0f130e27d32 71 * Creates a directory path
mtkrtk 0:d0f130e27d32 72 */
mtkrtk 0:d0f130e27d32 73 virtual int mkdir(const char *name, mode_t mode);
mtkrtk 0:d0f130e27d32 74
mtkrtk 0:d0f130e27d32 75 /**
mtkrtk 0:d0f130e27d32 76 * Mounts the filesystem
mtkrtk 0:d0f130e27d32 77 */
mtkrtk 0:d0f130e27d32 78 virtual int mount();
mtkrtk 0:d0f130e27d32 79
mtkrtk 0:d0f130e27d32 80 /**
mtkrtk 0:d0f130e27d32 81 * Unmounts the filesystem
mtkrtk 0:d0f130e27d32 82 */
mtkrtk 0:d0f130e27d32 83 virtual int unmount();
mtkrtk 0:d0f130e27d32 84
mtkrtk 0:d0f130e27d32 85 virtual int disk_initialize() { return 0; }
mtkrtk 0:d0f130e27d32 86 virtual int disk_status() { return 0; }
mtkrtk 0:d0f130e27d32 87 virtual int disk_read(uint8_t *buffer, uint32_t sector, uint32_t count) = 0;
mtkrtk 0:d0f130e27d32 88 virtual int disk_write(const uint8_t *buffer, uint32_t sector, uint32_t count) = 0;
mtkrtk 0:d0f130e27d32 89 virtual int disk_sync() { return 0; }
mtkrtk 0:d0f130e27d32 90 virtual uint32_t disk_sectors() = 0;
mtkrtk 0:d0f130e27d32 91
mtkrtk 0:d0f130e27d32 92 };
mtkrtk 0:d0f130e27d32 93
mtkrtk 0:d0f130e27d32 94 #endif
mtkrtk 0:d0f130e27d32 95