You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
89 lines
5.8 KiB
Markdown
89 lines
5.8 KiB
Markdown
# Freedomain-Video-Uploader
|
|
|
|
Video Uploader written for the [Freedomain Philosophy Show](https://freedomain.com/)
|
|
|
|
![Alt text](Assets/Screenshots/Screenshot_Main_Results.png "Screenshot of Main and Results Window")
|
|
|
|
|
|
## Features
|
|
Automated posting to the following media platform using either the Platform's API or Selenium Chrome automation.
|
|
|
|
|**Locals**|**Bitchute**|**Rumble**|**DailyMotion**|**Brighteon**|**Odysee**
|
|
|--|--|--|--|--|--|
|
|
|Selenium|Selenium|Selenium|Selenium|Selenium|LBRY API
|
|
|
|
# Installation
|
|
1. Install .Net Framework 3.5
|
|
- Option 1: Click on Start Menu > Turn Windows Features On or Off > check the checkbox next to “.NET Framework 3.5” > Click OK
|
|
- Option 2: Open up PowerShell as Administrator and run the command: `Enable-WindowsOptionalFeature -Online -FeatureName "NetFx3" -All`
|
|
2. Install [SeleniumBasic](https://github.com/florentbr/SeleniumBasic/releases/tag/v2.0.9.0) to control Chrome
|
|
- Make sure to “Run as Administrator” on the file when installing so that it gets installed to `C:\Program Files\SeleniumBasic`. Otherwise it will get installed to `\AppData\` and the Poster will not be able to connect to Selenium and to Chrome.
|
|
3. [Download latest ChromeDriver](https://chromedriver.chromium.org/downloads) for your Chrome version so Selenium can connect to Chrome for automation
|
|
- Open Chrome and type in `about::version` into the URL bar. The very first line will tell you what Chrome version you have
|
|
- After downloading, extract “chromedriver_win32.zip” and move the extracted chromedriver.exe to: `C:\Program Files\SeleniumBasic\chromedriver.exe`
|
|
- NOTE: The chromedriver will need to be re-downloaded whenever Chrome updates to keep up with API changes
|
|
4. Install the [LBRY Desktop Application Manually](https://lbry.com/) or through chocolatey `choco install -y lbry`
|
|
- Once installed log into your account, and also add your LBRY Channel ID to the settings.ini file
|
|
5. [Download the latest .exe of the Uploader](https://freedomain.dev/yuriy/video-uploader/releases)
|
|
- When run, the Uploader will automatically create the folders and files it requires in the same directory it's run from.
|
|
|
|
# Using Portable Version of Chrome
|
|
Using a portable version of Chrome will give you full control over chrome and chromedriver updates.
|
|
|
|
The Uploader will check for a portable version of Chrome first, before defaulting to the system installation
|
|
|
|
1. To use a portable version of Chrome, download the latest version Chrome version that has a chromedriver from [Chrome-for-Testing](https://googlechromelabs.github.io/chrome-for-testing/latest-versions-per-milestone-with-downloads.json), extract the `chrome-win64.zip` file and move the extracted folder to the `\Lib\` directory:
|
|
The resulting chrome filepath should be `..\Freedomain-Video-Uploader-Folder\Lib\chrome-win64\chrome.exe`
|
|
|
|
2. Download the `win64` chromedriver for the same version and move it to `C:\Program Files\SeleniumBasic\chromedriver.exe`
|
|
|
|
# Settings File
|
|
The Uploader reads & saves its settings to a `settings.ini` file, All customization, including custom profile URLs are stored here.
|
|
On first run, if this file does not exist it will be automatically downloaded from the git repo.
|
|
Before running for the first time you should set the following settings in the file:
|
|
````
|
|
[General]
|
|
RootDirToStartIn= Parent Folder with your Video Projects
|
|
ShowTooltipProgress=1
|
|
DiscordWebhookBotURL=
|
|
DiscordVideosWebhookURL=
|
|
DiscordErrorLoggingWebhookBotURL=
|
|
DiscordUsernameID=
|
|
LBRYNewVideoStakeAmount=1.0
|
|
LBRYNetFilepath=C:\Program Files\LBRY\resources\static\daemon\lbrynet.exe
|
|
LBRYChannelID=
|
|
DailyMotionPostPageURL=
|
|
LocalsPostPageURL=
|
|
````
|
|
- [How to create Discord webhook](https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks)
|
|
- [How to get Telegram bot token + chat-id](https://tutorial.cytron.io/2021/09/01/how-to-create-a-telegram-bot-get-the-api-key-and-chat-id/)
|
|
- All other settings will automatically get written to the `settings.ini` file as you check/uncheck the setting boxes while running the Poster.
|
|
|
|
# Project Files
|
|
When you start the Uploader, it will ask you to select a project folder that contains the files that will be used for the upload. <br>
|
|
The program will then loop through that project folder and look for the following files and automatically select them.<br>
|
|
You can select a different file in the main window if the auto selection does not select the correct file.<br>
|
|
`title.txt` which should contain the Title of your video/podcast<br>
|
|
`body.txt` which should contain the body text of your video/podcast<br>
|
|
`keywords.txt` which contains the tags/keywords that will be used in the video uploads<br>
|
|
`keywords_podcast.txt` (Optional) which contains the tags/keywords that will be used in the podcast upload. `keywords.txt` will be used for podcast tags if this does not exist.<br>
|
|
`*.mp4` an mp4 file which is the video file that you are going to upload<br>
|
|
`*.jpg` or `*.png` file which will be the thumbnail for your video/podcast<br>
|
|
|
|
|
|
|
|
|
|
# Uncaught Errors
|
|
I have done my best to catch any possible errors that might pop up and write functionality to handle them. But If an error happens that i haven't written resolves for, it will pop up a message box that looks like this. Please send me a screenshot so I can write a patch for the bug.
|
|
|
|
![Alt text](Assets/Screenshots/Error_Message2.png "Error Message")
|
|
|
|
# Compiling to .exe from Source
|
|
1. [Install Autohotkey v1](https://www.autohotkey.com/download/)
|
|
2. `git clone` the project and then either run the `Compile Uploader to EXE.ahk` autohotkey script to automatically compile, or start up the AHK compiler that comes installed with Autohotkey and select the `Freedomain Video Uploader.ahk` and `\Assets\FreedomainVideo.ico` icon.
|
|
|
|
|
|
# Extra Tools
|
|
## LBRY-Process-Killer
|
|
|
|
Autohotkey script that continuously reads the lbrynet.log for when your videos are fully uploaded/seeded to lbry and then kills the LBRY process. |