Coder Social home page Coder Social logo

cassetteflowjava's Introduction

CassetteFlow Java GUI

A simple Java program meant for the creation of input files and as a technology testbed for the CassetteFlow system, currently under development using the ESP32LyraT audio board.

Introduction

CassetteFlow is a somewhat impractical project to make use of ESP32-LyraT board, old school audio cassette tapes containing encoded data, and MP3 files in an attempt to simulate digital music playback from an analog compact audio cassette. Essentially, the data stored on the cassette will be used to control the playback of MP3 files stored on the Desktop and hopefully the ESP32-LyraT board transparently. So for all practical purposes, it would seem that a typical audio cassette is outputting high quality digital audio. Think of it has having the Playlist on the cassettes. In order to accomplish this it makes use of the excellent Minimodem program to encode the generate input files to wav files for recording onto cassette tapes, as well has decoding data from cassettes.

Please note that this project is not meant to as a way to get cassettes to sound good. With the proper deck and tape type the audio from a cassette that sound pretty good, even matching CD quality with proper tape type and deck.

Main GUI 1 Main GUI 2 Main GUI 3 Main GUI 4 Data Flow 1 Data Flow 2 LyraT

Installation

Here are the key steps to install and run the program on Windows, Mac, or Linux.

  1. Install Oracle JRE 8 or above (Tested with both Java 8 and 17). When using OpenJDK 8 on Raspian the MP3 player did not work correctly.
  2. Install Minimodem for your particular operating system Linux, Mac OS + Brew, or Windows 10 + Cygwin.
  3. Download and unzip the CassetteFlow.zip release and extract it to the folder of your choice.
  4. Open a Terminal window (On Windows, this must be the Cygwin Terminal), change to the folder where CassetteFlow was unpack, then run "java -jar CassetteFlow.jar" no quotes. If everything installed correctly, then the program GUI should display on the screen.

The installation of the Minimodem program can be skipped if you only want to make regular audio tapes from the loaded MP3s or FLAC. Just add the audio files to the "Tape Side" list, then press "Play Side" to automatically play all the files with a 4 second blank section in between each track. Having these blank sections will allow the AMS to be used on tape decks containing this functionality.

Using

Coming soon ...

cassetteflowjava's People

Contributors

ns96 avatar

Watchers

James Cloos avatar  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.