# Welcome
Gumlet is an all-in-one platform for storing, transcoding, and streaming media files. Here, you get all the tools to get started in minutes!
## Videos
## Images
---
updatedAt: 2026-03-05T14:45:20.000Z
---
# What is Gumlet?
Publishing a video online on your own, without using popular video hosting platforms like YouTube is hard. It involves transcoding your original video files in various resolutions, figuring out correct bitrates, selecting the optimal formats, and many other settings. Not to mention the computing cost, engineering efforts, and time spent to build and maintain a tech pipeline.
To avoid all of the above, Gumlet has built a video product that offers
⚡️**Automatic Optimisation**: Get the highest video compression output while keeping the video quality the same. You can access optimized videos from anywhere in the world.
🤖 **Auto Format**: The output video stream will have multiple formats available. (HLS or MPEG-DASH). This lets the client device choose the most efficient stream.
🌼 **Single, Simple, Solution**: We manage and optimize the entire pipeline of transcoding > storage > streaming > analytics for you.
📋 **Lead Forms and CTA**: You can embed lead forms and CTA on your videos to power your marketing.
🌎 **CDN delivery**: As always, the videos are delivered via a world-class low-latency CDN for the best viewing experience.
🛠 **Powerful API:** Many operations like overlay, crop, clip, etc. are available. [Read documentation](/reference/tag/video-assets/post/video/assets).
🔐 **DRM Support:** Protect your content with DRM to prevent unauthorized access and downloads.
# Quick Start Guide
Upload your first video in less than 1 minute
When you first log in to the Gumlet dashboard, a sample video is ready for you to get started.

Do more with new [video dashboard](https://dash.gumlet.com/video/dashboard):
* Upload & Import Videos
* Customize Player Experience
* Create a branded video channel
* Create playlists
Below are the steps to upload videos and start streaming:
### 1. Upload Video
You can upload videos to a workspace by clicking on the `Browse Video` button. You choose files from your device. You can also import from other storage providers such as OneDrive, Dropbox, Google Drive, or a URL.

You can also drag and drop videos directly inside this box for quick upload
### 2. Start Streaming
Gumlet enables high-speed processing of your videos, so they are stream-ready in under 5 seconds.
You can click on the video, go to the video details page, and click the **Embed & Share** button to access different options for starting the stream.

_Tip_: You can edit player settings and customize player to match your brand.
---
updatedAt: 2026-03-05T14:47:57.000Z
---
# Publish First Video
Embed & share or use the playback URLs
On the video details page, the **Embed & Share** button will allow you to publish your videos.

## Embed Video
To play videos on your website, blog, or any other CMS, Gumlet's embed code is an easy way to get started. It has a player, video meta configuration, SEO snippet, and security features. You can configure your player settings under [Player Customizations](/video/player-customization).

**Tip**: For advanced embed parameters, check it out [here](/video/embed-stream).
## Embed in Email
With Gumlet, you can Embed Videos in your emails and take the reader to a specific page with the video. You can customize the embeddable thumbnail size and the destination URL. Select an email client for native support and **Copy Embed Code** to engage your audience.

## URLs
There are multiple options to share your videos. You can share a video page, thumbnail, playback URL, and MP4 URL.

### Share URL
A Gumlet-hosted video page that can be shared with your audience across emails, social media, and other channels without designing a page. It supports all the configurations that you configured for your workspace.
### Thumbnail URL
The thumbnail can be used as a poster to promote a movie, series, course, or session. The thumbnail URL supports all [image operations](/image/image-transform-api/image-transform-size) listed here.
### Playback URL
We provide you with two types of playback URLs:
* M3U8
* DASH (MPEG-DASH)
### MP4 URL
The MP4 is a widely used format across different platforms, CMS, and apps. You can directly use the MP4 URL within the HTML's video tag. If an MP4 file is generated, you can let your users download the video, or you can hide/show the download button.
## WordPress Video Plugin
You can also use Gumlet's WordPress plugin for videos. Here is the guide to install the plugin and use it - [Gumlet WordPress Video Plugin](/video/embed-stream/gumlet-wordpress-video-plugin)
---
updatedAt: 2026-10-28T00:00:00.000Z
---
# Video FAQs
Frequently asked questions for all your video needs
## 🎬 Video Management
### How do I download my original videos?
You can download the original video from the video settings page. Go to **Video CMS** and click on the video you want to download. You will see a menu on the right-side panel named **Download**. Click on the `Download Video` button to download the original.
### How to move videos from Vimeo to Gumlet without downloading and uploading manually?
Use the Vimeo import integration: connect your account, select files/folders, then confirm [Processing Settings](/video/manage-videos/processing-settings-section) before import. Full steps: [Import from Vimeo](/video/upload-videos/import-from-vimeo).
### Can I import videos directly from YouTube using a URL?
Currently, you cannot import videos directly from YouTube via URL. This feature is on our roadmap and you can track its status [here](https://feedback.gumlet.com/feature-requests/p/import-from-youtube). In the meantime, you can upload videos using supported methods: your device, Google Drive, Dropbox, Amazon S3, Vimeo, or Wistia. See [Upload Videos](/video/upload-videos) for more information.
### How can I download multiple videos with one click?
To download multiple videos in one click, you need to use the API. Please use list asset API and get mp4 URLs and mp4 output playback URLs like: `https://video.gumlet.io/{workspace_id}/{asset_id}/main.mp4`
Alternatively, you can use our [ChatGPT plugin](https://chatgpt.com/plugins/plugin_asdk_app_6a956527ac488191b306c03418ae081f) to do it using chat.
### What is a storage minute?
Storage minutes is the number of input video minutes that Gumlet stores. For example, if you bring a 60-minute video to Gumlet, you will use 60 minutes of storage in your account.
### Is there a limit on the number of video files that can be uploaded via drag-and-drop?
There is no limit to the number of files that can be uploaded via drag-and-drop. However, we recommend uploading no more than 100 files at a time; it's always safer to upload fewer.
### How can I move a video from one workspace to another workspace in the dashboard?
You cannot transfer videos between workspaces. The workspace entity is designed to be separate and should not move data across.
### I deleted some videos, but the video storage is not updating. What to do?
Sometimes it takes time for the storage to update after deleting the videos. If it still doesn't reflect after 30 minutes, our team can perform a manual check.
### Does Gumlet prevent or warn about uploading duplicate files?
Gumlet does not warn you or prevent you from uploading the same file again. Each upload is treated as a new asset with its own asset ID, even if the file content is identical, which can result in duplicate videos in your library.
### Does increasing the 360-minute video limit cost more?
No, the pricing remains the same when you upgrade the 360-minute video limit.
### How do I rotate a video 90 degrees?
Currently, our platform does not support 90-degree video rotation. You can submit a feature request [here](https://feedback.gumlet.com/).
### Does the platform support anamorphic, vertical, square, and wide videos without restrictions?
Yes. You can upload vertical, square, wide, and anamorphic videos without any issues. When you copy the embed code, it automatically accounts for the video's aspect ratio so it displays correctly.
### Where can I locate the comments option for video reviews?
You can find the comments in the Video Details section of the video review.
### Can channel members comment on videos, or do I have to invite people?
The channel members cannot comment on the videos. The comments in Gumlet are for internal teams with use cases like pre-publish review. If you want someone to add a comment, you need to invite people in your account settings.
### Why does Gumlet show processed sizes larger than my original video upload?
When you upload a video, Gumlet transcodes it into multiple resolutions and formats (for example, HLS, DASH, MP4) to support adaptive playback. The asset size shown in the dashboard is the total of all these output variants, which can be 2× (or more) than the original file size. During playback, viewers only download the specific resolution they need, and only that data counts toward your bandwidth usage.
## 📊 Analytics & Privacy
### Does Gumlet store my data?
Gumlet stores video views and other analytics data to provide you with a detailed analysis of your videos' performance. At Gumlet, we believe privacy is most important, so you can disable analytics data collection in the workspace settings [here](https://dash.gumlet.com/video/workspaces).
### How does Gumlet's video bandwidth billing work, and how can I monitor my usage?
All plans include a monthly bandwidth quota in GB; however, you can use more bandwidth and pay for the additional usage. You can check the pricing plans [here](https://gumlet.com/pricing).
Bandwidth is consumed per view, based on the resolution actually streamed — not the original file size (see [why processed sizes look larger than the original upload](#why-does-gumlet-show-processed-sizes-larger-than-my-original-video-upload)). For example, a viewer watching a 1 GB 4K video at full quality consumes about 1 GB; if playback quality changes mid-stream, usage is the sum of the chunks actually downloaded at each resolution. As a rough guide, a 2,000 GB monthly bandwidth allowance typically covers approximately 1,800–2,200 full views per month, though this varies with your videos' average size and resolution mix.
To monitor usage:
- Track bandwidth, storage, and transcoding minutes in [Video Usage Analytics](https://dash.gumlet.com/video/analytics).
- Review your current usage and estimated invoice on the [Billing page](https://dash.gumlet.com/organization/billing) — see [Overage Billing](/billing/overage-billing) for how the billing cycle and overage charges work.
- Set up proactive [Alerts](/video/usage-monitoring/alerts) on bandwidth, transcoding, or storage usage so you're notified before you approach your plan limit.
### How to use video analytics with my video player?
We have video SDKs available for different video players in our documentation; feel free to refer to those here [Insights SDKs](/video-analytics/analytics-sdks). Gumlet's embed player natively supports video analytics; please consider using it if it's feasible.
## 💬 Subtitles & Captions
### How to add subtitles to videos?
There are two ways to add subtitles to videos in Gumlet:
1. Enable AI subtitles in [processing settings](https://dash.gumlet.com/video/processing) (uses [AI credits](/billing/ai-features) on eligible accounts).
2. Upload SRT files from the video settings page.
Details: [Video Settings → Subtitles](/video/manage-videos/video-settings#subtitles).
### Why are subtitles not being detected in my videos?
If your video is musical or a song, it may not detect the correct language. If that's not the case, let us know the asset ID, and our tech team will review it.
### How to prevent AI-generated subtitles for my videos?
Turn off **AI generated subtitles** in [processing settings](/video/manage-videos/processing-settings-section#ai-generated-subtitles) and save. New uploads (and [reprocessed](/video/manage-videos/video-settings#reprocess-video) videos) will skip AI subtitles.
### Can I change the color of the subtitles?
Yes you can fully customise look and feel of the subtitles. Visit [Player Settings](https://dash.gumlet.com/video/player) section of the workspace and you will see *Captions Settings*. You can adjust the look of subtitles there.
### How can I show a specific subtitle when sharing a URL?
There is no parameter to force a specific subtitle on a share URL. The default subtitle follows the original audio language.
## 🌐 Embedding & Integration
### Can I embed videos on third-party Learning Management Systems (LMS) and platforms?
Yes, you can embed videos on any platform that supports embedding. Gumlet provides iframe (HTML) code, HLS (M3U8) URL, MP4 URL, and DASH (MPD) URL. Gumlet also supports [Embed.ly](https://embed.ly/), [oEmbed](https://oembed.com/), and [Iframely](https://iframely.com/). Gumlet can be used with Circle.so, WordPress, Medium, Thinkific, Moodle, Salesforce, Webflow, and custom-designed frameworks & tools.
### How do I integrate Gumlet and GetResponse?
To integrate Gumlet with GetResponse, ensure you are using the correct embed URL format. Use the Gumlet embed URL `play.gumlet.io/embed/` instead of the share URL that begins with "Gumlet.tv." This should resolve the issue with embedding videos on your GetResponse page.
### Where is the workspace_id, as I am going to implement the Gumlet?
You can get your Workspace ID directly on [dashboard](https://dash.gumlet.com/video/workspaces). Click `copy workspace id` button beside the workspace name and it should be copied to clipboard.
### Is there an API call to retrieve a list of all video titles and their corresponding HLS links in video title order?
Use: `curl --request GET \ --url 'https://api.gumlet.com/v1/video/assets/list/workspace_id?sortBy=title&orderBy=asc' \ --header 'accept: application/json'` Or see [List Assets API](https://docs.gumlet.com/reference/tag/video-assets/get/video/workspaces/workspace_id/list)
Alternatively, you can use our [ChatGPT plugin](https://chatgpt.com/plugins/plugin_asdk_app_6a956527ac488191b306c03418ae081f) and ask it to give you a list as a CSV.
### Why does my video play in lower resolution while the original video is HD / 4k?
Gumlet player adjusts playback quality based on the container size and the device's internet speed. If the container playing the video is only 1080px, it won't display 4K video. Similarly, if the internet speed does not support high-quality streaming, our adaptive bitrate algorithm will automatically switch to a lower-resolution video.
## 🎨 Player Customization
### How can I change player settings?
You can customize the player and settings as per your needs. Gumlet supports custom colors, logos, player settings (such as disabling or enabling controls), and more. It may take upto 10 minutes for the updated settings to take effect.
### How can I add a dynamic watermark, such as a user's email or ID?
1. Enable dynamic watermark in [Player Settings > Advanced Settings](https://dash.gumlet.com/video/player).
2. Pass `watermark_text` in the embed URL, for example: `https://play.gumlet.io/embed/{id}?watermark_text=EMAIL`
Apple does not allow custom overlays such as watermarks during native iOS playback. If DRM is enabled on iOS, screen recording is already blocked, so a dynamic watermark is not required there. If the watermark is missing in an iOS app, log the embed URL and confirm `watermark_text` is present.
### Can you embed a Gumlet video on your website without displaying the play button?
Yes, it's possible to embed a Gumlet video without displaying the play button. You can disable player controls in the player settings or pass `background=true` in the embed code. For more details, you can refer to the [documentation](/video/embed-stream).
### How can I remove the Gumlet logo from the player?
Go to Player Settings and disable `Powered by Gumlet`. This is available on all paid Plans.
### How can I change the play icon color of a particular video in Gumlet?
Use `player_color` param in embed URL: `https://play.gumlet.io/embed/?player_color=%F0F0F0`
### How can I increase the control size in the Gumlet player?
Currently, increasing the control size in the Gumlet player is not supported. You can submit a feature request [here](https://feedback.gumlet.com/) for our product team to consider.
### How can I ensure my videos expand to full screen in WordPress?
Use the [WordPress Video Plugin](https://wordpress.org/plugins/gumlet-video/) for best compatibility.
### How can I control the player using JavaScript? E.g., muting, changing playback speed, etc.
Use our [Player.js](https://github.com/gumlet/player.js) library to control the embedded video. **Note:** This is not supported on standalone HTML files.
### How can I enable descriptions in embedded videos?
Descriptions are not currently available in the embedded video player. If you’d like this feature, please submit a feature request.
## 🔐 DRM & Video Protection
### Do I need my own Widevine and FairPlay credentials to use DRM?
No. Gumlet automatically adds Widevine and FairPlay credentials to your account, so you can upload videos and enable DRM in processing settings immediately—you do not need to apply on the Apple Developer Portal first.
_Note: Enterprise accounts need to bring their own FairPlay credentials._
### How can I prevent screenshots and screen recording when DRM is enabled?
Ensure you have enabled DRM in your video profile settings: [Tutorial](https://gumlet.tv/watch/65dedb6f20c39971cd19c1b8/)
### How can I restrict playback so videos only play on my website?
Enable Access Allowed Referrers in [Video Protection Settings](https://dash.gumlet.com/video/security) and add the domains (or app bundle IDs) that may embed your videos. Gumlet checks the HTTP Referer header and allows playback only from those hosts. After you save the whitelist, test playback from each domain and monitor analytics to confirm videos are not playing elsewhere.
See [Video Protection Settings](/video/manage-videos/video-protection-settings-section) for wildcards, mobile apps, and related options.
### Do you encrypt videos to prevent them from being downloaded?
Yes. Combine these based on how strictly you need to protect playback:
1. **Signed URLs and token authentication** — only authorized viewers can play the video.
2. **HLS encryption** — in Video Processing Settings, process as HLS so playback uses encrypted streams.
MP4 output URLs can still exist for download or API use (for example `main.mp4` from the List Assets API). For videos you want to protect, share the embed or HLS/DASH playback URL rather than the MP4 link.
### My video is not castable. How do we fix the problem?
- If DRM, dynamic watermarking, or domain whitelisting is enabled, casting won't be available.
### Thumbnail selection is not working on my DRM video. Is it related to DRM protection?
Yes, DRM blocks frame extraction for thumbnails. This feature only with non-DRM videos.
### Can I use DRM with MP4 videos?
We don't support DRM with MP4 videos. DRM can only be used with HLS / DASH video streams.
### Does Gumlet have a timer function that allows videos to be played for a limited period?
Yes, you can use a time-expiry URL to generate a unique URL that expires after a set time. The video won't be playable after the expiry time.
## 💰 Monetization & Ads
### How do we implement AVOD in the Gumlet video?
Use a VAST Tag URL. See: [VAST Tag Documentation](/video/player-customization#vast-tag)
### Does your video player support the pay-per-view (PPV) model or have an integration with Stripe?
Not yet. Add your vote at [Gumlet Feedback](https://feedback.gumlet.com/)
## 🚀 Features & Roadmap
### Is there a feature similar to YouTube that suggests related videos to play at the end of a video?
No current support. Upvote at [Related Videos Feedback](https://feedback.gumlet.com/feature-requests/p/related-videos)
## 👥 Users & Access
### If I add a user with the same email to different channels, does that count as one?
Yes. A single email across multiple channels is counted as one user.
## 🛠️ Troubleshooting
### Why does the Gumlet dashboard show a "You're Offline" banner when my internet connection is working, and how can I fix it?
This message can appear if the dashboard's connection check is blocked or cached. To resolve it: hard refresh the dashboard (Ctrl/Cmd + Shift + R), clear your browser cache and cookies, open the dashboard in an incognito/private window, disable any VPN, proxy, or browser extensions, or switch to a different network if possible. If the banner still appears, capture a screenshot or short screen recording and share it along with your browser name/version and operating system.
### I updated my video settings, title, description, subtitles, or chapters, but they are not being reflected in the actual video. Why?
Gumlet caches settings. Please wait 10–15 minutes before the changes take effect.
### Why is my video in `upload-pending` state?
Videos that remain in `upload-pending` state even after several minutes, and also after reloading the dashboard, mean the video upload has failed. We recommend you upload that video again.
### Why is my uploaded video in `pre-queued` or `queued` state?
Gumlet processes videos in a pipeline, in the order of upload. Videos in `pre-queued` or `queued` state mean the videos are waiting to be picked up by our system. Most of the time, this resolves within a few minutes, and your videos will be ready soon. If you still encounter issues, please provide us with the video ID, and we will be happy to review it.
### I received an error stating that the video duration exceeds the 240-minute duration limit. What can I do?
On all of our self-serve plans, we have a soft limit of 240 minutes on the maximum video duration we can process. Please get in touch with our support team to request an increase in the limit, along with a valid reason, and we will respond at the earliest opportunity.
_If you think you are seeing this by mistake, reply to this message, and our team will help you._
## 📞 Support
### How to Contact Customer Support via Email?
Email
### Does Gumlet provide a built-in QR code generator?
No. However, you can use any third-party QR code tool to generate a QR code using your Gumlet video link or embed URL.
## 📺 Playback & Streaming
### How can I address playback issues and share my live stream for viewing in a browser?
Use HLS.js or an iframe embed. m3u8 links don't work natively in some browsers.
### How can I ensure my videos always use a specific resolution when sharing the URL?
Use query param: `lock_highest_res=true` for a high-resolution default.
### How to start a live stream?
Here is a video [Demo](https://gumlet.tv/watch/650981c2e61360f23fe1aeda/) to start a live stream; refer to [docs](/live-stream/get-started/create-a-live-stream) for a guide.
### Are there any limits to live streaming on Gumlet?
Gumlet applies a 12-hour limit per live stream. The maximum content duration per video (including saved live streams) is also 12 hours.
### What protection options are available for live streams?
None. Live streams do not support the protection options available for on-demand videos, including:
* Geo-blocking
* Domain restriction
* Password protection
* DRM
* Signed URLs
* Dynamic watermarks
* Time-based expiry URLs
These options apply only to on-demand videos. See [Video Protection](/video/manage-videos/video-protection-settings-section).
### Does the Creator plan support HLS and MP4 URLs?
No. Creator plans can only use the embed code and the Gumlet player. HLS and MP4 URLs are not available.
### Is there an affordable alternative to Vimeo Live for pre-scheduling and embedding live streams?
Yes. You can use Gumlet’s one-way live streaming service combined with an RTMP encoder such as OBS. Simply schedule your stream in OBS, point it to the Gumlet RTMP endpoint, and embed the Gumlet player on your site. To receive pricing and any additional setup instructions, share your expected use case: total live streams per month, average stream duration, and monthly streaming bandwidth consumption.
## 🗂️ Workspaces & Tags
### How can I rename a workspace?
Go to [Workspaces Dashboard](https://dash.gumlet.com/video/workspaces) and select the workspace to edit.
### How can I add or edit tags? Can I delete a tag?
Visit [Video Library](https://dash.gumlet.com/video/manage) and click the video. Or select in bulk and click `Edit Tags`. Adding and editing tags is supported this way; deleting/removing a tag entirely is not currently supported.
## 📡 Channels & Playlists
### How do I view and manage my channel subscriptions?
You can view and manage your channel by visiting the Video Library > Channel settings.
## ✂️ Video Editing
### Can I mute audio or adjust the volume at a specific point in a video clip?
Yes. You can split the video into multiple clips based on where you want the changes to happen. Once split, select the specific clip in the left panel to adjust its volume or remove the audio entirely without removing the video track.
# Upload from Device
Upload your original videos to Gumlet storage
Uploading your original files to Gumlet is the easiest way to get started using Gumlet. When you do this, we store the original input file and all output files.
## Add files
You can click upload and then select upload from device in [Video Library](https://dash.gumlet.com/video/manage).
Drag and drop files in the upload box, or choose **My Device**. Upload should start automatically, and you can monitor the progress.

Please note, there is no limit on file size, but files which are not video/audio will result in a processing error and will be deleted.
## Original file
The files you upload are stored in their original form without any modifications. You always have the option to download the original file if needed. For streaming, we use the optimized and processed version, which helps reduce streaming bandwidth.
If you ever delete a video from Gumlet, its original input file and all output files will be removed after 30 days. If you accidentally delete a video, you have up to 30 days to request its restoration.
# Record from Dashboard
Record your content from Gumlet Dashboard
Recording your videos on Gumlet is the easiest way to create content. We record your screen, camera, and speech to produce a video that you can embed.
## Record videos
### Initiate Recording
Click Upload Video on the dashboard, then click Record Screen.

_Note: The maximum recording limit is two hours, i.e. 120 minutes._
### Grant mic and camera access

_Note: You can choose which camera and microphone to use if you have multiple_
### Position the recording widget

### Start Recording
Please give the prompt screen-sharing access. You can choose a tab, a window, or full screen.

### Stop and review
When you are done, you can stop the recording from the widget. Review the recording before uploading to Gumlet.

### Upload Video
Upload the video or Re-record if you didn't like the current version.
The Gumlet recorder doesn't work on mobile devices. You can only record in a desktop browser.
---
updatedAt: 2026-03-05T14:58:02.000Z
---
# Cloud Storage
Add files to Gumlet from a cloud storage of your choice
We support multiple different cloud services from which we can fetch your original video to process and stream.
Currently, we support these cloud storage providers.
* Dropbox
* OneDrive
* [Google Drive](/video/upload-videos/import-from-google-drive)
You can click on a provider of your choice. You will be asked to permit Gumlet to read files from your storage provider. Once you grant permission, you can browse files in your cloud storage right from the upload box.

Here, you can see there is one file in the Dropbox account that can be selected for upload. Once you select and upload your desired files, Gumlet will fetch them and then create processed versions which are ready to stream.
Please note that we will not modify or delete your original files. You retain full control of those files regardless of how you use Gumlet.
# Import from Google Drive
Import private and shared files from Google Drive to Gumlet
Importing files from Google Drive has never been easier. Import shared and [private files](#provide-permissions-to-gumlet-to-access-private-files) from Google Drive to Gumlet and stream to the world.

## How to Import Files
1. Click on the `Upload Video` button on your [video CMS](https://dash.gumlet.com/video/manage?page_redirect_from=video_dashboard) and select Google Drive from the screen.
2. Click on `Sign In with Google`

3. Select an account where you have videos and click `Continue` on the next steps to provide permissions.

4. Select Videos and Audios from the Google Drive File Picker and click `Select` button to proceed.
5. All the selected videos and audios will be sent for processing.
By default, only the public (_**Anyone with the link**_ permission) files will be sent for processing.
To import private files, you must provide viewer access to Gumlet
## Provide permissions to Gumlet to access private files
1. Go to your [Google Drive](https://drive.google.com)
2. Click on `Share` button on a folder settings.

2. Add email `gdrive-readonly@gumlet.iam.gserviceaccount.com` with viewer permission, Gumlet can download the videos when you import them.

3. Click on `Share` button and you are done.
4. Follow the guide [above](#how-to-import-files) to import videos.
---
updatedAt: 2026-03-05T15:04:02.000Z
---
# Import from Object Storage
Upload files to Gumlet from different storage providers
We support Object storage providers from where we can fetch your original video to process and stream. We recommend [creating a new workspace](https://dash.gumlet.com/video/workspaces) and selecting your Object Storage provider to set this up. Alternatively, you can also edit your existing workspace settings.

On the workspace edit screen, you can select a provider of your choice and configure the credentials.
### Amazon S3 Bucket
Gumlet needs `GetObject` and `ListBucket` permissions to access the videos. Create and add an access token with these permissions while creating the workspace.
### Digital Ocean Spaces
You can import videos stored in DigitalOcean Spaces as a video source. Create a new access token as described in [this article](https://www.digitalocean.com/community/tutorials/how-to-create-a-digitalocean-space-and-api-key) and create a workspace with these credentials.
### Wasabi Storage
Gumlet supports fetching videos from [Wasabi storage](https://wasabi.com/). Configure storage similar to Amazon S3, with the same permissions, for Wasabi Storage.
### Hetzner Storage
Gumlet supports fetching videos from [Hetzner storage](https://www.hetzner.com/). Configure storage for Hetzner Storage similar to Amazon S3, with the same permissions.
### Google Cloud Storage
Use videos stored in [Google Cloud Storage](https://cloud.google.com/storage) bucket as a source. Gumlet needs read bucket and list object permissions to access the videos. Please create a service account with those permissions, create a JSON key, and add that key while creating a workspace. You can find a tutorial at [Create and manage service account keys](https://cloud.google.com/iam/docs/creating-managing-service-account-keys).
### Azure
Gumlet supports fetching videos from [Azure cloud storage](https://azure.microsoft.com/en-us/product-categories/storage/). Create a [storage account](https://docs.microsoft.com/en-us/azure/storage/common/storage-account-create?tabs=azure-portal) and a container inside your storage. Gumlet needs an SAS (Shared Access Signature) token to access content. You can create a new SAS token as described in [this article](https://docs.microsoft.com/en-us/azure/cognitive-services/translator/document-translation/create-sas-tokens?tabs=Containers).
### Linode Storage
Gumlet supports fetching videos from [Linode storage](https://www.linode.com/products/object-storage/). Configure Linode Storage similarly to Amazon S3, with the same permissions.
### Backblaze storage
Gumlet supports fetching videos from [Backblaze storage](https://www.backblaze.com/b2/cloud-storage.html). Configure the storage similar to Amazon S3 with the same permissions for Backblaze Storage.
### Zoom Recordings
Bring your Zoom cloud recordings to Gumlet. You need to make a custom app to bring new recordings automatically to Gumlet. Here is the tutorial on setting up [Zoom Import](/video/upload-videos/import-from-zoom).
---
updatedAt: 2026-03-05T15:04:44.000Z
---
# Import Zoom Recordings
Import Zoom cloud recordings automatically to Gumlet
Add Zoom as a source in your workspace. All the new recordings will be optimized and added to your workspace.
### Create a Workspace
Navigate to the [create worskpace](https://dash.gumlet.com/video/workspaces) page and select Zoom as the Origin Type.

### Generate a Secret Token
You need to generate a secret token from your Zoom account. Here is a step-by-step guide to generate a secret token in your Zoom account and receive recordings as soon as they are finished.
#### Create a Zoom App
Go to the [Zoom App Creation](https://marketplace.zoom.us/develop/create) page and create a **Webhook Only** app.

Once you fill in the important details for the app, you need to set up permissions to send events to Gumlet.

Copy the Secret Token from the above screen and add it to the Workspace settings in Gumlet [here](/video/upload-videos/import-from-zoom#create-a-workspace).
#### Subscribe to Recordings Completed Event
Click on the **Add Event Subscription** button and add the endpoint URL as `https://api.gumlet.com/v1/video/assets/zoom/event/{workspace_id}`, replace `{workspace_id}` with the actual workspace ID from your [dashboard](https://dash.gumlet.com/video/workspaces).

Click the **Validate** button to confirm the URL is correct.
Click the **Add Events** button to select the required event to share the recording information with Gumlet.

Save the settings and **Continue**. Your app is activated now. All new recordings will now be processed to Gumlet automatically.

Note: This feature requires a paid Zoom account to function. The cloud recordings are available only to paid members.
---
updatedAt: 2026-09-09T00:00:00.000Z
---
# Import from Vimeo
Get rid of Vimeo with this migration guide
If you currently use Vimeo to host your videos, our Import tool helps you move your entire library to Gumlet with just a few clicks. It connects to your Vimeo account, imports your original video files along with folders, chapters, subtitles, audio tracks, and thumbnails, and then makes them available inside your chosen Gumlet workspace. This is ideal when you want to fully switch away from Vimeo while keeping the same content library, but with Gumlet’s player, delivery, and analytics.
## Requirements
* An active Vimeo Standard, Vimeo Pro or higher plan
* A paid Gumlet account ([subscribe here](https://dash.gumlet.com/organization/billing?utm_source=docs&utm_campaign=vimeo-migration))
## What gets migrated from Vimeo?
Gumlet imports all your core video assets from Vimeo, but Vimeo-only interactive elements and historical analytics are **not** copied.
| Item | Migrated to Gumlet | Notes |
| --------------------------------- | ------------------ | ------------------------------------------------------------ |
| Folders | Yes | Top-level folders are created in Gumlet |
| Subfolders | Yes | Folder hierarchy is preserved |
| Original video file | Yes | Imported as the source video |
| Chapters | Yes | Imported as chapters / markers |
| Thumbnails | Yes | Default video thumbnail is imported |
| Audio tracks (multi-audio) | Yes | Original files with multiple audio channels are imported |
| Subtitles / captions | Yes | Migrate existing transcriptions and translations. Generate others with Gumlet AI |
| Forms (Vimeo native) | No | Not migrated; recreate forms in Gumlet if needed |
| CTAs / end screens (Vimeo native) | No | Not migrated; use Gumlet end screens / player tools |
| Analytics | No | Historical stats stay in Vimeo; Gumlet tracks new views only |
| Other Vimeo-only interactive apps | No | Any native Vimeo apps/elements do not migrate |
## Step-by-step: import from Vimeo
1. Go to the [Import page](https://dash.gumlet.com/video/import-videos) and click **Connect** under Vimeo.

2. Authorize your Vimeo account on the Vimeo authorization screen.
3. Select the **Destination workspace** in Gumlet.
4. Choose **files and folders** you want to import.

5. Click **Import Videos**. Review the **Processing Settings** modal before the import starts. These settings apply to this import and become the default for future imports in that workspace.

Confirm MP4 downloads, DRM, and AI options (subtitles, chapters, description). AI features show credit costs when enabled — see [AI Features & Credits](/billing/ai-features).
6. Click **Save and Import** to start the migration.
## Import progress and migration report
* Track live import progress from your Gumlet dashboard: .
* Get an email notification when the import job finishes with a quick summary of imported videos.
* Open the detailed **Vimeo migration report** on the same page to see imported, skipped, and failed videos with reasons. Download the migration summary from this page for your records or team review.
## Update Embed Code
All your videos are imported to Gumlet. If you use Vimeo Embeds, you must replace your URL prefix with a Gumlet prefix to support the same URL structure to play your videos directly.
The Vimeo Embed URL looks like `https://player.vimeo.com/video/831802811`
Replace `https://player.vimeo.com/video` with `https://play.gumlet.io/embed`
Your new URL will be like `https://play.gumlet.io/embed/831802811`
## Limitations and known caveats
* No support for Vimeo free plans (API download restriction). If you do not have a Vimeo Standard or higher account, the import won't work.

* Migration is slower than standard uploads, even on paid Gumlet plans — Gumlet retains the original Vimeo video IDs during import to keep folder structure and existing references consistent, which adds time to the process. The dashboard can be closed while it runs.
---
updatedAt: 2026-03-05T15:10:30.000Z
---
# Import from Wistia
Upgrade your user experience with this migration guide
Have you been using Wistia to host and manage your videos? We have a quick way to import all the videos to Gumlet. You will need
* A paid account with Gumlet (if not, you can subscribe to a plan [here](https://dash.gumlet.com/organization/billing?utm_source=docs&utm_campaign=vimeo-migration))
Now head over to [Import Page](https://dash.gumlet.com/video/import-videos). You will find Wistia and click on 'Connect.' You will then need an API token from Wistia to import your videos.

## Generate a token on Wistia
To generate a token from Wistia, follow the following steps:
### Go to Wistia Account Settings
* Navigate to account settings from the top-right corner.

* Go to API Access in the bottom-left corne.r

### Generate an API Token
Select `Read all project and video data` and create a token.

Copy the password and add it to the [Gumlet Migration Dashboard](https://dash.gumlet.com/video/import-videos).

## Final Steps to Import
Once the token is verified, you can preview the projects available for import.

### Select a Destination
The destination is where all your imported videos will be stored. This is the same as the workspace. Select a workspace from the list, and we will process and keep your videos in the selected workspace.
### Select Projects
Select projects that you want to import to Gumlet. We will automatically create playlists and organize your files.
Clicking the **Import Videos** button will initiate the Import Process.

Sit back and relax. We will do all the heavy work to import and process videos for you.
You will find all your Imported Videos in the selected workspace.
Happy Streaming.
---
updatedAt: 2026-07-31T08:28:50.000Z
---
# Import from Mux
Migrate from Mux to Gumlet
If you currently use Mux to host and protect your videos, our Import tool helps you move your entire library to Gumlet with just a few clicks.
Requirements:
* Access token from a Mux account, with read and write access of \`Mux Video\`
* A paid Gumlet account ([subscribe here](https://dash.gumlet.com/organization/billing?utm_source=docs&utm_campaign=mux-migration))

## Step-by-step: import from Mux
1. Go to the [Import page](https://dash.gumlet.com/video/import-videos) and click **Connect** under Mux.
2. Create the access token from the Mux dashboard.
1. Click on **Settings** in the left sidebar
2. Create a new token with read and write permissions for Mux Video
3. Add newly created Token ID and Secret Key on Gumlet.
3. Select the **Destination** workspace in Gumlet.
4. Select \*\*videos\*\* you want to import.

5. Click **Import Videos** to start the migration.
## Import progress
* Track live import progress from your [Gumlet dashboard](https://dash.gumlet.com/video/import-videos/).
* Get an email notification when the import job finishes, along with a quick summary of the imported videos.
## Update Embed Code
All your videos are imported to Gumlet. If you use Mux Embeds, you must replace your URL prefix with a Gumlet prefix to support the same URL structure to play your videos directly.
Mux Embed URL looks like `https://player.mux.com/`
Replace `https://player.mux.com/` with `https://play.gumlet.io/embed/`
Your new URL will be like `https://play.gumlet.io/embed/`
---
updatedAt: 2026-07-31T06:13:16.000Z
---
# Import from Vdocipher
Migrate from Vdocipher to Gumlet
If you currently use Vdocipher to host and protect your videos, our Import tool helps you move your entire library to Gumlet with just a few clicks.
Requirements:
* An API key from a Vdocipher account, with Downloads enabled
* A paid Gumlet account ([subscribe here](https://dash.gumlet.com/organization/billing?utm_source=docs&utm_campaign=vimeo-migration))

## Step-by-step: import from Vdocipher
1. Go to the [Import page](https://dash.gumlet.com/video/import-videos) and click **Connect** under Vdocipher.

2. Get the API key from the Vdocipher dashboard.
1. Click on **Config** in the sidebar
2. Then generate an API key by clicking on the API key button.
3. A new key will be generated and available for use.

3. Select the **Destination workspace** in Gumlet.
4. Choose **files and folders** you want to import.

5. Click **Import Videos** to start the migration.
## Import progress
* Track live import progress from your Gumlet dashboard: .
* Get an email notification when the import job finishes, along with a quick summary of the imported videos.
## Update Embed Code
All your videos are imported to Gumlet. If you use Vdocipher Embeds, you must replace your URL prefix with a Gumlet prefix to support the same URL structure to play your videos directly.
The Vdocipher Embed URL looks like `https://player.vdocipher.com/v2/?otp=20160313versASE3232uiNHivbGDtJoBS4icnDU3DmjedrB8hnuHeRX5lcUBYkgj&playbackInfo=eyJ2aWRlb0lkIjoiYWViM2VmN2ZhYmE5NDM5MGE1ZTBmYTVlODc2OThiNjgifQ==`
Replace [`https://player.vdocipher.com/v2/`](https://player.vdocipher.com/v2/) with `https://play.gumlet.io/embed/vc`
Your new URL will be like `https://play.gumlet.io/embed/vc?otp=20160313versASE3232uiNHivbGDtJoBS4icnDU3DmjedrB8hnuHeRX5lcUBYkgj&playbackInfo=eyJ2aWRlb0lkIjoiYWViM2VmN2ZhYmE5NDM5MGE1ZTBmYTVlODc2OThiNjgifQ==`
## Limitations
* Migration is slower than standard uploads; the dashboard can be closed while it runs.
* You need to enable Download in your Vdocipher account. Navigate to Security > Advanced > click on the "Enable Download" button
---
updatedAt: 2026-03-12T09:50:35.000Z
---
# Request a Video via Link
Collect video files from partners or freelancers without sharing access to your account
You can request videos from your collaborators or customers by sharing a secure upload link. They can upload video files directly to your Gumlet workspace without needing a Gumlet account.
## When to use this
* Collecting video testimonials or user-generated content (UGC)
* Getting raw footage from freelancers or partners
* Allowing non-technical teams to send videos without logging into the dashboard
## How it work

1. Share this link with anyone who needs to send you a video.
2. The recipient opens the link, and uploads their file.
3. The video is added into your selected folder & playlist and processed like any other upload.
## Create a request link
1. Go to **Video Library** in your Gumlet dashboard.

2. Click "Request Video" the dropdown under the "Upload Video".
3. Add video details, select folder and playlist to manage video directly in your account.

4. Click **Save** and copy the generated URL.
---
updatedAt: 2026-07-06T08:03:56.000Z
---
# Upload & Import Videos
Bring your videos from different storages to Gumlet
This is the elementary step to start your streaming journey with Gumlet.
Gumlet lets you upload videos from your mobile, desktop, or tablet. We also have integrations with the most popular cloud partners. We have built state-of-the-art integrations with Vimeo, Wistia, and Zoom to automatically import videos.
[Upload from Device](/video/upload-videos/upload-from-device)
[Cloud Storage](/video/upload-videos/cloud-storage-video-upload)
[Import from Object Storage like AWS S3, GCP, Azure, Linode, Digital Ocean etc.](/video/upload-videos/cloud-storage)
[Import Zoom Recordings](/video/upload-videos/import-from-zoom)
[Import from Vimeo](/video/upload-videos/import-from-vimeo)
[Record from Dashboard](/video/upload-videos/record-from-dashboard)
[Import from Wistia](/video/upload-videos/import-from-wistia)
[Import from Vdocipher](/video/upload-videos/import-from-vdocipher)
[Import from Google Drive](/video/upload-videos/import-from-google-drive)
[Request a Video via Link](/video/upload-videos/request-a-video-via-link)
# Recycle Bin
Recover deleted videos from the Recycle Bin to your video library
The Recycle Bin allows you to easily manage your digital content. If you accidentally delete a video, there's no need to panic - you can quickly restore it from the Recycle Bin and recover your work.

## Steps to Access the Recycle Bin and Restore a Video
1. **Navigate to Video Library**
2. **Access the Recycle Bin**
3. **Restore a Video:**
* Browse through the list of deleted videos in the Recycle Bin.
* Select the video you wish to restore and click the Restore Button.
Deleted videos can only be restored within 30 days of deletion.
Videos are deleted permanently after 30 days and cannot be restored after the period.
_Note: Deleted videos do not count toward your storage usage. However, restoring a deleted video will occupy space in your video storage quota._
---
updatedAt: 2026-06-11T06:43:11.000Z
---
# Video Library
## Search & Filter
Finding your content is faster with our asset search.

### Search by Title or asset\_id
You can search files via a `title`, `description` or `asset_id` and you will find it.
### Filter by Tags
You can filter your videos with the tags that you assigned to them.
### Filter by Status
Naturally, we show all the videos that your workspace holds. You can filter them based on status, like `Ready`, `Processing`, etc.
### Using APIs
All actions available through the dashboard are also accessible via REST APIs. You can check [List Assets](https://docs.gumlet.com/reference/tag/video-assets/get/video/workspaces/workspace_id/list) API for details.
## Tags
Use Tags to categorize your videos based on events, dates, and teams. A video can have multiple tags.
### Adding a tag
1. Select the video(s) to which you want to add the tag(s).
2. Click on `Edit tags` on the top panel.
3. Add tags and Save.

P.S. - You can create as many tags as you want and tag videos.
#### An alternate way to add/remove tags
You can also add or remove a tag for a video on the [Video Settings](/video/manage-videos/video-settings) page.
---
updatedAt: 2026-02-26T11:57:56.000Z
---
# Workspace Settings
Configure the workspace settings
You can create workspaces to organize your videos better and manage access controls and permissions to specific features such as analytics, videos, and usage.
## Workspace Settings
Configure the source of videos and upload videos to Gumlet securely and seamlessly with pre-configured defaults.

*Tip: If you do not want to track user behavior for the videos inside a specific workspace, you can disable Analytics.*
---
updatedAt: 2026-02-26T12:06:24.000Z
---
# HDR & Color Space
How we handle 8‑bit and 10‑bit video, and why HDR sources can sometimes look 'washed out' in certain browsers.
## 8‑bit and 10‑bit in Gumlet
When you upload a video, Gumlet can generate:
* **8‑bit renditions** (typically Rec. 709, SDR) for maximum compatibility.
* **10‑bit renditions** (used for HDR workflows) for higher dynamic range and better gradients on supported devices.
Both ladders can be packaged into a single HLS manifest, so compatible players and browsers can automatically pick the best stream.
* Mainstream browsers and devices fall back to 8‑bit SDR when HDR is not available.
* HDR‑capable pipelines can leverage 10‑bit streams for better quality.
## How this relates to HDR
HDR workflows usually rely on 10‑bit depth, wider color spaces, and different transfer functions (for example, BT.2020 + PQ for HDR10).
Gumlet’s pipeline can:
* Preserve 10‑bit/HDR information in dedicated renditions, and
* Provide 8‑bit/SDR renditions for environments that do not support HDR.
Your HLS playlist can therefore contain:
* 8‑bit SDR variants for broad compatibility.
* 10‑bit HDR‑ready variants for capable players.
## Why can colors look washed out?
If a browser or player:
* Does not fully support HDR, or
* Mis‑handles 10‑bit streams and tone mapping,
The result can be:
* Low contrast, greyish highlights.
* Desaturated colors compared to the same video in a different browser.
In our internal tests, 8‑bit and 10‑bit variants in the same HLS stream played correctly in major browsers, but some niche Chromium‑based browsers rendered HDR variants incorrectly, producing washed‑out images, even though the encodes and metadata were valid.
# Processing Settings
Choose the right processing settings for your videos
We create default processing settings when you create a new [video workspace](/video/manage-videos/edit-workspace). However, you can update the settings for your videos in a workspace.

## Supported Input Formats
Gumlet supports hosting a wide variety of video and audio files, which are then processed and optimized for streaming across your preferred platforms. You can upload files in input formats such as:
| | | | |
| ----- | ------ | ------ | ----- |
| `mp4` | `webm` | `mov` | `mkv` |
| `mts` | `m4v` | `avi` | `mpg` |
| `asf` | `wav` | `mp3` | `3gp` |
| `m4a` | `flv` | `flac` | `aac` |
| `aif` | `ogg` | `mxf` | `ogv` |
| `ogx` | `opus` | `amr` | `mp1` |
| `rm` | `wmv` | | |
## Supported Output Format
We support the following video formats. You can deliver your video with any of them.
### ABR
Adaptive-Bitrate output format lets you generate ABR streams from Gumlet. Gumlet automatically makes DASH and HLS streams available, so you always have them on hand when needed.
#### HLS
[HTTP Live Streaming](https://en.wikipedia.org/wiki/HTTP_Live_Streaming) (also known as **HLS**) was developed by Apple Inc. as an HTTP-based adaptive bitrate streaming protocol. Support for the protocol is widespread in media players, web browsers, mobile devices, and streaming media servers. **Gumlet also recommends using this format** for seamless video delivery and playback.
HTTP Live Streaming allows video players to adapt to unpredictable network conditions without causing user-visible playback stalling. For example, on an unreliable wireless network, HLS allows the player to play a lower-quality video, thus reducing bandwidth usage.
Any modern video player can play an HLS stream produced by Gumlet. Most web players, iOS, and Android devices support HLS playback. It's the best choice for universal playback.
#### MPEG-DASH
**Dynamic Adaptive Streaming over HTTP** (**DASH**), also known as **MPEG-DASH**, is an adaptive bitrate streaming technique that enables high-quality streaming of media content over the Internet delivered from conventional HTTP web servers. Similar to HLS.
DASH is not supported in Apple products like iOS and Safari. This makes HLS the perfect choice as a universally supported streaming standard.
### MP4
**MPEG-4 Part 14** or **MP4** is a digital multimedia container format primarily used to store video and audio content. It allows streaming over the Internet. The most widely supported format requires no extra player or JavaScript.
The downside of MP4 is that adaptive bitrate streaming is not supported; therefore, users will experience subpar quality and high data transfers.
Note - the playback URL will be `.mp4` file.
## MP4 Version
If you allow your users to download videos for offline viewing, generating an MP4 version can be helpful. When you enable this option, we add an MP4 stream in the output, which can be used to download the video for offline viewing.
## DRM
You can enable DRM in processing settings. After you enable it, you can process a new video using this profile, and that video will be DRM-encrypted.

_Note: Currently, you must buy a DRM add-on with your video hosting subscription. DRM allows processing of only five videos without the add-on._
Turning on DRM here only marks videos for DRM-ready processing.
Here is the full DRM guide for set up, supported platforms, and limitations: [Start with DRM →](/developers/drm#step-by-step-guide-on-setting-up-drm).
## AI-generated Subtitles

If you enable this, Gumlet can automatically generate subtitles from the speech in the video file. Once you set this configuration in the video profiles, your processed videos will have subtitles.
We utilize state-of-the-art voice-to-text machine learning methods to convert audio into text. Once those texts are generated, we generate the required manifest files to display subtitles in HLS or DASH streams.
#### Generate subtitles
Your audio language is detected automatically and we generate subtitles for that by default. If you want to **translate** those subtitles in other languages, you can select additional languages.
* Additional subtitle language(s)
You can generate up to 5 subtitle languages for a given video. To generate subtitles, go to the **Subtitles** section in the processing settings. If you want more than 5 AI-generated subtitles for your videos, book a time with our sales team [here](https://www.gumlet.com/schedule-demo/?utm_source=docs\&utm_medium=docs\&utm_content=processing-settings).
[Here is the list](/video/tutorials/subtitle-language-list) of 184 supported languages.
AI subtitles and translations consume AI credits. See [AI Features & Credits](/billing/ai-features#video-ai-features) for per-minute rates and plan allowances.
## Generate AI chapters and description
We utilize AI to generate video chapters for your videos upon processing. The chapters are contextual and based on your video content. Additionally, we create a brief video description for your videos using AI. This combo of AI tools saves you time for publishing, and the best part is that you can edit all the generated content if ever needed.
AI chapters and descriptions consume AI credits. See [AI Features & Credits](/billing/ai-features#video-ai-features) for per-minute rates and plan allowances.
## Video Codecs
Gumlet supports H.264 (AVC) and AV1 as output video codecs. If you select both, Gumlet will output dual-codec HLS and DASH streams. Those devices supporting AV1 will automatically pick it, and those that don't support it will resolve to H.264.
### Audio codecs
The default audio codec is `aac`. If your source uses a different audio codec, Gumlet will automatically transcode it to `aac` for streaming outputs.
## Resolutions
If you have selected `ABR` as output, you can choose resolutions from 240p to 4k that you want to generate.
## Additional Settings
### Trimming Settings
Trim videos while processing from the start or end. This parameter allows you to configure auto-trimming for all the videos.
### Crop Settings
Crop videos while processing horizontally or vertically. This parameter allows you to configure auto-cropping for all the videos.
### Overlay & Padding
#### Image Overlay
Add Image Overlays to your videos, and customize the size and position. The image will be added to your videos.\
**Tip**: Add a watermark or logo to your videos with this config.
#### Text Overlay
Text overlay allows setting any text as an overlay on the video. Font size, color, font face, and position can be customized to suit your needs.
#### Padding
Padding allows you to add padded space around your videos. You can also choose padding color, padding size, and the place where you want to apply padding.
Details for developers & AI tools
This workspace uses a fixed ladder of output renditions from 240p up to 4K (where the source and profile allow it). Each rendition keeps the original frame rate, and bitrates are automatically chosen for good quality at each resolution.
Changes to processing settings do not automatically re-encode videos that were already processed. New uploads use the updated settings. For existing assets, use **[Reprocess Video](/video/manage-videos/video-settings#reprocess-video)** on the video details page after you update the profile.
Colorspace metadata
In case the uploaded video metadata doesn't mention the colorspace used for encoding, there maybe slight color difference in the output video.
---
updatedAt: 2026-04-22T10:35:21.000Z
---
# Time based expiry URLs
Generate temporary video embed code with time-based expiry URLs at the video level or workspace level, set a duration, and copy the generated embed code.
Use time-based expiry URLs to generate embed code that works for a limited time and stops working after it expires.
## Overview
Time-based expiry URLs help you control how long a video URL or embed remains valid. This is useful when you want to share videos for a fixed period, limit access after a campaign ends, or avoid leaving permanent links active.
You can enable expiry URLs in two places:
* **Video level** when you want to control expiry for one specific video
* **Workspace level** inside **Signed URLs** when you want to manage this at the workspace level
After you enable it, select how long the URL should remain active. Once that time duration passes, the URL expires and no longer works.
## Generate a time-based expiry URL
1. Navigate to the video settings page and click **Embed and Share**.
2. Enable expiry URLs at the **video level**.

3. Select the **time duration** for how long the URL should work. The generated URL stays active for the selected duration and expires automatically after that.
4. Click **Generate** to create the expiry URL and copy the embed code.
5. To generate a preview URL, go to the URLs tab and click Copy.

## When to use it
Use time-based expiry URLs when you need temporary video access, such as:
* time-limited campaigns
* private customer shares
* embed codes that should stop working after a set period
## Limitations
* The video may stop playing after the time has passed, even if a viewer is still in the middle.
* To generate secret URLs for MPD and M3U8, use our [signed URL code snippet](/video/manage-videos/video-protection-settings-section#signed-url).
* If you have an MP4 file for your video, it will function without a secret token. To use expiry URLs, disable MP4 generation in the [Processing settings](/video/manage-videos/processing-settings-section).
# Video Protection
Protect your videos using expiry URLs, geo-blocking, and whitelisted websites
Gumlet lets you layer multiple protection options to control who can watch your videos, where they can watch from, and for how long. Start with simple privacy controls, then add geo‑blocking, referrer whitelisting, and finally signed URLs if you need maximum security.
These protection options apply to on-demand videos only. They are not available for live streams, including geo-blocking, domain restriction, and password protection.
Gumlet's video protection works well with workspaces. All the videos inside the workspace will follow the security protocols configured at the workspace level. The security settings are available in your workspace settings.

## Available Video Playback Security Options
We recommend starting with privacy, then adding geo‑blocking, referrer whitelisting, and finally signed URLs for advanced use cases.
Use this guide to quickly decide which protection option to use for your videos.
| Option | What it controls | Best for | Example use case |
| ------------------- | --------------------------------------------------- | ----------------------------------------- | ------------------------------------------------------------------------------------------ |
| Video Privacy | Who can see or find the video | Basic visibility and link‑based access | Make marketing videos public, course content unlisted or private, demos password‑protected |
| Geo‑blocking | From which countries playback is allowed or blocked | Regional or compliance‑based restrictions | Allow only IN and US viewers, or block a few restricted countries while allowing the rest |
| Whitelist Referrers | On which domain names or apps can videos be played | Locking playback to your domains and apps | Allow playback only on example.com, app.example.com, and your mobile apps |
| Signed URL | Who can watch and for how long per URL | Per‑user, time‑bound, or paywalled access | Generate a 1‑hour link for paid customers, revoke access by letting URLs expire |
### Video Privacy
Mark your videos as public, private, unlisted, or password-protected.
#### Public
The public status indicates that videos are publicly playable and can be indexed by search engines. When embedded, it adds SEO metadata to your page.
#### Unlisted (this is the default)
These videos are unlisted. These are available only when the link is shared.
#### Private
Private videos are available only in the Gumlet dashboard or in member-only channels. To share these videos, change the privacy settings.
#### Password-Protected
Add a password to your videos to make them bulletproof. The embedded videos also require a password to play.
### Geo‑blocking and Whitelisting
Geo-based access management lets you control where your videos can be watched by allowing or blocking playback from specific countries or regions. Use it to comply with licensing rules, regional rights, or to keep content limited to your target markets.

You can configure geo‑blocking in one of two modes:
* **Whitelisted Countries**: allow playback only from the countries you select.
* **Blocked Countries**: block playback from the countries you select while allowing playback from other countries.
_Note: You cannot use whitelisted and blocked countries together. Choose one mode at a time for each workspace._
#### How does geo‑blocking or whitelisting work?
When a viewer tries to watch a video, Gumlet checks their IP‑based location and applies the geo rules configured at the workspace level. If you use whitelisted countries, playback is allowed only from the selected countries. If you use blocked countries, playback is denied only from the selected countries, even if the viewer has the correct video link and referrer.
### Whitelist Referrers (Whitelisting domains and apps)
The Referer HTTP request header contains the absolute or partial address of the page that made the request. The Referer header allows a server to identify the page from which visitors arrive. With allow-referer settings, you can ensure that your video is accessible only from a specific server/host. You can specify multiple referrers using which you want your video to be accessible.
#### How to Allow Referrers for your websites?
To make Gumlet videos playable on specific websites, you must add every domain and subdomain where the videos will be embedded to your Gumlet video settings. Only the domains you list there will be allowed to load and play your Gumlet-hosted videos.

_Note: You can also use a wildcard to allow videos to play on multiple subdomains._
#### How to Whitelist an Android app?
To allow Gumlet to whitelist your Android app, add the app bundle name to the whitelist referrers input box. You can get the bundle ID from your developer or the app's URL on the Google Play Store.

For example - if the app URL is , the bundle ID would be `com.google.android.calendar`. Get the `id` parameter from the app URL.
#### How to Whitelist an iOS app?
To allow Gumlet to whitelist your iOS app, add the app bundle name to the whitelist referrers input box. You can get the bundle ID from your developer or follow the steps below.

For example, if the app URL is `https://apps.apple.com/us/app/whatsapp-messenger/id310633997`, copy the ID from the URL after the `/id` (the numeric part). Navigate to `https://itunes.apple.com/lookup?id={copied_id}` (sample: ). It will download a text file.
Open the text file and copy the bundle ID as shown in the screenshot below:

### If you have apps built with circle.so, whitelist `circle.so` explicitly with Gumlet.
### If you want to whitelist multiple subdomains, you can use a wildcard (\*). For example, `*.gumlet.com` will allow you to play videos across all subdomains of gumlet.com
### If your apps do not send the x-requested-with header, you should send it explicitly.
Sample header: `headers: { 'x-requested-with': "net.whatsapp.WhatsApp"}`
### Adding referral restriction will prevent crawler bots from scraping your video content.
### Signed URL

When enabled, this option provides a 16-byte hexadecimal sign secret key to generate a secure token and an expiration timestamp (Expiration time should be at least the duration of the Video Asset or the expected period). Video playback URLs under the video workspace will only be accessible with correctly generated tokens by the secret key and within the expiration time. When the signed URL expires, the URL will no longer be playable, even if playback has already started. The code snippets convert the ordinary Gumlet playback URL into a signed URL.
The code snippets below are intended for the M3U8 and MPD formats:
```javascript
var crypto = require('crypto');
// Gumlet Video Playback URL
var playBackUrl = "https://video.gumlet.io/5f462c1561cf8a766464ffc4/6192269e0822a81d955d1a4b/main.m3u8";
// Secret key provided by Gumlet
var secret = "GNCP2ePfmdV3bHKqbiBAlXQXHKmI9+DZfLVptsvgUU4=";
secret = Buffer.from(secret, 'base64');
// expiration time in seconds
var tokenlifetime = 3600;
var expiration = Math.round(Date.now()/1000 + tokenlifetime);
var stringForTokenGeneration = playBackUrl.slice(23) + String(expiration);
var signature = crypto.createHmac('sha1', secret).update(stringForTokenGeneration).digest('hex');
console.log(`Signed Playback URL: ${playBackUrl}?token=${signature}&expires=${expiration}`);
```
```python
import hmac
from hashlib import sha1
from base64 import b64decode
from datetime import datetime, timedelta
# Gumlet Video Playback URL
playback_url = "https://video.gumlet.io/5f462c1561cf8a766464ffc4/6192269e0822a81d955d1a4b/1.m3u8"
# Secret key provided by Gumlet
secret = b"GNCP2ePfmdV3bHKqbiBAlXQXHKmI9+DZfLVptsvgUU4="
secret = b64decode(secret)
# expiration time in seconds
token_life_time = 3600;
expiration = datetime.now() + timedelta(seconds=token_life_time)
expiration = int(expiration.timestamp())
string_for_token_generation = playback_url[23:] + str(expiration)
string_for_token_generation = str.encode(string_for_token_generation)
signature = hmac.HMAC(secret, string_for_token_generation, sha1).digest().hex()
print("Token: {}".format(signature))
print("Signed Playback URL: {}?token={}&expires={}".format(playback_url, signature, expiration))
```
```ruby
require 'base64'
require 'openssl'
# Gumlet Video Playback URL
playback_url = "https://video.gumlet.io/5f462c1561cf8a766464ffc4/6192269e0822a81d955d1a4b/1.m3u8"
# Secret key provided by Gumlet
secret = "GNCP2ePfmdV3bHKqbiBAlXQXHKmI9+DZfLVptsvgUU4="
secret = Base64.decode64(secret)
# expiration time in seconds
token_life_time = 3600
expiration = Time.now.to_i + token_life_time
string_for_token_generation = playback_url.slice(23, playback_url.length) + expiration.to_s
signature = OpenSSL::HMAC.hexdigest('sha1', secret, string_for_token_generation)
puts "Token: " + signature
puts "Signed Playback URL: " + playback_url + "?token=" + signature + "&expires=" + expiration
```
The code snippet below is intended for the embed code URL:
```javascript
var crypto = require('crypto');
// Gumlet Video Playback URL
var host = "https://play.gumlet.io";
var playBackUrl = "/embed/6192269e0822a81d955d1a4b?watermark_text=test";
// Secret key provided by Gumlet
var secret = "GNCP2ePfmdV3bHKqbiBAlXQXHKmI9+DZfLVptsvgUU4=";
secret = Buffer.from(secret, 'base64');
// expiration time in seconds
var tokenlifetime = 3600;
var expiration = Math.round(Date.now()/1000 + tokenlifetime);
var stringForTokenGeneration = playBackUrl +`${playBackUrl.indexOf('?') !== -1 ? '&' : '?'}signed_expires=` + String(expiration);
var signature = crypto.createHmac('sha1', secret).update(stringForTokenGeneration).digest('hex');
console.log(`Signed Playback URL: ${host}${playBackUrl}${playBackUrl.indexOf('?') !== -1 ? '&' : '?'}signed_token=${signature}&signed_expires=${expiration}`);
```
### You can create tamper-proof dynamic watermark using signed embed code.
## Best practices for video protection
* Start simple, then layer protections\
Begin with the appropriate video privacy level, then add geo‑blocking and referrer whitelisting, and finally use signed URLs only when needed.
* Protect high‑value content more strictly\
Use Unlisted or Private privacy, combine it with Allow Referrers, and add Signed URLs for paid, internal, or sensitive videos.
* Keep your allowed list up to date\
Whenever you add new domains or mobile apps, remember to update your Allow Referrers configuration so legitimate viewers are not blocked.
* Test from real viewer environments\
After changing geo‑blocking or referrer rules, test playback from different countries (via VPN) and from all your key domains and apps.
* Monitor errors and viewer feedback\
Watch for spikes in failed plays in analytics and be ready to relax overly strict rules if genuine users are getting blocked.
# Video Settings
Manage your video's thumbnail, description, subtitles, privacy and much more.
When you go inside a video details page by clicking on `Edit Details` or `Video thumbnail` in the Video CMS, you will see the complete details of that video, including thumbnail replacement, editing subtitles, adding video chapters, and much more.

### Video Preview
Before publishing your video, make changes to it. The player shown in the video preview page reflects the configuration selected in the [player settings](/video/player-customization).
### Title
Update the title to be informative, crisp, and helpful. This is available at the top of the video details page, and you can also edit it inline in the video CMS listing.
### Description
Add meaningful descriptions and notes to help the audience quickly learn more about the video. This will enable them to understand the video context and content before watching. You can add bullet points, modify the style (bold/italic/underline/headings), and add hyperlinks.
### Tags
Add tags to manage videos in your video CMS.
### Video Privacy
Choose who can watch this video by setting its privacy mode.
* **Public** – Anyone can find and watch the video.
* **Unlisted** – Only viewers with the direct link can watch; the video is not indexed by search engines.
* **Private / Password‑protected** – Restrict access to specific viewers or protected channels.
Set the privacy mode from the Video Settings page whenever you want to change who can see this video.
For a full explanation of each privacy mode, SEO behavior, and protection best practices, see the [Video Privacy & Protection guide](/video/manage-videos/video-protection-settings-section).
### Thumbnail
We automatically generate and add a thumbnail to your video.
There are different ways of adding a thumbnail after the video is processed:
1. We extracts 5 suitable thumbnail frames from the video. You can pick any of these options as your thumbnail, or regenerate more options if none of them fit your needs.
2. Customize your thumbnail by uploading an image or GIF from your device
3. Select a specific frame from the video.
1. To select a thumbnail from the uploaded video:
1. Click on the **Select from video** button.
2. Scrub through the video and click **Select this frame** on the frame you want.
3. A new thumbnail for the video is set.

Note: The thumbnail URL supports all image operations listed in the [Image operations](/image/image-transform-api/image-transform-size) documentation.
### Subtitles
Subtitles help you reach a wider audience and make your videos accessible.
From the Video Settings page, you can:

#### AI-generated subtitles
You can configure the AI-based subtitles before processing. You can select up to five languages to generate automated subtitles, allowing your audience to choose the language they need.
AI subtitles and translations consume AI credits. See [AI Features & Credits](/billing/ai-features#video-ai-features) for rates and plan allowances.
#### Upload custom subtitles
Upload SRT files directly to your videos. Select a language, then upload the SRT to process your video with custom subtitles.
You can upload multiple SRT subtitle tracks (for example, English and Korean) to the same video. The Gumlet player lets viewers switch between all uploaded subtitles and automatically defaults to the subtitle matching the viewer's device or browser language.
To manage subtitles for a specific video, open its **Video Settings** page and go to the **Subtitles** tab.
_Note: To remove a subtitle, click the cross and click Update Subtitles._
### API access
* You can also manage thumbnails programmatically using the Video API. See the [Thumbnail update API](https://docs.gumlet.com/reference/tag/video-assets/post/video/assets/asset_id/thumbnail-select) for details.
* Update title, description, tags, and privacy settings with Video API. See the [Video Update API](https://docs.gumlet.com/reference/tag/video-assets/post/video/assets/update) for details.
* Subtitle tracks and files can also be managed through the Video API. Learn more in the [APIs documentation](/reference/tag/subtitle-upload/post/video/assets/asset_ID/subtitle/upload).
* After generating a transcript, you can download it using the `GET /v1/transcripts/{transcript_id}` endpoint to retrieve it in your desired format (for example VTT or TXT).
### Video Engagement
Gumlet offers tools to engage and educate your audience, such as multilingual subtitles, video chapters, and CTAs. Explore all the tools to increase brand recall, sales, and retention rates [here](/video/manage-videos/video-engagement-section).
### Video Analytics
Gumlet's advanced video analytics provide the insights you need to improve your content, increase engagement, and improve effectiveness. Learn more about detailed analytics [here](/video/manage-videos/advanced-video-analytics).
### Audio Tracks
Gumlet supports multi-lingual videos. You can upload audio in multiple languages, and your viewers can select the desired language to watch a video with the corresponding audio.
### Video Reviews
Mark points on video, add reviews, and resolve with your team to publish videos quickly. Learn more about video reviews [here](/video/manage-videos/video-reviews-and-comments).
### Reprocess Video
Use **Reprocess Video** when you change [Processing Settings](/video/manage-videos/processing-settings-section) and want older assets to pick up the new profile (for example AI subtitles, chapters, description, codecs, or resolutions).
After you update processing settings, **Reprocess Video** becomes available on the video settings page for assets that were processed before that change.

**How to reprocess**
1. Open the video in **Video Settings** (details page).
2. Click the **⋯** (more actions) menu next to **Embed & Share**.
3. Select **Reprocess Video**.
Reprocessing runs the full pipeline from scratch — the same as a new upload of that source file — using your current processing settings. Existing playback URLs and asset IDs stay the same.
Reprocessing consumes AI credits for any AI features enabled in the current processing settings (subtitles, translations, chapters, description, and so on). See [AI Features & Credits](/billing/ai-features#video-ai-features).
### Replace Video
You can replace the video content without actually changing the video URL. Your title, description, tags, and other settings remain intact except the subtitles (if generated), and thumbnail.
If you want to automate this flow, follow the [Replace Video API guide](/developers/vod-developers-section/replace-video).

### Download Original
Gumlet stores the original version of your uploaded videos. You can download them through the video details page.
In some cases, the video may not be available for download because it was not stored with Gumlet, per your processing settings. If you would like to change this setting, please contact our chat support. _Note: Only newly uploaded videos will be downloadable after changing the settings._
### Delete Video
When you don't want a specific video on Gumlet or want to free up some space, deleting the asset is your go-to setting.
Deleting a video removes its duration from your total storage usage. For example, if you delete a 30-minute video, those 30 minutes are deducted from your storage usage.
### Technical Details
Find all the technical details from video uploads to processing to be ready for streaming in one place.
You can find information about:
* who uploaded and when
* what the original video metadata was
* when your video started processing and when it was ready to stream
* what are the different types of URLs to stream your video across the internet

If you are a developer or familiar with APIs, explore the video's JSON data in more detail.
---
updatedAt: 2026-04-27T12:57:55.000Z
---
# Video Reviews
Review videos with your team inside Gumlet, or share review links externally to collect client feedback with precise, time-based comments.
Gumlet supports internal video reviews inside the dashboard, where teams can mark points at specific timestamps, reply to feedback, and resolve comments before publishing. Also, review-link workflow that let you collaborate with collaborators, making it easier to collect actionable feedback from clients without moving the conversation to email or chat.
## Internal reviews
Internal reviews happen on the video details page inside Gumlet. Team members can open the **Comments** tab, mark a point in the video, add review notes, reply in a thread, and resolve comments once the requested changes are complete.

### What you can do
* Mark specific points in a video for visual feedback.
* Add comments tied to exact moments in the video.
* Reply to comments and keep discussion in one thread.
* Resolve feedback after edits are complete so videos can move to publish faster.
### How internal reviews work

1. Open a video details page in Gumlet.
2. Click the **Comments** tab.
3. Mark a point on the video timeline.
4. Add a comment with the required review note.
5. Reply to the review or resolve it after the edit is done.

## External review links
Review links let teams share a video with clients or collaborators and collect precise feedback outside the workspace. You can create a named review link, can set an expiry date, and then shares that link for review.

### What reviewers can do
External reviewers can leave time-based comments such as "remove these two seconds" or "make this guy’s face blur," making edit requests more specific and easier to execute. Teams can then act on the requested changes and resolve comments in the same review workflow.
### Create a review link
1. Open the relevant video in Gumlet.
2. Navigate to "Review Links" tab and click **Create review link**.
3. Add a link name for the reviewer, client, or project.
4. Set an expiry date and create a link.
5. The link will be copied to share with stakeholders.
## When to use each workflow
| Workflow | Best for | Access model | Typical outcome |
| --------------------- | ------------------------------------------------------------ | -------------------------------------------- | ----------------------------------------------------------- |
| Internal reviews | Editorial QA, marketing review, team feedback | Inside the Gumlet dashboard for team members | Review threads are discussed and resolved before publish |
| External review links | Client approval, stakeholder sign-off, partner collaboration | Shared link created from the video | External comments are collected as actionable edit requests |
## Notifications
For internal comments, new comments, replies, or resolutions trigger email notifications by default. Teams that need customized workflows can also use [Gumlet’s Zapier integration](https://dash.gumlet.com/integrations/zapier) for tailored notifications and automations.
## Best practices
Use internal reviews when feedback should stay limited to workspace collaborators, and use review links when feedback needs to come from external stakeholders. Clear, time-based comments such as "trim 00:12 to 00:14" or "blur this face here" reduce ambiguity and help editing teams act faster.
---
updatedAt: 2026-04-06T10:38:34.000Z
---
# Custom End Screens
Learn how end screens work, why they help, and when to use more videos, buttons, share buttons, custom images, custom messages, or an empty screen after a video ends.
You can use end screens to keep viewers engaged after a video ends, guide them to the next action, and make the final moment of playback useful.
## Overview
An end screen appears after the video finishes. Instead of ending on a dead stop, you can use that space to recommend more content, drive a call to action (CTA, a prompt that tells the viewer what to do next), encourage sharing, or show custom branded content.
End screens help you:
* Keep viewers watching with follow-up content
* Drive clicks to one focused next step
* Increase reach through social sharing
* Reinforce branding with custom visuals
* Show a final message or announcement
* Avoid an abrupt ending with a clean final screen
### How to end screens?

1. Navigate to [Video Library](https://dash.gumlet.com/video/manage) and click on a video thumbnail where you want to add an End Screen.
2. Click on **End Screen** on the video settings page.
3. Select the End Screen type from the dropdown. We offer many types of end screens, explained below.
4. Customize your End Screen and save settings.
5. On Embedding, your viewers will see the selected screen after the video ends.
## Types of end screens
### 1. More videos

Use **More videos** to show 3 videos after the current video ends.
This option works well when your goal is to keep viewers in your content flow. It gives them an immediate next choice instead of making them search for another video.
#### How to add?
1. Click on **End Screen** on the video settings page.
2. Select **More Videos** from the dropdown.
3. You can either select 3 videos from the Video Library or select a playlist, so that we select the most recent videos.
4. Save Settings.
**Why this helps**
* Increases the chance that viewers continue watching
* Reduces drop-off after the video ends
* Helps surface related or follow-up content
**Best for**
* Series and playlists
* Product education
* Training libraries
### 2. Add a button

Use the **Add a button** to show a single focused CTA after the video ends.
This option is best when you want viewers to take a specific next step. A single button keeps the decision simple and directs attention to one destination.
#### How to add?
1. Click on **End Screen** on the video settings page.
2. Select **Call to action** from the dropdown.
3. Add Title, Sutitle, Button text, and URL.
4. Save Settings.
**Why this helps**
* Keeps the next action clear and focused
* Reduces distraction compared to showing multiple choices
* Works well for conversion-oriented videos
**Best for**
* Sign-up flows
* Demo requests
* Download or contact actions
### 3. Share buttons

Use **Share buttons** to let viewers share the video after it ends.
This option helps turn engaged viewers into distributors. If a video is useful, timely, or worth recommending, sharing can help it spread faster.
#### How to add?
1. Click on **End Screen** on the video settings page.
2. Select **Share Buttons** from the dropdown.
3. Save Settings.
**Why this helps**
* Makes sharing available at the moment the viewer finishes watching
* Expands reach beyond your existing audience
* Encourages viewers to promote content they found valuable
**Best for**
* Announcements
* Campaign videos
* Educational content
* Community-driven or awareness content
### 4. Custom image

Use **Custom image** to show an image with a link after the video ends.
This option gives you more control over the visual presentation of the end screen. It works well when you want to match a campaign, highlight a partner, or create a branded destination.
#### How to add?
1. Click on **End Screen** on the video settings page.
2. Select **Custom image** from the dropdown.
3. Select an image, image alternate text, and URL (if needed).
4. Save Settings.
**Why this helps**
* Gives you a flexible branded visual at the end of the video
* Let's you direct viewers to a specific link
* Works well when design and messaging need tighter control
**Best for**
* Promotions
* Partner campaigns
* Visual calls to action
### 5. Custom message
Use **Custom message** to show a text area after the video ends.
This option is useful when the most important information is text rather than a button or image. You can use it to leave a final instruction, explain a next step, or display a short note.
#### How to add?
1. Click on **End Screen** on the video settings page.
2. Select **Custom Message** from the dropdown.
3. Add Title and Message.
4. Save Settings.
**Why this helps**
* Gives you space for a clear written message
* Works when a viewer needs context or instructions
* Helps reinforce the takeaway from the video
**Best for**
* Final reminders
* Short announcements
* Support or follow-up instructions
* Event or campaign messaging
### 6. Empty screen
Use **Empty screen** to show a black screen after the video ends.
This option is the most minimal end screen. It removes visual noise and gives you a clean finish when you do not want to show recommendations, links, or messages.
#### How to add?
1. Click on **End Screen** on the video settings page.
2. Select **Empty Screen** from the dropdown.
3. Add Title, Sutitle, Button text, and URL.
4. Save Settings.
**Why this helps**
* Creates a quiet, distraction-free ending
* Avoids pushing viewers to another action
* Keeps the close of the video visually simple
**Best for**
* Minimal branded experiences
* Videos that need a clean stop
* Cases where no follow-up action is needed
### 7. Lead Capture Form
Use the **Form** to display a form in the video to capture a lead.
You can add an automated flow of leads to your CRM, mailing lists, and other systems using Zapier, Make, or Pabbly.
Learn more about lead capture forms [here](/video/manage-videos/video-engagement-section/lead-capture-inside-videos) .
## Choosing the right end screen
Use this quick guide to choose the best option:
* If you want viewers to continue watching, choose **More videos**.
* If you want one strong conversion action, choose **Add a button**.
* If you want viewers to help distribute the content, choose **Share buttons**.
* If you want a branded visual that links somewhere, choose **Custom image**.
* If you want to display text-based instructions or a note, choose **Custom message**.
* If you want a clean, silent ending, choose **Empty screen**.
* If you want to capture leads, choose **Form**.
The best end screen depends on what should happen after the video ends. Start with the action you want from the viewer, then choose the end screen type that supports that goal.
# Lead Capture inside Videos
Add forms inside your video embed to capture leads
Lead capture inside videos lets you collect viewer information directly from the Gumlet player using either Gumlet Form or HubSpot.
Use lead capture for demos, webinars, gated content, and other videos where viewers are likely to share their details while watching.
You can configure lead capture per video from Video Details → Form / Lead Capture in your Video Library.
## Types of forms
You can use Gumlet Form for native in‑player lead capture, or connect integrations like HubSpot to use your existing CRM forms and lists.
Gumlet supports the following lead capture options:
| Form type | Description |
| ------------------------------ | ----------------------------------------------------------------------------------- |
| **Gumlet Form** | Use Gumlet’s native in-video form to collect leads inside the player. |
| **HubSpot Form** | Embed an existing HubSpot form directly inside your video. |
| **Gumlet Form + HubSpot Sync** | Use Gumlet’s form and automatically send captured leads to a selected HubSpot list. |
## How to set up lead capture
1. Open your **Video Library**.
2. Click the video thumbnail/title and go to **Video Details**.
3. Open **Form**.
4. Choose your **Form type** (Gumlet Form or HubSpot).
5. Configure fields and save.
### Use HubSpot with lead capture
If you connect HubSpot from \*\*[Integrations](https://dash.gumlet.com/integrations/hubspot) \*\*, you can:
* Select **HubSpot** in **Form / Lead Capture** to embed an existing HubSpot form inside your video.
* Select **Gumlet Form** and choose a **HubSpot Sync List** to send Gumlet form leads to a HubSpot list.
For detailed setup steps, permissions, and troubleshooting, see the [HubSpot Integration](/video/integrations/hubspot-integration) guide.
## What Gumlet offers
Gumlet forms offer every customization that you might need. Here are the main things:
* Add a title and subtitle
* Form Type: Hubspot or Gumlet Form
* Form position - whether you want it in the start, during the video or towards the end
* Form alignment - left, right, and center
* Sync with Hubspot List: Works with Gumlet form
* You can also make the form skippable, which works well for offers, trailers, and low‑friction lead gen.

_Tip: Didn't like the position or alignment? You can always update the form without changing the embed code._
By default, the leads you capture are shown in your Gumlet dashboard.
You can export them as CSV or use integrations like **HubSpot**, Zapier, Make, or Pabbly to send leads directly to your CRM.
## When to use which option
| If you want to… | Use this option |
| ----------------------------------------------- | ------------------------------ |
| Capture leads using Gumlet’s native experience | **Gumlet Form** |
| Use an existing HubSpot form inside your video | **HubSpot Form** |
| Keep Gumlet’s form UI and sync leads to HubSpot | **Gumlet Form + HubSpot Sync** |
# Video Engagement
Make your videos more engaging to your audience
## Video Chapters
The video chapters help add an index to your video content. You can add chapters to your videos to make them engaging and helpful for viewers.

Steps to add chapters:
* Move the timeline marker to add the chapter
* Click on the clock icon on the right side to pick the marker time
* Add a chapter label
* Keep adding chapters as needed and save them.
* To remove a chapter, click the cross and save the changes.
Note: If you do not want to show a name for a part of the video, you can keep the chapter title as a single space. The chapter marker will still appear on the timeline without any visible label.
You can also auto-generate chapters (and a video description) with AI during processing. AI chapters and descriptions use AI credits — see [AI Features & Credits](/billing/ai-features#video-ai-features).
## CTA (call to action)
The CTAs are essential for brands to take their audience to Product Pages, Websites, or custom destinations. Configure call-to-action to increase brand awareness and drive sales.

You can customize your CTA:
* position
* background and font color
* destination URL and behavior
* entry and exit time
A sample CTA looks like this:

There is no limit on number of CTAs.
## Lead Capture Forms
Video lead capture lets you collect your viewers’ contact information directly inside the video player. Add a lead capture form in under 30 seconds to start gathering details like name, email, or custom fields that matter to your business. These forms help you qualify leads, nurture prospects, and measure how your videos contribute to conversions. Learn more about form fields, styling options, and display rules [here](/video/manage-videos/video-engagement-section/lead-capture-inside-videos).
## Custom End Screen
Gumlet lets you add customizable end screens to keep viewers engaged even after the video finishes. You can display a text message, a clickable URL button, an image banner, or a More videos section that recommends additional content from your library. These end-screen components guide viewers to specific actions, such as visiting a page, exploring your products, or watching related videos. Learn more about all the possible end screen layouts and customization options [here](/video/manage-videos/video-engagement-section/custom-end-screens).
### API access
* Chapters for a video can also be managed via API. Refer to the [Create/Update Video Asset Chapters API](https://docs.gumlet.com/reference/tag/video-assets/post/video/assets/asset_id/chapters) to create, update, or remove chapters programmatically.
* CTAs for a video can be set when creating or updating the asset via API. Refer to the [Create Video Asset API](https://docs.gumlet.com/reference/tag/video-assets/post/video/assets) for implementation details.
---
updatedAt: 2026-03-06T08:22:59.000Z
---
# Video Analytics
Understand how your viewers are watching your videos.
The deep insights from your videos put you ahead of your audience's needs. Gumlet's advanced video analytics provide the insights that enable you to enhance your content, increase engagement, and delight your audience.

You can access the analytics page from two places:
* Right from the video CMS table

* From the video settings page

### The metrics you can deep dive into with Video Analytics:
* Video heatmap
* Views on a daily, weekly, and monthly basis
* Total impression on a particular date range
* Total time played grouped in days/weeks/months
* Average view rate -> views/impressions, how many video plays against the video loads
* Geography of your audience, i.e., cities or countries
* Top pages (referrers) from where your video is being watched
* Top browsers and devices your audience uses for watching your content
Gumlet collects data to help creators understand how their videos are doing from multiple angles, such as geographical distribution, platform (domain) distribution, device distribution, etc.
## Video Heatmap
A video heatmap is an advanced analytics metric that helps you understand how your audience views your video. In a nutshell, it shows when your audience drops or skips the content.

### How to read the graph
* The x-axis is the duration of the video.
* The y-axis represents the percentage of total views.
* The graph depicts the % of the total views watching a fragment of the video
* e.g.- when a video is started, 100% of views have at least 1 second watched, so 1st fragment is 100%
* e.g.- when there is an upside from the previous fragment, it means the user would have skipped the previous segment
* e.g.- when there is a downside in the following fragment, it means the user skipped that segment or left the video (stopped/reloaded)
#### Things to consider
* The graph is calculated on the total number of views of the video.
* The heatmap data remains unchanged when you modify the date range in the date picker on the analytics page.
# Enable MP4 videos
How to enable MP4 video output with Gumlet.
## How to Enable and Access MP4 Download Links for Your Videos on Gumlet
Accessing MP4 download links for your videos on Gumlet involves setting up the correct processing settings. Below, we provide a step-by-step guide to help you successfully enable and access MP4 files.
### Enable MP4 Processing in Your Settings
By default, your video processing profile may be set to HLS and DASH, displaying an HLS URL. To enable MP4 generation, follow these steps:
1. Navigate to your video processing settings within the Gumlet Dashboard.
2. Choose the option to edit the processing settings.
3. Locate and enable the 'Generate MP4' feature by selecting the corresponding radio button.
4. Save the updated settings.
5. All new videos after settings update will have MP4 version available for download.
6. If you want to enable MP4 on existing videos, you need to re-process the video by clicking on the video and then clicking on the "Re-process" button. Here is a [guide](https://docs.gumlet.com/video/manage-videos/video-settings#reprocess-video) on how to re-process a video.
If you have already uploaded a video with MP4 disabled, you need to enable it and then reprocess the video. The processing setting changes do not reflect on the old videos.
## Troubleshooting MP4 Download Availability
If you still cannot access the MP4 option after enabling it and confirming your plan eligibility, consider:
Double-checking the video processing settings.
Ensuring your subscription includes MP4 download capabilities.
Contacting Gumlet support for further assistance if the issue persists.
# Manage Videos
Manage all your videos on a single panel
Gumlet is built to improve user experience and engage your users. Gumlet video library is the central place to manage all your videos. You can head to the [video library](https://dash.gumlet.com/video/manage/) section, and you will see this screen:

### How your video library is structured
Your Gumlet account is organized in a simple hierarchy so you always know where a setting applies:
* **Workspace**\
Top-level container for all your videos, folders, subfolders, channels, playlists, and team members. Workspace settings act as defaults for everything you create.
* **Folders and subfolders**\
Internal organization in the video library. Use them to manage videos for your team (projects, clients, departments). Folders and subfolders are not shown to viewers and do not change how a video is shared, embedded, or watched.
* **Channels and playlists**\
Public-facing experiences. Playlists group videos for sharing and embedding. The [channel](/video/channels) is the public page that displays the playlists you include on it.
* **Videos**\
The actual video assets that are uploaded, processed, protected, embedded, and tracked. Many settings can be customized per video to override workspace or channel defaults.
These are two independent trees that share the same videos:
| | Internal (video management) | Public (sharing and embedding) |
| ----------- | --------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
| Structure | Workspace → folder → **subfolder** → video | Workspace → [channel](/video/channels) → [playlist](/video/channels/embed-playlists) → video |
| Who uses it | Your team in the dashboard | Viewers on the channel page, playlist links, and embeds |
| Typical use | Keep the library tidy (for example `Clients / Acme / Q3`) | Publish a course, series, or branded channel |
A video can live in a folder for your team **and** appear in any number of playlists for viewers. Putting a video in a folder does not add it to a playlist or the channel. Adding a video to a playlist does not move it in the library.
Folders and subfolders have **no relationship** to channels or playlists. Organize internally with folders. Publish with playlists, then attach those playlists to the channel (or [embed a playlist](/video/channels/embed-playlists) on its own).
#### How channels and playlists relate
* Create **playlists** as public sets of related videos (a course, a series, and similar groupings).
* Add those playlists to the **channel** under Included Playlists, and reorder them for the channel page.
* Share the [channel URL](/video/channels), invite [members](/video/channels/channel-membership), or embed an individual playlist. Viewers never see your folder tree.
### Manage videos with folders and subfolders
Create folders to organize videos neatly in your video library. You can also create **subfolders** (folders inside other folders) to group related videos, separate projects or categories, and keep the library structured.
#### How to create a folder?
1. Click on the Create Folder button in your video library.

2. Give it a name, and your folder is ready.
#### How to create a subfolder?
1. Open the parent folder in the video library.
2. Click **Create Folder** and name it. That folder becomes a subfolder of the one you are in.
3. Or, from the library, use the 3 dots on a folder and **Move to Folder** to nest it under another folder.
_Tip: You can nest multiple levels of subfolders. Moving a folder also moves the videos and subfolders inside it._
#### How to move videos in a folder?

1. Click on the 3 dots against a video or select video(s).
2. Choose "Move to Folder" to move a single or multiple videos.
3. Select a folder or subfolder, or create a new one on the fly.

4. Click on the Move button to move the video to the selected folder.
Deleting a folder will delete all the items inside that folder, including subfolders and videos.
### What can I configure at each level?
Different settings apply at different levels in this hierarchy. Higher levels define defaults, and lower levels (especially individual videos) can override those defaults where allowed.
| | Workspace | Folders / subfolders | Channels / Playlists | Single videos |
| --------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------ | --------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| Processing settings | Set default processing profile for new videos in the workspace. | No direct controls; videos inherit workspace defaults. | No direct controls; videos keep their own processing settings. | Override per video (only if set before upload or via API). |
| Privacy & access | Default privacy for all newly uploaded videos in the workspace. | Folders and subfolders do not have separate privacy settings. | Channel-level visibility - public and membership where configured. | Per-video privacy (public, unlisted, password, signed URL, DRM, embed restrictions, etc.). |
| Player customization | Default player theme, logo, colors, and controls for the workspace. | No player UI settings; used only for internal organization. | Channel/playlist layout and theme for channel pages and playlist embeds. | Per-video player overrides: controls, logo, colors, watermark, CTAs, forms, etc. |
| Branding & domains | Custom domains for video preview, playlist and channel. | Not applicable. | Channel branding (cover image, description, social links, channel custom domain). | Video title, thumbnail, description, and SEO metadata. |
| Security & protection | Global protection defaults (e.g., signed URLs, DRM availability). | Possible bulk actions on videos in a folder or subfolder. | Channel-level restrictions such as login/membership-based access. | Per-video signed URLs, DRM settings, password protection, allowed domains, CSP, and more. |
| Analytics & reporting | Workspace-wide usage and analytics across all videos. | Filter analytics by folder using analytics tools. | Channel/playlist performance (views, watch time, conversions where applicable). | Detailed per-video analytics, engagement graphs, and user-level analytics where enabled. |
| API customization | Workspace-level API keys, webhooks, and upload/manage APIs. | Use folder IDs in API calls to organize or filter lists of videos. | Channels and playlists can be created/managed via API where supported. | Set or update processing, privacy, player options, and metadata per video using the API. |
Settings defined at the workspace or channel level act as sensible defaults. When you customize a specific video, its video-level configuration takes priority for that video.
### Configure via dashboard or API
Anything you can configure from the dashboard (processing profiles, privacy, player options, metadata) can also be managed programmatically using the **[Video Upload / Manage](/developers/vod-developers-section/direct-upload)** APIs. Use workspace settings for consistent defaults, and use video-level API calls when you need to control behavior dynamically for each video.
### Switching Workspaces
You can create more workspaces from the left sidebar > Workspaces. You can switch to a different workspace from the drop-down menu above the videos table in the video library.

---
updatedAt: 2026-09-28T00:00:00.000Z
---
# Player Accessibility
Everything about video player accessibility
Our video player is designed with accessibility in mind, ensuring an inclusive experience for all users. The Gumlet video player is designed to align with WCAG 2.1 Level AA standards and covers key criteria under WCAG 2.2 Level AA.
Below is an overview of the accessibility features provided:
## Keyboard Navigation
* Full support for tab, space, enter, and arrow keys, and j, k, l
* Ability to play, pause, adjust volume, and seek without a mouse
## Screen Reader Compatibility
* Clear labeling for buttons and controls designed for popular screen readers (NVDA, JAWS, VoiceOver)
* ARIA roles and attributes for better assistance
## Closed Captions & Subtitles
* Support for multiple caption tracks for different languages. You can also [generate captions](/video/manage-videos/video-settings#subtitles) using AI.
* Embedded transcripts for each video, making content accessible for users with hearing impairments
## Multilingual Audio Support
* Upload multiple language audio files to support a wider audience from across the globe.
## Custom Thumbnail
* Add [thumbnail](/video/manage-videos/video-settings#thumbnail) directly from video or upload a new one
* Add GIF instead of static graphics
## Adjustable Playback Speed
* Change playback speed for easier comprehension
* Keyboard shortcuts for speed adjustment
## Focus Indicators
* Highly visible focus outlines on all interactive elements for users navigating via keyboard
## Customizable Controls
* Ability to reconfigure control layout to suit accessibility needs
* Casting options for large screen support
## AI Chapters and List
* Add AI generated [chapters](/video/manage-videos/video-engagement-section#video-chapters) or custom chapters to your videos
* Viewers can navigate to specific chapters directly from timeline or from chapters list
## Keyboard shortcuts
You can use following shortcuts to operate player with a keyboard. If you press `SHIFT + ?` keys, player will show the shortcut list.
| Key | Action |
| :---------------------- | :------------------------ |
| `␣`/ `k` | Play/Pause |
| Arrow up/down (`↑`/`↓`) | Volume up/down |
| `←`/ `j` | Seek Backward |
| `→`/ `l` | Seek Forward |
| `c` | Toggle captions/subtitles |
| `m` | Mute/unmute |
| `f` | Toggle full screen |
| `p` | Toggle picture-in-picture |
| `Shift + <` | Slow down playback speed |
| `Shift + >` | Speed up playback speed |
| `Tab` | Navigate player controls |
## Need Help?
For more information or accessibility support, please contact us.
Accessibility is an ongoing commitment. We welcome feedback to improve your viewing experience.
# Customize Video Player
Generate customized player embed code and embed URL for a video ID
Input your video asset ID to create customized advanced controls tailored to your video player requirements.
[Gumlet Video Player Customizer](https://gumlet.github.io/video-player-customizer/)
---
updatedAt: 2026-03-18T10:20:21.000Z
---
# Floating Video Player
Embed a floating (PIP) video to your website with CTA
Embed video in always-on Picture-in-Picture (PiP) mode on your website—a powerful upgrade for your e-commerce experience. Make your store more lively and engaging with a floating video player that keeps content in view.
[](https://gumlet.github.io/embed-player-addons/e-commerce.html)
### Sample Embed Code for Floating Video Player
```
```
Make your own floating player here:
---
updatedAt: 2026-03-24T07:14:10.000Z
---
# Full screen Video Player
Embed a video to your website with default full screen preview
Embed video in default full screen preview mode on your website—a powerful upgrade for your marketing websites and landing pages. Engage your users with fast loading, full screen, high quality videos.
[](https://gumlet.github.io/embed-player-addons/modal-player.html)
### Sample Embed Code for Full screen Video Player
```
```
Get your own full screen embed code here:
---
updatedAt: 2026-08-06T04:33:16.000Z
---
# Pause Video when off-screen
Pause playback instantly the second the video player leaves the screen
Automatically manage video playback based on viewport scroll position to preserve bandwidth, maintain accurate analytics, and enforce strict viewability compliance.
### Sample Embed Code
Replace your {asset_id} with your asset ID.
```javascript
```
# Player Customization
All you need to make your player
We understand the importance of having a video player tailored to your specific needs. Gumlet's video player can be customized to match your brand.
You can configure all player settings in one place.
## Basic Settings

### Autoplay
When autoplay is enabled, the video will play automatically when the page loads. By default, this setting is disabled. _Note: The audio will be muted across all browsers and devices._
### Loop
When enabled, your video will play in auto-loop mode.
### Enable Download Button
When enabled, it will display a button on the player that your users can use to download the video.
_Note: The download button will only appear if the video is processed with the MP4 version enabled._
### Show Title
Display the video title on embedded videos. This is good for your visitors to get context.
### Allow Cast
Enable your viewers to stream and enjoy your content on bigger displays. The player integrates with Apple AirPlay and Google Chromecast for easy casting.
_Note: This feature is not supported for DRM‑protected videos, Dynamic Watermark‑enabled streams, referrer‑restricted playback, or HLS‑only sources; DASH or MP4 formats are required instead._
### Resume Embedded Videos
Let your audience resume where they left off. We keep the last-played second for unique audiences, stored securely on their devices. It's useful for OTT & Education videos.
## Advanced Settings

### Disable seek bar
Enable this to disable seeking on your videos. This setting is helpful for educational and training use cases where the institute/organization doesn't want users to skip content.
### Disable Player Controls
Remove all the controls from your player and let your audience focus on the video content.
### Powered by Gumlet
The Gumlet player includes a `Powered by Gumlet` logo by default. If you'd like to remove this logo for aesthetic or branding reasons, you will need to update your Gumlet plan accordingly. You need Gumlet's Growth or Business plan to disable the Gumlet logo in the player.
### Dynamic Watermark
When enabled, we add a moving watermark directly to your videos. You will see moving text with user IPs when you embed the videos. The dynamic watermark adds an extra layer of security to your video.
You can configure the watermark style and text:
* text color
* text size
* background-color
* frequency (ms)
* visibility duration: Watermark visible duration (ms)
* watermark\_text: you need to send it dynamically in the iframe source
* `Sample iframe source: https://play.gumlet.io/embed/674fea04f1412ab64f697e11?watermark_text=support@gumlet.com, some_id` you can embed using `watermark_text` query param.
_Below is a sample video with the dynamic watermark_:
[Gumlet video player]()
The embed code for the above sample video:
```html
```
_Note: It will only work where you add the Embed code. It won't work for MP4, M3U8, and MPD URLs._
## Player Branding
### Logo URL
This parameter takes the image URL as input. It overlays the image fetched over the player.
### Logo Position
The overlay image can be modified with the Logo position parameter.
### Logo Width & Height (in px)
Change the size of the logo added. Add height and width of the logo in pixels.

## Captions Settings

### Text color
Change the text color of the subtitle
### Background Color
Change the background color of the subtitle
### Font Size
Change the default font size of the captions. The default is medium.
### Show Captions Automatically
Show captions automatically on the player. Users can still hide it in the player and select their preferred language.
## Advertising & Monetization

### VAST Tag
The VAST tag takes the URL as input. Our player will automatically play ads defined in this VAST tag during playback.
Gumlet player also supports Google's IMA SDK. You can inject ads in between video playback.
### Facebook Pixel ID
Add the FB pixel ID to track video engagement and create a lookalike audience for improved targeting. To get your pixel ID or create a new one, navigate to [how to get FB Pixel ID](https://www.facebook.com/business/help/952192354843755).
You can also pass the Pixel ID per embed using the `facebook_pixel_id` query parameter in the iframe `src` URL. See the [FAQs](#faqs) for the events the player sends and how to handle visitor consent.
### Google Tag ID
Add the Google Analytics (GA4) ID to track video engagement and create a lookalike audience for improved targeting. To get your GTAG ID or create a new one, navigate to [how to get GA4 ID](https://support.google.com/analytics/answer/12270356).
### Advanced Customizations
| Customization | Description |
| :------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------- |
| [Customize Video Player](/video/player-customization/customize-video-player) | Create custom embed code with branding elements, controls, autoplay behavior, dynamic watermarks, and monetization tags. |
| [Floating Video Player](/video/player-customization/floating-video-player) | Enable sticky or Picture-in-Picture playback to keep videos visible while users scroll. |
| [Full-screen Video Player](/video/player-customization/full-screen-video-player) | Adjust display behavior, screen orientation, and full-screen triggers across various devices. |
| [Pause Video when Off-Screen](/video/player-customization/pause-video-when-off-screen) | Automatically halt playback and data buffering as soon as the player leaves the viewport. |
## FAQs
### Which events does the player send to Facebook Pixel?
The Gumlet player sends the following events to your Facebook Pixel:
| Event | When it is sent |
| :------------------- | :--------------------------------------------------------- |
| `Played` | When a user starts playing the video. |
| `Seconds Played` | When a user pauses the video. |
| `25 Percent Played` | When the playhead reaches 25% of the total video duration. |
| `50 Percent Played` | When the playhead reaches 50% of the total video duration. |
| `75 Percent Played` | When the playhead reaches 75% of the total video duration. |
| `100 Percent Played` | When the video ends. |
### Which parameters are sent with each Facebook Pixel event?
Every event includes the video `title` and `asset_id`. The `Seconds Played` event also includes `seconds`, which is the total number of seconds the video had played when the user paused it.
The page URL and browser details are collected automatically by the Facebook Pixel itself. Gumlet only adds the video title and ID.
### Does the player send a PageView event?
Yes. Facebook Pixel sends `PageView` automatically when the pixel is initialized on the page.
### Can I choose which events are sent or disable automatic events?
No. The event set is fixed, and automatic events can't be disabled.
### How do I connect Facebook Pixel to the player?
Add your Pixel ID in the workspace's player settings, or pass it in the iframe `src` URL using the `facebook_pixel_id` query parameter:
```html
```
### Does the Facebook Pixel integration include the Conversions API (CAPI)?
No. The player uses the browser Facebook Pixel only. Conversions API (CAPI) is not supported.
### How do I respect visitor consent for Gumlet analytics and Facebook Pixel?
The video stays playable when both are turned off. Each is controlled separately through query parameters in the iframe `src` URL:
* **Gumlet Insights:** Add `disable_insights=true` to turn off Gumlet analytics for that visitor. This only prevents insights-related cookies. It doesn't remove existing cookies or stop the player from setting its own cookies used for a better viewing experience. It also doesn't stop Facebook Pixel events.
* **Facebook Pixel:** Don't set a workspace-wide Pixel ID. Instead, add `facebook_pixel_id` to the iframe `src` only after the visitor opts in, and remove it if they withdraw consent.
When you change these query parameters, the iframe reloads automatically. You don't need to reload it yourself.
```html
```
# Channel Membership
Gumlet allows you to make channels private or public and invite members.
Channel membership is a feature of Gumlet that helps video courses and content creators. Many independent creators told us that integrating high-level security features, such as DRM and dynamic watermarks, without the assistance of developers was sometimes challenging.
That's why we created a “Patreon-like” channel membership with Gumlet to address this issue. Here is how it works:
* Video workspaces serve as the top-level structure for organizing videos.
* Each video workspace can have one video channel. Video channels can be public or private.
* Using playlists (similar to folders), you can select which videos from the workspace appear on the channel.

### Public Channels
Public channels are those where any user can subscribe to view your channel without needing to be invited by you. You can still view who joined your channel. When new content is added to the channel, members can view it.
Public channels are helpful if you want to get user-level analytics data while keeping your content free and open for everyone to view. You can attach a custom domain to your channel to ensure you reap the SEO benefits of hosting channels on your domain.
### Private Channels
If you make a channel private, you can invite users to join. Only the invited users can view the videos on the channel. Since the channels are hosted on Gumlet, you can easily enable high-level security features, such as DRM, with just a click.
This ensures that you can easily sell your courses online with Gumlet and that your content remains accessible only to those who have subscribed.
There are already several ways to customize the channel's appearance. ([Channel Customization](/video/channels#title--description))
#### How do private channels work?
Here is a brief on getting started with channels and membership. Set up a channel without any code and deliver value to your audience. Here are the quick steps to get started:
1. Add channel details and enable it.
1. Add a few playlists to the channel.
2. Mark your videos Private, i.e., videos that are part of these playlists shown on the channel.l
2. Invite members with their name and email ID on [channel settings](https://dash.gumlet.com/video/channel)
3. The invitee will get an email with a secure link to join the channel.

4. They need to join the channel by creating an account with Gumlet, or they can log in if they already have an account.

5. Once they verify, they are part of your video community.
6. If they can't verify the same email address to which you sent the invitation, they can't view the content.

#### Video Privacy Settings with Channel Visibility
| Video Privacy | Channel Access | Video Embed | Inside Channel |
| --------------- | -------------- | ------------------ | ------------------ |
| public/unlisted | member-only | will play | will play |
| public/unlisted | public | will play | will play |
| private | member-only | won't play | will play |
| private | public | won't play | won't play |
| password | member-only | play with password | play with password |
| password | public | play with password | play with password |
### Invite Members
You can invite members to subscribe to your channels. When a member is asked, they get an email with a secure link to subscribe to your channel.

There are two ways to invite:
1. Invite using name and email.
2. Invite members using CSV. You can invite multiple members at once. Here are the quick steps:
1. Download the sample CSV
2. Add your members
3. Upload the CSV to invite
Invitation link
For public channels, you can just copy the preview link from the channel settings or copy the URL from the URL bar when you are on a channel page.
For private channels, the invitation is the only way as it goes out with an access token to make it secure and can be used by the invited user only.
### Channel Analytics
The channels hosted on Gumlet come equipped with a wealth of analytics that will help you better understand your subscribers, allowing you to improve your content and security. You can track all the metrics mentioned [here](/video-analytics/introduction) for channels, playlists, and videos separately.
#### Channel Analytics
* Find the detailed analytics for your playlists
* Get detailed video analytics from specific playlists
#### User-level Analytics
* Find which members are watching what
* Understand the time spent by members on your channel
# Embed Playlists
Embed playlists directly to your platform for a seamless experience
Embed video playlists in your product, website, or LMS so viewers can enjoy a continuous, curated sequence of videos without leaving your experience.
Here is a step-by-step guide to setting up a playlist on your platform:
1. Navigate to **Video → Playlists** and create a new playlist if you don’t already have one.
2. Add videos to your playlist.
3. Click on the three dots and copy the embed code.

4. Paste the code directly into your website, or add it to an HTML block if you are using a CMS, LMS, etc.
5. Publish or share the page with your audience so they can continuously watch videos directly on your website.
### Sample Playlist Embed Code
```html
```
[Gumlet Video Tutorial](https://play.gumlet.io/embed/playlist/674b4622dad6bb7514c68f13)
Your playlist embed will use the same settings as your player in the video library. Any changes you make there will be applied here automatically.
# Channel Custom Domain
Brand your channels with custom domain names
Here is the guide to mapping your domain to Gumlet channels:
Prerequisites:
* A domain name and access to modify DNS records
* A paid Gumlet account with CNAME
## Set up a domain in channel settings
Navigate to [Video Library](https://dash.gumlet.com/video/manage) > Channel

### Create a CNAME record in your DNS records
1. Create a CNAME record for your domain. For example: `channel.example.com` is the domain where you want to map the video channel.
2. Map the CNAME value to `channel.gumlet.tv`
`channel.example.com` CNAME `channel.gumlet.tv`
Cloudflare user?
If you are adding a DNS record in Cloudflare, set proxy status to "DNS only" (not proxied); it will not work when proxied.
### Verify the CNAME
Once you add a CNAME record, click on the verify button. If everything is correct, your custom domain will be successfully created.

That's it! Your custom domain will be live with a valid SSL certificate in a few minutes. Open your custom domain in a new tab to validate the setup.

### Copy the Channel URL
Copy the channel URL from the top of the page to see the channel page on your domain.
Additionally, the videos on the channel pages are now hosted on your new domain name.
---
updatedAt: 2025-06-11T06:29:17.000Z
---
# Channel FAQs
Frequently asked questions about channels
### Can I change the background color of a channel?
No, it's not possible to change the color of the channel pages. However, our channel page is designed to adapt to light or dark mode based on browser/device mode.
### Can I add branding to the channel?
Yes, you can add a logo, title, and description to the channel.
### How to Invite Members to My Channel?
Navigate to Video Library > Channel Settings > Invite Members. You can invite members via a CSV or by entering their name and email address.
### Can I embed the channel on my website?
No, it's not possible at the moment. Our team is currently working on this feature.
### Can I embed the entire playlist on my website?
No, it's not possible at the moment. You can share the playlist URLs with your audience to show them. You can subscribe to feature requests here - .
# Channel and Playlists
Create video channels and playlists for your audience
Video channels and playlists are one of the best ways to share content with your audience. Instead of copying and pasting a new video link every time you upload, share your channel URL or invite members to access your content. They can then view updates directly in their dashboard whenever new videos are added.
Let's dig deeper into how to set up a channel.
## Channel Settings
You can create a channel that lets your audience access all your videos in one place.

### Enable Channel
Turn your video channel on or off at any time. When the channel is disabled, your audience will not be able to access it.
### Title & Description
Set a clear title and description for your channel. These appear on your channel page and are also added as meta tags to improve your channel's visibility.
### Channel Logo
Upload your brand logo so your channel reflects your visual identity and looks professional.
### Hero Banner
Add a hero banner image to highlight your channel and make it more visually engaging and SEO-friendly.
### Favicon Icon
Use your own brand icon as the favicon to make your channel look more branded and trustworthy.
### Theme Color
Choose a theme color from the color picker to align the channelchannel'sance with your brand and make it stand out.
### Included Playlists
Select one or more playlists to show on your channel. You can easily reorder them to display playlists in the exact sequence you want.
### Member Settings
We allow you to create two types of channels.
1. Public Channels
2. Members Only Channels
Read more about channel membership here - [Channel Membership](/video/channels/channel-membership)
### Dynamic Watermark Settings
When a user is logged in to the channel, we will display the dynamic watermark text as per your requirements. By default, we display the user's IP address, but you can change it to the user's name or email for added security.
_Note: You need to enable the dynamic watermark in the player settings to display the watermark._
### Disable Email Invites
We send an invitation email when you invite a member via the dashboard or API. You can disable automatic emails and instead copy the invitation link from the members list in the dashboard or from the invite API response.
### Custom Domain (CNAME)
Now add a custom domain name for your channel. With a CNAME, you can preview video channels on your domain name.
A guide to setting up a Custom Domain for a channel - [Custom Domain to a Channel](/video/channels/channel-custom-domain)
### Channel Preview
Here is the sample channel for your reference: [Channel Preview](https://gumlet.tv/channel/674fe9f2deed8d45e905a3e3/)

### RSS Link
Each of your channels includes a unique RSS Feed URL for easy subscription and updates.
## Playlists
Create shareable playlists directly from the Video CMS and share them as curated video albums.
### Create a playlist
1. Click on the "Create a Playlist" button.

2. Give it a name to be visible on your shareable page, so give it what makes sense.

3. Manage your playlists from the left bar. You can update the name, description, and order of the playlist.

Here is the sample playlist: [View Playlist](https://www.gumlet.com/channel/6463750ab1e0eada61671cde/playlist/65a7adeafd8260c6df55d088/)
### Ordering Videos in Playlist
Sort videos quickly, either alphabetically or by upload time. You can also manually reorder videos by moving them up or down. Once updated, your changes will be reflected in your embedded playlist, shareable playlist URL, and the playlist on your channel page.

### Embed Playlist
You can also embed playlists directly on your website, app, or blog to give your audience a seamless viewing experience without leaving your platform. [Learn more](/video/channels/embed-playlists).
### Show them on the channel
Enable the toggle `Show on channel` to add the playlist to the video channel. It will be added to the channel's structured information and data.
How to create engaging channels?
Here are the quick steps:
1. Create playlist(s) with the title of your video series, such as `Series 1` or `Chapter 2`, something that resonates with your content.
2. Select videos and add them to playlist(s), to have a curated album of videos.
3. Edit Playlist settings and enable `Show on channel` toggle.
4. Enable the channel and give it a title, description, upload a logo, and set up the Member settings.
5. Invite members to your channels and share your expertise.
_Note: Only one channel can be created with one workspace. There is a one-to-one mapping between the channel and workspace._
---
updatedAt: 2026-03-06T11:54:02.000Z
---
# oEmbed, Embedly & Iframely
Gumlet supports oEmbed, embedly and iframely.
Gumlet embed code and `gumlet.tv` watch pages have native support for [oEmbed](https://oembed.com/), [Embedly](https://embed.ly/provider/gumlet) and [Iframely](https://iframely.com/domains/gumlet). If you are using any platform like WordPress that utilises them, just pasting a video watch link will automatically convert that link to embed code.
## oEmbed
If you are displaying video on your own platform without using Gumlet player or embed, you can still leverage oEmbed support. Here is how you can do it.
oEmbed is a standard framework across the Internet for Embedding video and other content. We support oEmbed for the widespread acceptability of Gumlet videos across platforms and devices.
### Getting oEmbed response from Gumlet
Get the oEmbed response using a request:
```php HTTP
GET https://api.gumlet.com/v1/oembed?url={video_url}
```
```php Sample Request
GET https://api.gumlet.com/v1/oembed?url=https://gumlet.tv/watch/64be6a1705ab8a164db198a5
```
The video URL (***video\_url***) can support any of these schemes:
| This URL is ... | URL Scheme |
| :---------------- | :---------------------------------------- |
| A watch page | |
| A play embed code | |
You can add any parameters mentioned in the [Table](/video/embed-stream#parameter-reference) to customize.
Here is the sample response:
```json Sample Response
{
"version": "1.0",
"type": "video",
"provider_name": "Gumlet",
"provider_url": "https://www.gumlet.com/",
"title": "launch video 3",
"thumbnail_url": "https://video.gumlet.io/6435267e83c96cf7c982e560/64be6a1705ab8a164db198a5/thumbnail-1-0.png?v=1692964590857&width=800&height=450&dpr=2.0",
"thumbnail_width": 800,
"thumbnail_height": 450,
"width": 800,
"height": 450,
"html": ""
}
```
The response fields can be described as below:
| Field | Description |
| :---------------- | :-------------------------------------------------------------- |
| version | The type of the **oEmbed**, which in this case is *video*. |
| type | The version of the **oEmbed Specifications**. |
| provider\_name | The name of the oEmbed provider, i.e. Gumlet |
| provider\_url | The name of the oEmbed provider, i.e. |
| title | The title of the video |
| thumbnail\_url | The thumbnail URL of the video |
| thumbnail\_width | The width of the thumbnail |
| thumbnail\_height | The height of the thumbnail |
| width | The width of the video |
| height | The height of the video |
| html | The `