Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update README.md #8

Merged
merged 3 commits into from
Jul 24, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
82 changes: 36 additions & 46 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,63 +1,53 @@
# TizenTube
A NodeJS script to remove YouTube ads and add support for Sponsorblock for your Tizen TV (2017 and forward).

# How does it work?
It first connects to the TV by using SDB (Smart Development Bridge) and starts an app that launches YouTube in debugging mode. After it has launched, the script connects to the debugger and sends JS code to the debugger that removes video ads.
TizenTube is a NodeJS script that enhances your Tizen TV (2017 and newer) viewing experience by removing YouTube ads and adding support for Sponsorblock.

# How can I install this?
You'll need:
* A PC that can run Tizen Studio
* A PC/Single Board Computer that could run this 24/7 (for ease of use)/The Android App
* Time
## How it works

You have to first enable "Developer Mode". This is very easy to do and you can follow [this](https://developer.samsung.com/smarttv/develop/getting-started/using-sdk/tv-device.html).
TizenTube operates by initiating a debugger session upon launching the app on your Tizen TV. This is achieved through the utilization of the `debug <app.id>` command, which establishes a connection between the TV and the debugger. Once connected, the TV is able to transmit JavaScript code that effectively removes video ads.

Second, install Tizen Studio. You can follow the guide [here](https://developer.samsung.com/smarttv/develop/getting-started/setting-up-sdk/installing-tv-sdk.html). To know what version of the SDK to install, check your TVs release year and [see which SDK version is recommended](https://developer.samsung.com/smarttv/develop/specifications/tv-model-groups.html).
# TizenTube Installation Guide

After installing, connect to your TV using this [guide](https://developer.samsung.com/smarttv/develop/getting-started/using-sdk/tv-device.html#:~:text=Connect%20the%20TV%20to%20the%20SDK%3A).
## Prerequisites

After connecting to your TV, create a Samsung certificate using this [guide](https://developer.samsung.com/smarttv/develop/getting-started/setting-up-sdk/creating-certificates.html).
- A PC capable of running Tizen Studio, which will be used to install TizenStudio onto your TV through SDB.
- A PC or Single Board Computer capable of running 24/7 (for ease of use) or the Android App.

After all that, clone/download the repository and open the `apps/` folder in Tizen Studio by restarting Tizen Studio and changing the workspace.
## Installation Steps

Now, all you have to do is select one of the app at a time and press the run button.
1. **Enable Developer Mode** on your TV by following [this link](https://developer.samsung.com/smarttv/develop/getting-started/using-sdk/tv-device.html).
2. **Install Tizen Studio** by following [this guide](https://developer.samsung.com/smarttv/develop/getting-started/setting-up-sdk/installing-tv-sdk.html). Make sure to install the Tizen SDK version 6.x.x, which is the project’s SDK version..
3. **Connect to your TV** using [this guide](https://developer.samsung.com/smarttv/develop/getting-started/using-sdk/tv-device.html#:~:text=Connect%20the%20TV%20to%20the%20SDK%3A).
4. **Create a Samsung certificate** using [this guide](https://developer.samsung.com/smarttv/develop/getting-started/setting-up-sdk/creating-certificates.html).
5. **Clone/download the repository** and open the `apps` folder of the repository in Tizen Studio by restarting Tizen Studio and changing the workspace.
6. In the `index.html` file of the Launcher app, change the `IP` variable to the IP of where your debugger will be installed. This could also be the IP of your android device if you plan on using that instead.
7. Ensure that your TV is selected at the top of Tizen Studio (the dropdown menu).
8. Right-click the `TizenTube` app and run it as a Tizen web application. Once that is done, do the same for the `Launcher` app.

Note that you have to change the IP in the launcher. Open up Launcher/index.html in Tizen Studio and change the IP variable.
After completing these steps, installing apps is complete! You should be able to see the apps on your TV. Now comes the easier part, installing the server or the debugger. You have two options to do this:

And after all that, installing apps is complete! Now comes the easier part, installing the server.
### Option 1: Install on PC/SBC

If you want to install it on your PC/SBC, follow these steps:
1. Download [NodeJS](https://nodejs.org/en) if you haven't already. Check by running the command `npm -v`.
2. Clone the repository.
3. Install modules by running `npm i` in the main folder of the repository.
4. Install mods modules by running `cd mods` and then running `npm i`.
5. Build mods by running `npm run build`.
6. Navigate back to the main folder of the repository by running `cd ..`.
7. Open `config.json` in your favorite text editor. Change `tvIP` to the IP of your TV. Make sure to leave the `appID` as it is (`Ad6NutHP8l.TizenTube`). Change `isTizen3` to true if your TV runs on Tizen 3.
8. Ensure that SDB is not running by going to Tizen's device manager and disconnecting your TV.
9. Start the node debugger/server using `node .`.

* Download [NodeJS](https://nodejs.org) if you haven't
Once the server is up and running, you can access the Launcher app from your TV’s app menu. Please note that the TizenTube app will still display ads if it is run on its own. To remove ads, make sure to launch TizenTube through the Launcher app, which is connected to the server.

* Clone the repository
### Option 2: Use The Android App

* Install modules by running `npm i`

* Install mods modules by running `cd mods/ && npm i`

* Build mods by running `npm run build`

* Edit the config.json file to your needs

* Run `cd .. && node .`

And now you should have a server running!

If you want to go easy route and use the Android app:

* First, change the Developer Mode's Host IP to your device's IP.

* Download the latest APK compatible with your device's architecute from [here](https://github.com/reisxd/TizenTube/releases/latest) (if unsure, download armeabi-v7a)

* Install it

* After opening the app, change the configuration to your needs

* Press 'Run Server'

* Press 'Launch' whenever you want to launch TizenTube
1. First, change the Developer Mode's Host IP to your device's IP.
2. Download the latest APK compatible with your device's architecture from [here](https://github.com/reisxd/TizenTube/releases/tag/v1.1.2) (if unsure, download armeabi-v7a).
3. Install it.
4. After opening the app, change the configuration to suit your needs. Ensure that you set the `appID` to `Ad6NutHP8l.TizenTube` if it isn't already set. Change the IP to match that of your TV.
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

appID is already set to Ad6NutHP8l.TizenTube once you install TizenTube Server on Android.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I mentioned this because it is difficult for the average user to get this userid again if they accidentally deleted it. I initially thought it was just an arbitrary name but later discovered that it is not. Maybe it would be a good idea to make it uneditable on the Android app?

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Once you clear the data of the app, it should go back to default configuration.

Copy link
Contributor Author

@ameenalasady ameenalasady Jul 24, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're correct. Left it in just to avoid confusion (like what happened to me).

5. Press 'Run Server'.
6. Press 'Launch' whenever you want to launch TizenTube.
7. Please note that if the app crashes, you may have made an error, such as setting an incorrect IP or failing to change the Developer Mode's Host IP.

And now you can launch TizenTube from your Android device!

Please note that if the app crashes, you _probably_ did something wrong. Like setting the wrong IP or not changing the Developer Mode's Host IP.