Skip to content

Download any public vod from Twitch and automatically upload at YouTube 📼

License

Notifications You must be signed in to change notification settings

anKordii/twitchvod-youtube

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vodtwitch + YoutubeUploader

Download any public vod from Twitch and automatically upload at YouTube
from 144p to 1080p

npm version license

Install

npm install twitchvod-youtube
# yarn add twitchvod-youtube

Setup YoutubeUploader

install

  1. Download for your OS from releases.
  2. Extract it to a directory and add the directory to PATH.

get client id

  1. Create an [account] on [Google Cloud Platform].
  2. Create a [new project], and select it.
  3. Enable [YouTube Data API] for the project.
  4. Add [credentials] to your project.
  5. Which API are you using? YouTube Data API v3.
  6. Where will you be calling the API from? Web server.
  7. What data will you be accessing? User data.
  8. Select What credentials do I need?.
  9. Create an OAuth 2.0 client ID.
  10. Name: youtubeuploader (your choice).
  11. Authorized JavaScript origins: http:https://localhost:8080.
  12. Authorized redirect URIs: http:https://localhost:8080/oauth2callback.
  13. Select Create OAuth client ID.
  14. Set up the OAuth 2.0 consent screen.
  15. Email address: (it should be correct).
  16. Product name shown to users: youtubeuploader (your choice).
  17. Select Continue.
  18. Download credentials.
  19. Select Download, then Done.
  20. Copy downloaded file (client_id.json) to a directory.

get client token

  1. Open [console] in the above directory.
  2. Run youtubeuploader -v client_id.json.
  3. OAuth page will be opened in browser.
  4. Choose an account, videos will be uploaded here.
  5. youtubeuploader wants to access your Google Account.
  6. Select Allow, and close browser window.
  7. client_token.json should be created.

reference

youtubeuploader [options]
# --help:    show help
# --version: show version
# -l, --log:       enable log
# -i, --id:        set video id (for update)
# -v, --video:     set input video file/URL
# -t, --thumbnail: set input thumbnail file/URL
# -c, --caption:   set input caption file/URL
# -m, --meta:      set input meta file
# -d, --descriptionpath: set input description file
# -ci, --client_id:      set client id credentials path (client_id.json)
# -ct, --client_token:   set client token credentials path (client_token.json)
# -ot, --title:         set title (video)
# -od, --description:   set description (video)
# -ok, --tags:          set tags/keywords
# -ol, --language:      set language (en)
# -oc, --category:      set category (people and blobd)
# -op, --privacystatus: set privacy status (public)
# -oe, --embeddable:    enable to be embeddable
# -ol, --license:       set license (standard)
# -os, --publicstatsviewable: enable public stats to be viewable
# -opa, --publishat:          set publish time
# -ord, --recordingdate:  set recording date
# -opi, --playlistids:    set playlist ids
# -opt, --playlisttitles: set playlist titles
# -ola, --location_latitude:   set latitude coordinate
# -olo, --location_longitude:  set longitude coordinate
# -old, --locationdescription: set location description
# -uc, --upload_chunk:  set upload chunk size in bytes (8388608)
# -ur, --upload_rate:   set upload rate limit in kbps (no limit)
# -ut, --upload_time:   set upload time limit ex- "10:00-14:00"
# -ap, --auth_port:     set OAuth request port (8080)
# -ah, --auth_headless: enable browserless OAuth process

Usage

It will save to your current directory as {vodID}.mp4.

NodeJS

const twitchvod = require("twitchvod-youtube");

twitchvod({vodID}, {privacystatus: 'public', log: true, title: `Test title`, description: 'Test description'});

Information

twitchvod-youtube is based on VodTwitch❤️

About

Download any public vod from Twitch and automatically upload at YouTube 📼

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • JavaScript 100.0%