GithubHelp home page GithubHelp logo

jbkim / m5tube Goto Github PK

View Code? Open in Web Editor NEW

This project forked from tobozo/m5tube

0.0 1.0 0.0 36 KB

Video player for M5Stack with Docker conversion support

License: MIT License

Dockerfile 2.06% C++ 41.31% C 31.37% PHP 14.31% Shell 10.95%

m5tube's Introduction

M5Tube

M5Tube is a video player for M5Stack.

image

M5Tube is also a video conversion utility, it can be used locally or in a Docker image.

image

Software Stack prerequisites

Hardware Stack prerequisites

  • M5Stack
  • External DAC (e.g PCM5102) connected to the I2S
  • MicroSD Card

Installation

  • either:
    1. create "/mp3", "/vid" and "/json" folders on the MicroSD Card
    2. use the SD-Apps-Folder folder structure from the M5Stack-SD-Updater
  • either:
    1. install docker and start the provided docker image
    2. install ffmpeg + imagemagick + php locally
  • run the script 'workflow.sh' to get your videos converted
  • when conversion is complete, choose between:
    1. having the container's working dir exposed by a web server
    2. copying the contents of /vid, /mp3 and /json folders from the container's working dir to your MicroSD Card

Conversion settings

The conversion utily provided with this projects makes the process of converting the video to an acceptable format for the M5Stack much less painful. The mp4 format is required for the source file and audio is mandatory for the conversion to complete. After the audio is converted and recompressed to mp3 mono @32Kbps/22Khz, the video is split into frames, and each frame is split into 4 chunks. Only one of these 4 chunks is kept, converted into JPEG with variable compression rate, and stacked into a file. Custom conversion settings are available such as video width and processed chunks per second.

Player functionalities

  • select video
  • play video
  • stop video
  • synchronize/download playlist
  • synchronize/download video/audio
  • load the M5Stack-SD-Menu

All videos are played from the SD and can't be paused (only stopped but PR's accepted).

The sync/download is optional but requires to have a web server handling TLS and exposing the video/audio/json files, some editing in the .ino file, and the gathering of the TLS certificate chain for certificates.h.

Any successful sync operation will overwrite the local files.

Credits

설치

  • 동영상 변환을 위해서 ffmpeg과 imagemagick의 설치가 필요함.(brew로 설치 가능)
  • 변환하고자 하는 파일은 video 폴더안에 .xxxxx.mp4 의 형태로 이름을 변경해서 카피해 놓는다.
  $ ./workflow.sh sample .sample.mp4
  • 이렇게 실행을 하면 frame 폴더에 변환된 파일이 저장이 된다. 이 파일들을 SD에 저장을 해서 M5Stack에 삽입하면 동영상 재생이 가능한다.

m5tube's People

Contributors

jbkim avatar tobozo avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.