Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/billgonzo123/tubesim
A web app that simulated the old days of channel surfing! Designed to be run on a vintage CRT TV!
https://github.com/billgonzo123/tubesim
css html vanilla-javascript youtube-iframe-api
Last synced: about 2 months ago
JSON representation
A web app that simulated the old days of channel surfing! Designed to be run on a vintage CRT TV!
- Host: GitHub
- URL: https://github.com/billgonzo123/tubesim
- Owner: Billgonzo123
- Created: 2022-02-06T00:18:20.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2022-04-04T18:21:50.000Z (over 2 years ago)
- Last Synced: 2024-10-12T12:13:20.979Z (3 months ago)
- Topics: css, html, vanilla-javascript, youtube-iframe-api
- Language: JavaScript
- Homepage: https://chriskurz098.github.io/TubeSim
- Size: 2.52 MB
- Stars: 4
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# TubeSim
## Description:Ever wish you could go back in time to the "good-old-days" of tube TV's, predetermined television programming and unskippable commercials? CRT Flash Back Machine is designed to fill this empty void and hit you with a healthy dose of nostalgia! View hundreds of vintage content from the past century on your favorite old CRT television! Sit back and let the good times roll!
This program is specifically designed for the use of a standard definition tube TV set. It is recommened to run this program on a device such as the Raspberry Pi, but the minimum requirements are:
- Device capable of streaming videos in a web browser.
- Modern web browser
- For the best experience, a device such as the Raspberry Pi 4 should be overclocked and sufficiently cooled to minimize page loading### Note: The UI for this app is designed for a resolution of 720x480. Although the video window can be scaled to fit any screen resolution, the UI will not scale with it.
![](screenshot.png)
## Installation
This code is designed to be run locally without the need for a server. Simply clone or download the repository and open ```index.html``` in your prefered browser to get started.There is a live link provided at the bottom of this README if you do not wish to download locally. For the best expiriance you MUST configure your browser to allow autoPlay. Due to the nature of this program, there is no user input to initiate the video player. The ultimate expiriance is had with a dedicated device that automatically boots into a web browser with this program as its home page running on a CRT TV.
The channel names and associated youtube playlists can be customized by editing the ```channels.js``` file found in the ```src/data``` directory. Youtube limits embeded playlists to a maximum 200 videos. Each channel can contain an array of playlists to circumvent this limitation. The program will randomly select all videos in a single playlist before moving on the next sequential playlist.
## Features
- Plays random videos from slected channel
- Saves epsiodes that the user has watched so they do not repeat
- Can be controlled entirely by number keypad, allowing for use of wireless keypad as a simple remote
- Refreshing the page generates a new episode
- Skip episodes and/or remove it from random selection
- Overscan and horizintal/vertical shift control## Future Features
- Add setting to allow channels to remember thier state after changing channels
- Add system menu UI for system settings## Controls
| Key |Action |
| ------------ | ------------ |
| + PgUp | Channel Up |
| - PgDwn| Channel Down |
| Number 0-9 | Enter a channel |
| * |Vol+|
| / |Vol-|
| . , | Display/Hide channels list |
| F5/Insert | Reload Page for new random show |
|Home| Pseudo power down|
|End| Skip episode forever|### Note: For the most authentic experience, use a [USB IR receiver](https://www.amazon.com/Universal-Remote-Control-Receiver-Raspberry/dp/B01NBRBWS6) and program a real remote with the above key mappings
## System Controls
|While channels list is open| |
|---------------|---------------|
|Input 99| Clears the Memory of the Current Channel|
|Input 98| Clears all Channel Memory|
|CH+/Ch-| Increase/Decrease Overscan|
|Direction Keys| Horizontal/Vertical Shift|
|Delete| Toggle CRT filter|# [Live Link](https://chriskurz098.github.io/TubeSim/)