YouTube Setup¶
The YouTube Setup screen guides you through connecting your YouTube account to enable direct video uploads.
Screen Preview¶
Setup Process¶
Step 1: Obtain API Credentials¶
Before using this screen, you need to create OAuth credentials in Google Cloud Console.
Google Cloud Console Setup
- Go to Google Cloud Console
- Create a new project or select existing
- Enable the YouTube Data API v3
- Go to Credentials → Create Credentials → OAuth 2.0 Client ID
- Select Desktop Application
- Copy the Client ID and Client Secret
Step 2: Enter Credentials¶
Client ID: Text Input
Paste your OAuth 2.0 Client ID from Google Cloud Console.
Format: 123456789-xxxxxx.apps.googleusercontent.com
Client Secret: Text Input (masked)
Paste your OAuth 2.0 Client Secret.
Security: The secret is masked with dots for privacy.
Step 3: Authenticate¶
Press [ Connect ] to begin OAuth authentication.
Authentication Flow:
- Browser opens Google sign-in page
- Select your YouTube account
- Grant permissions to the application
- Browser redirects to local callback
- Application receives authentication tokens
Step 4: Verification¶
After successful authentication:
Connected State¶
Once connected, you can configure:
Default Privacy¶
Privacy: Selection
Default privacy setting for new uploads.
| Setting | Description |
|---|---|
| Public | Anyone can find and watch |
| Unlisted | Only people with the link can watch |
| Private | Only you can watch |
Use Left / Right to change.
Default Playlist¶
Playlist: Selection
Default playlist for new uploads. Videos are automatically added.
Playlist Management¶
View and manage your YouTube playlists.
Create New Playlist¶
Disconnect¶
[ Disconnect ]
Removes YouTube credentials and disconnects your account.
Requires Re-authentication
After disconnecting, you'll need to go through the full setup process again to reconnect.
Error Handling¶
Invalid Credentials¶
Authentication Timeout¶
If the browser authentication takes too long, a timeout error is displayed. You can retry by pressing [ Try Again ].
Keyboard Shortcuts¶
| Key | Action |
|---|---|
| Tab | Next field |
| Shift+Tab | Previous field |
| Enter | Connect / Select |
| Left / Right | Change selection |
| Esc | Cancel / Back |
Required Permissions¶
The application requests the following YouTube API scopes:
| Scope | Permission |
|---|---|
youtube.upload |
Upload videos |
youtube.readonly |
Read channel info |
youtube |
Manage playlists |
Multiple Accounts¶
The application supports multiple YouTube accounts, allowing you to upload videos to different channels.
How Multiple Accounts Work¶
| Feature | Description |
|---|---|
| Per-Account Credentials | Each account has its own OAuth credentials |
| Separate Tokens | Authentication tokens are stored per account |
| Account Selection | Choose which account to use when uploading |
| Last Used Default | Defaults to the most recently used account |
Managing Accounts in the App¶
From the YouTube Connected screen, press A to open the account management screen.
| Key | Action |
|---|---|
| N | Add new account |
| E | Edit selected account |
| D | Delete selected account |
| C | Connect/authenticate selected account |
| Up / Down | Navigate account list |
| Enter | Back to connected screen |
Adding a new account:
- Press A from the YouTube Connected screen
- Press N to add a new account
- Enter a friendly name for the account (e.g., "Work Channel")
- Enter the Client ID from Google Cloud Console
- Enter the Client Secret
- Press Enter to save
- Select the account and press C to authenticate
Manual Configuration (Alternative)¶
You can also edit config.json directly to add accounts:
{
"youtube": {
"accounts": [
{
"id": "acc_12345678",
"name": "Work Channel",
"client_id": "your-client-id.apps.googleusercontent.com",
"client_secret": "your-client-secret"
},
{
"id": "acc_87654321",
"name": "Personal Channel",
"client_id": "another-client-id.apps.googleusercontent.com",
"client_secret": "another-client-secret"
}
],
"last_used_account_id": "acc_12345678"
}
}
Authenticate each account via Options > YouTube > Accounts > (select account) > C
Legacy Account
If you already have a single account configured (in the legacy format), it will automatically appear as "Default Account" in the account selector.
Using Multiple Accounts¶
When uploading videos, if multiple accounts are configured:
- The Account field appears at the top of the upload form
- Use Left / Right to select the account
- Playlists reload automatically when switching accounts
- The selected account is remembered for next time
Token Storage¶
OAuth tokens are stored securely in:
~/.config/kartoza-screencaster/
├── config.json # Configuration including credentials
├── youtube_token.json # Token for legacy/default account
└── youtube_token_acc_*.json # Tokens for additional accounts
Stored data:
- Access token (short-lived)
- Refresh token (long-lived)
- Token expiry time
Token Refresh
Access tokens are automatically refreshed using the refresh token. You shouldn't need to re-authenticate unless you disconnect or revoke access.
Workflow Position¶
This screen is accessed from:
- Options → Select "Configure YouTube"
After setup, return to:
Related Pages¶
- Options - Application settings
- YouTube Upload - Upload videos after setup
- History - Upload past recordings