Git Product home page Git Product logo

cevidium's Introduction

CEVidium - Video Conversion and On-Calculator Playback Project

Warning:

  • This only works on the TI-84+ CE.
  • This will not work on the TI-84+ CSE.
  • This will not work on any TI-84+ (SE)

Motivation

I wanted to see Bad Apple play on my TI-84 CE. Then I wanted to see more cool stuff.

Project Dependencies

  • Python 2.7.x
  • FFmpeg (you may need to Google how to install this; they don't make it easy)
  • ffmpy (Python library used to link to FFmpeg; install via pip/pip2)
  • pillow (Python Imaging Library fork; install via pip/pip2)
  • CE programming toolchain (described in the video player section)

Converting the Video

  1. Copy your .MP4 or other video file to the CEVENCODER folder.
  2. Rename that video to a name that contains 8 or less characters.
  3. Open a command prompt in the CEVENCODER folder.
  4. Type:
    • BUILD2.BAT -h
  5. Read the options, then retype the above line without the '-h' flag and with the flags that you want. For example, if your input video is MYVID.mp4 and you wanted to use the 96-by-X 4 level grayscale encoding with dithering:
    • BUILD2.BAT -i MYVID.mp4 -e M1G4 -d
  6. If everything worked, copy the contents of CEVENCODER/bin to your calculator.

Building and Sending the Video Player

  1. If you have not installed the CE programming toolchain, download and install from: https://github.com/CE-Programming/toolchain/releases
  2. Open a command prompt in the CEVPLAY folder and type the following in order:
    • make gfx
    • make
  3. If everything worked, copy CEVPLAY/bin/CEVIDIUM.8xp to your calculator.

Building and Sending the Decoders

  1. Double-click CEVDECODER/build.bat to run it.
  2. If everything worked, copy the contents of CEVDECODER/bin to your calculator.

Copyrights and Licenses

  • The ZX7 (de)compression code and executable was done by Einar Saukas. See CEVENCODER/tools/ZX7_LICENSE for details.
  • SPASM-ng (e)z80 assembler was done by a bunch of people. See CEVDECODER/tools/SPASM_LICENSE for details.
  • The rest of Project CEVidium was done by me. See LICENSE for details.

Acknowledgements

  • Merged fix for counting logic, by github user ctrefethen
  • Those fixes for the original version of the encoder, by commandblockguy, whose pull requests I mismanaged because I didn't know what I was doing. (sorry!)

Controlling the Video Player

Controls on video selection:

Keys Function
[Mode] Quit CEVidium
[2nd] Start video
arrow keys Show next video

Controls during playback:

Keys Function
[Mode] Retrun to video selection
[2nd] (Un)pause the video
[Left] Rewind video by one segment
[Right] Fast forward video by one segment

Version History

  • 0.00 - Initial commit
  • 0.01 - Updated the documentation to make what's available actually useable
  • 0.02 - Updated docs again, figuring out merge stuff to include others' improvements.
  • 0.03 - Fixed a bug that prevented 4:3 video playback with the M1X2-ZX7 decoder. Also changed UI spacing in the media player for readability and made it easier to make other changes like that in the future.

Known Issues

  • Deprecated the original encoder toolkit without prior notice but still have references for it for debugging purposes. You should be using BUILD2.bat
  • If you choose to modify the build to use the old codecs, encoder 4 (DECODR03) is known to crash.

cevidium's People

Contributors

iambian 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.