Dark mode Light mode
Dark mode Light mode

Learn how to use muse.ai

Explore muse.ai features and learn how to use this video hosting platform to its full potential.

Add videos

Uploading video

You can upload videos to muse.ai by dragging-and-dropping any video into the muse.ai grid, or simply click on the upload button on the top-right corner.

Drag and drop

  • 1Click and hold the file you want to upload
  • 2Drag it onto the muse.ai grid and drop it

Upload button

  • 1On the top right, click on the Upload button
  • 2Select your file in the file explorer window and confirm

Related

Record

Record video or screen

You can also record a video of yourself or your screen, and upload it directly to your muse.ai account.

Record

  • 1Click on the Record button
  • 2Choose what you want to record: Screen or Camera
  • 3Provide the necessary browser permissions
  • 4Preview your screen, then click Record to start recording
  • 5To stop recording, click Stop
  • 6Click Upload to start uploading

Account

Change username

  • 1At the top-right of the page, click on the icon.
  • 2From the dropdown, click on Settings
  • 3Edit the first line, under NAME

Change channel URL (muse.ai/username)

  • 1At the top-right of the page, click on the icon.
  • 2From the dropdown, click on Settings.
  • 3Edit the second line, under USERNAME, where it says muse.ai/yourusername.

Change password

  • 1At the top-right of the page, click on the icon.
  • 2From the dropdown, click on Settings.
  • 3In the PASSWORD row, on the right, click on Change.
  • 4Type in your current password, as well as the new one, in their respective inputs.
  • 5Click Save

Reset password

  • 1On muse.ai, click on Login.
  • 2In login modal, click on Forgot your password?
  • 3Enter the email of the account.
  • 4Click on Continue
  • 5In your inbox, you will recieve a email. In it, click on Reset password.
  • 6Type in your new password.
  • 7Click on Reset password.

Add / change card

  • 1At the top-right of the page, click on the icon.
  • 2From the dropdown, click on Settings.
  • 3On the sidebar, click on Plan.
  • 4Under Payment method click on Add new card
  • 5Fill out the card details, and click Add card to submit.

Delete your account

  • 1At the top-right of the page, click on the icon.
  • 2From the dropdown, click on Settings.
  • 3On the sidebar, click on Plan.
  • 4Click on Delete.
  • 5Click on Request deletion.
  • 6In your inbox, you will recieve a email to confirm deletion. In it, click on Permanently delete account.

Stop auto-billing

  • 1At the top-right of the page, click on the icon.
  • 2From the dropdown, click on Settings.
  • 3On the sidebar, click on Plan.
  • 4Remove all cards / payment methods by hovering over each card and clicking on the icon.

Basic operations

Easily rename, download, change visibility, share and delete videos using the muse.ai interface.

Studio mode

Studio mode is your personal area, from which you can manage all your videos and collections, no matter their visibility.

To manage your video, you need to be in Studio mode. Switch any time by clicking on the icon on the top-right, then selecting Studio.

Rename a video

  • 1Select it
  • 2In the bottom-bar, click on Rename
  • 3Type in new name
  • 4Click Save

Download a video

  • 1Select it
  • 2In the bottom-bar, click on Download

Change visibility

  • 1Select it
  • 2In the bottom-bar, click on Change visibility
  • 3Select the desired option
Private: only the owner can view. Hidden: only embedded, not visible on muse.ai. Unlisted: anyone with the link can view. Password: anyone with the password can view. Public: anyone can view.

Delete a video

  • 1Select it
  • 2In the bottom-bar, click on Delete
  • 3Confirm by clicking on Delete video

Add subtitles

  • 1In the video page, click on the icon.
  • 2Click on Manage subtitles.
  • 3Click on Upload subtitles and select the desired file.
  • 3Rename the subtitles to the correct language.

Change cover/thumbnail

  • 1In the video page, click on the icon.
  • 2Click on Change cover.
  • 3Upload your own image, or type in the moment when the frame you want to use as cover is shown (e.g. 0:20).
  • 3Click Set cover.

Portals

Portals are an all-in-one custom subscription service for your content. Easily create a beautiful page for your videos and start start onboarding your audience!

Create a Portal

  • 1Go to Portals by clicking on Portals in the sidebar
  • 2In the top-right, click on Create new Portal
  • 3Type in new Portal name
  • 4Type in Portal description
  • 5Select the desired collection from the dropdown.
  • 6Click Create

Monetize Portals with subscriptions

  • 1Go to Portals by clicking on Portals in the sidebar
  • 2Click on icon of the Portal you want to monetize
  • 3Click on Edit
  • 4Click on Add subscription
  • 5Name the subscription tier - if left empty, the default will be "Tier 1"
  • 6Set your monthly & yearly pricing - if left empty, this tier will be free by default. To not include monthly or yearly billing options, leave the corresponding field empty.
  • 7Describe what the tier includes in the description box (optional)
  • 8Click Create
  • 9Click Save & Update

Edit a Portal

  • 1Go to Portals by clicking on Portals in the sidebar
  • 2Click on icon of the Portal you want to monetize
  • 3Click on Edit
  • 4Click on Add subscription
  • 5Edit title, description, logo, or subscriptions.
  • 6Click Save & Update

Related

Collections

Collections are groups of videos you can create and share with anyone.

Create a collection

  • 1Go to Collections by clicking on Collections in the sidebar
  • 2In the top-right, click on New collection
  • 3Type in new collection name
  • 4Select desired visibility (default is Private)
  • 5Click Create

Add videos

  • 1Go to Videos by clicking on Videos in the sidebar
  • 2Select the videos you want to add
  • 3In the bottom-bar, click on Add to collection
  • 4Click on the collection you want to add the videos to

Change visibility

  • 1Go to Collections by clicking on Collections in the sidebar
  • 2Click on the Collection you want to make public or private
  • 3Inside the collection, on the top-left next to the title, click on or icon
  • 4Select the desired visibility
Private: only the owner can view. Hidden: only embedded, not visible on muse.ai. Unlisted: anyone with the link can view. Password: anyone with the password can view. Public: anyone can view. Note: collection visibility does not affect video or subcollection visibility. Example 1: you have an unlisted video in a public collection, the video will not be visible in the collection. Example 2: you have a public video in an unlisted collection, the video will be visible in the collection.

Create subcollection

  • 1Go to collection in which you want to add a subcollection
  • 2Click on New collection in the topbar
  • 3Give the new collection a name
  • 4Select the desired visibility
  • 4Click on Create

Move subcollection

Click and drag collections and subcollections to reorder them.

  • 1Click on the collection you want to move
  • 2Drag it over the collection you want to add it to
  • 3When the destination collection is highlighted, drop it

Related

Channel

Each muse.ai account has a customizable Channel, which gathers all its public videos and collections. Your channel acts as a hub for your public content, and is a great way to share it with your audience. Private, Unlisted and Hidden videos will not show on the channel.

Go to your channel

  • 1When logged in, click on the icon to open the Account options dropdown.
  • 2Click on Channel

Customize channel

  • 1When in your Channel, click in Edit channel in the top-right.
  • 2Click and edit the text field you want to edit.
  • 3Click in Stop editing in the top-right.
  • 1When in your Channel, click in Edit channel in the top-right.
  • 2Click and edit the featured video, where it says Change featured video
  • 3Select the video you wish to set as featured, and click on Set as featured video in the bottom-right of the modal.
  • 4Click in Stop editing in the top-right.

Related

Immersive view

Immersive view is an alternative design for your collections. You can use immersive view to showcase a Collection and its videos to people who don't have a muse.ai account, or simply to share a Collection in a stylish way.

Open immersive view

  • 1Go to Collections by clicking on Collections in the sidebar
  • 2Click on the Collection you want
  • 3In the top-right, click on Immersive view

Share immersive view

  • 1Go to Collections by clicking on Collections in the sidebar
  • 2Click on the Collection you want
  • 3In the top-right, click on Immersive view
  • 3Copy the URL in the address bar. If the Collection isn't private, anyone with the link will be able to view the channel.

Related

Share

Share a video

  • 1Select the video
  • 2In the bottom-bar, click on Share
  • 3If the video is Private, you'll need to change its visibility to Public or Unlisted
  • 3Click on Copy or select and copy the URL in the address box

Get embed code

  • 1Select the video
  • 2In the bottom-bar, click on Share
  • 3Click on icon
  • 4Click on Copy

Customize player

  • 1Select the video
  • 2In the bottom-bar, click on Share
  • 3Click on icon
  • 4Click on Advanced embed options
  • 5Customize the player using the panel on the right-side
  • 6Click on Copy

Set domain restrictions

  • 1Select the video
  • 2In the bottom-bar, click on Share
  • 3Click on icon
  • 4Click on Configure domain restrictions
  • 5Input your domains and press Add to add them to the list of approved domains
  • 6Click on Copy

Share link to video file

  • 1Select the video
  • 2In the bottom-bar, click on Share
  • 3Click on icon
  • 4Click on Copy for the file you want to share.

Share expiring linkPlus Plan

  • 1Select the video
  • 2In the bottom-bar, click on Share
  • 3Click on icon
  • 4Click on Configure video restrictions
  • 5Click on Limited access
  • 6If you haven't already, click on Set video visibility to Password
  • 7Configure the link and click Add link

Set geo-restrictionsPlus Plan

  • 1Select the video
  • 2In the bottom-bar, click on Share
  • 3Click on icon
  • 4Click on Configure video restrictions
  • 5Click on Geographical
  • 6Click on Add region to add them to the EXCLUSIVE TO or BLOCKED IN lists.

oEmbed

muse.ai fully supports oEmbed, allowing compatible websites to display embedded content from just a regular link. This is useful for social media websites, website builders, and more.

Check oEmbed compatibility

Related

Edit & Label

On muse.ai, you can label anything.

Speech

Edit transcript

  • 1Open the video you want to edit
  • 2In the panel on the right, go to the Speech tab
  • 3On the bottom-right, click on Edit
  • 4Click on the paragraph you want to edit, making it editable
  • 5Type in what you want
  • 6In the timeline under the video, move the handles to set the start and end times of the paragraph you have selected
  • 7Click Done
Click on to preview the segment you have selected Use , , and to switch between spectrogram, image, and sound timeline styles Use your mouse's scrollwheel or use pinch to zoom in and out on the timeline

Add to transcript

  • 1Open the video you want to edit
  • 2In the panel on the right, go to the Speech tab
  • 3On the bottom-right, click on Edit
  • 4Use the timeline below the video to navigate to where you want to add a new paragraph
  • 5Click Add
  • 6Type in what you want
  • 7In the timeline under the video, move the handles to set the start and end times of the new paragraph
  • 8Click Done
Click on to preview the segment you have selected Use , , and to switch between spectrogram, image, and sound timeline styles Use your mouse's scrollwheel or use pinch to zoom in and out on the timeline

People

Edit people

  • 1Open the video you want to edit
  • 2In the panel on the right, go to the People tab
  • 3Click on any person's name and type to rename it
  • 4Click Save
Found the same person multiple times? Give them the same name and they will be merged into one Hover over a picture and click on to remove that person from the list

Objects

Label objects

  • 1Open the video you want to edit
  • 2In the panel on the right, go to the Objects tab
  • 3On the bottom-right, click on Edit
  • 4Click-and-drag over the video to draw a box around the object you want to label
  • 5Give the object a name by clicking on the box header
  • 6In the timeline under the video, move the handles to set when the object comes in and out of view
  • 7Click Done
Click on to preview the segment you have selected Use , , and to switch between spectrogram, image, and sound timeline styles Use your mouse's scrollwheel or use pinch to zoom in and out on the timeline

Edit an object label

  • 1Open the video you want to edit
  • 2In the panel on the right, go to the Objects tab
  • 3On the bottom-right, click on Edit
  • 4In the panel on the right, click on the name of the object you want to edit to navigate to the next time it shows up
  • 5Rename the object by clicking on the box header or resize its bounding-box by dragging its corners
  • 6In the timeline under the video, move the handles to set when the object comes in and out of view
  • 7Click Done
Click on to preview the segment you have selected Use , , and to switch between spectrogram, image, and sound timeline styles Use your mouse's scrollwheel or use pinch to zoom in and out on the timeline

Text

Label text

  • 1Open the video you want to edit
  • 2In the panel on the right, go to the Text tab
  • 3On the bottom-right, click on Edit
  • 4Click-and-drag over the video to draw a box around the text you want to label
  • 5Give the text a name by clicking on the box header
  • 6In the timeline under the video, move the handles to set when the text comes in and out of view
  • 7Click Done
Click on to preview the segment you have selected Use , , and to switch between spectrogram, image, and sound timeline styles Use your mouse's scrollwheel or use pinch to zoom in and out on the timeline

Edit a text label

  • 1Open the video you want to edit
  • 2In the panel on the right, go to the Text tab
  • 3On the bottom-right, click on Edit
  • 4In the panel on the right, click on the preview of the text you want to edit to navigate to when it shows up
  • 5Rename the text by clicking on the box header or resize its bounding-box by dragging its corners
  • 6In the timeline under the video, move the handles to set when the text comes in and out of view
  • 7Click Done
Click on to preview the segment you have selected Use , , and to switch between spectrogram, image, and sound timeline styles Use your mouse's scrollwheel or use pinch to zoom in and out on the timeline

Actions

Label actions

  • 1Open the video you want to edit
  • 2In the panel on the right, go to the Actions tab
  • 3On the bottom-right, click on Edit
  • 4Click-and-drag over the video to draw a box around the action you want to label
  • 5Give the action a name by clicking on the box header
  • 6In the timeline under the video, move the handles to set when the action starts and when it ends
  • 7Click Done
Click on to preview the segment you have selected Use , , and to switch between spectrogram, image, and sound timeline styles Use your mouse's scrollwheel or use pinch to zoom in and out on the timeline

Edit an action label

  • 1Open the video you want to edit
  • 2In the panel on the right, go to the Actions tab
  • 3On the bottom-right, click on Edit
  • 4In the panel on the right, click on the name of the action you want to edit to navigate to the next time it shows up
  • 5Rename the action by clicking on the box header or resize its bounding-box by dragging its corners
  • 6In the timeline under the video, move the handles to set when the action starts and when it ends
  • 7Click Done
Click on to preview the segment you have selected Use , , and to switch between spectrogram, image, and sound timeline styles Use your mouse's scrollwheel or use pinch to zoom in and out on the timeline

Sounds

Label sounds

  • 1Open the video you want to edit
  • 2In the panel on the right, go to the Sounds tab
  • 3On the bottom-right, click on Edit
  • 4Click Add
  • 5Give the sound a name
  • 6In the timeline under the video, move the handles to set when the sound starts and when it ends
  • 7Click Done
Click on to preview the segment you have selected Use , , and to switch between spectrogram, image, and sound timeline styles Use your mouse's scrollwheel or use pinch to zoom in and out on the timeline

Edit a sound label

  • 1Open the video you want to edit
  • 2In the panel on the right, go to the Sounds tab
  • 3On the bottom-right, click on Edit
  • 4In the panel on the right, click on the name of the sound you want to edit to navigate to the next time it can he heard
  • 5On the bottom-left of the video, rename the sound by clicking on its label
  • 6In the timeline under the video, move the handles to set when the sound starts and when it ends
  • 7Click Done
Click on to preview the segment you have selected Use , , and to switch between spectrogram, image, and sound timeline styles Use your mouse's scrollwheel or use pinch to zoom in and out on the timeline

Related

Cut clips

Save and share the best moments of any video by cutting clips of its highlights.

Cut a clip from a video

  • 1Open the video you want cut a clip from
  • 2Under the bottom-right of the video, click on
  • 3In the timeline under the video, move the handles to set the start and end times of the new clip
  • 4In the panel on the right, you can set the new clip's title, description and visibility
  • 5Click Save
Click on to preview the segment you have selected Use , , and to switch between spectrogram, image, and sound timeline styles Use your mouse's scrollwheel or use pinch to zoom in and out on the timeline

Related

Player

Stream videos in 4K with DASH/HLS streaming, cast to any screen using Chromecast or AirPlay, and search for anything inside your videos using the muse.ai HTML5 responsive video player.

Subtitles

  • 1Click on the icon at the bottom-right of the player.
  • 2Click on Subtitles and select the subtitles you want.
Selecting subtitles

Video playback quality

  • 1Click on the icon at the bottom-right of the player.
  • 2Click on Quality and select the resolution you want.
Selecting video quality

Video playback speed

  • 1Click on the icon at the bottom-right of the player.
  • 2Click on Speed and select the speed you want.
Playback speed

Chromecast / AirPlay

  • 1Click on the or icon in the bottom-right of the player.
  • 2Select the device to which you want to cast.
  • Chromecast is only available on Chrome browsers, with a Chromecast device on the same WiFi network.
  • AirPlay is only available on Apple devices, with an AirPlay device on the same WiFi network.
Chromecast

Video chapters

  • 1Add chapters by typing the timestamps followed by chapter titles in the video description, one per line. Start with 0:00 and keep chapters at least 8 seconds long. For example:
    0:00 Intro
    3:05 Phase One
  • 2Place your cursor over the timeline to preview the chapter names.
  • 3Click on the timestamps to navigate to the beginning of each chapter.
Video chapters

Keyboard controls

[space] / k Play / Pause
l Skip 10 seconds
j Back 10 seconds
. Next frame
, Previous frame
Skip 5 seconds
Back 5 seconds
Volume up
Volume down
f Toggle fullscreen
s Focus search field

Related

Player customization

You can style the muse.ai player in order to match your website, logo or outfit!

We offer some styling options when generating the embed code, but you can also use CSS to get creative. To do so, you will need to:

Below are some examples you can try out. To edit them live, click on the "Edit in JSFiddle" button to expand the examples.

Centered play button (JS)

Centered play button (iframe)

Player w/ accent color + logo (JS)

Player with ads (JS)

No user controls (iframe)

Record & upload your Zoom meetings to muse.ai

Zoom logo

How to install the muse.ai app on Zoom

How to record and upload your Zoom meetings to muse.ai

  • 1When in a Zoom meeting, select Record to the cloud
  • 2Once you stop the Zoom recording, it will begin uploading to your muse.ai account

How to uninstall the muse.ai app on Zoom

  • 1Go to the App Marketplace and login
  • 2Click on Manage at the top right
  • 3On the left, click on Added Apps
  • 4Find the muse.ai app and click Remove

Player integrations

Wordpress logo

Embed in Wordpress

Our standard embed codes work on Wordpress webpages. However, some Wordpress hosting services don't allow for custom scripts. To address these cases we also provide an option to embed your video in an iframe. You can toggle this option by checking the Use iframe checkbox in the embed modal.

  • 1Go to the Page or Post in which you want to embed the video.
  • 2Type / or click on the icon.
  • 3Select the Custom HTML block.
  • 4Paste your embed code.
You can also use our Wordpress plugin which will convert pasted video links into embeddings, and lets you use special shortcodes.
In order to embed videos for free using Wordpress, we recommended to self-host, as some Wordpress hosting options charge for this ability.
Squarespace logo

Embed in Squarespace

The Squarespace free plan only allows for iframe embed codes, which you can get by checking the Use iframe checkbox in the embed modal. To use our standard embed codes, you will need to upgrade your Squarespace plan.

  • 1Go to the Page in which you want to embed the video.
  • 2Click on Edit.
  • 3Click on the icon at the top of each section.
  • 4Select the Code block.
  • 5Replace the placeholder content with your embed code.
  • 6Click Apply.
Wix logo

Embed in Wix

  • 1Go to the Page in which you want to embed the video.
  • 2Click on the icon on the left.
  • 3In the pop-up menu, select Embed Custom Embeds Embed a Widget.
  • 4Click on Enter code, above the new block.
  • 5Replace the placeholder content with your embed code.
  • 6Paste your code and click Update.
  • 7Resize the block to your liking.
Kajabi logo

Embed in Kajabi

  • 1Go to the Page in which you want to embed the video.
  • 2On the panel on the left, click on Add Content block.
  • 3On the panel on the left, click on Video Embed block.
  • 4Replace the code in the Embed Code box with your own.
  • 5Click Save.
MemberVault logo

Embed in MemberVault

  • 1Go to a Lesson page.
  • 2Set the Video Type to Other.
  • 3Paste your embed code in the Video ID field.
  • 4Scroll to the bottom and click Save Lesson.

Embedded Player

Clean yet powerful embedded video player you can customize to your needs.

Get video embed code

  • 1Select the video
  • 2In the bottom-bar, click on Share
  • 3Click on icon
  • 4Click on Copy to copy the embed code

Set call-to-action screenPlus Plan

  • 1Select the video
  • 2In the bottom-bar, click on Share
  • 3Click on icon
  • 4Click on Advanced embed options
  • 5Scroll to CALL TO ACTION section
  • 6Fill in the input fields
  • 6Click Copy to copy the embed code

Custom usage

To embed our player on your website you only need two lines of code:

STANDARD
<div class="muse-video-player" data-video="y8zH87z" data-width="600"></div>
<script src="https://muse.ai/static/js/embed-player.min.js"></script>
IFRAME
<iframe src="https://muse.ai/embed/y8zH87z?start=20&volume=75"
        width="576" height="324" frameborder="0" allowfullscreen></iframe>

For the STANDARD method, simply set the data-video value to your video ID, which you can find in the address bar of your video on muse.ai.

If you have more than one video on your page, you only need to include the <script> tag once. It's also a good practice to place it in the <head> section or at the bottom of the <body> section.

You can configure the player size by setting the data-width or data-height attributes. If neither of them is set the player will default to 640x360.

You can configure the following values:

data-videoVideo ID.
data-widthPlayer width. Can be provided as pixels (e.g. "560") or a relative value (e.g. "100%").
data-heightPlayer height. Can be provided as pixels (e.g. "560") or a relative value (e.g. "100%").
data-autoplaySet to "1" to play the video automaticaly. Set to "visible" to play when video enters the viewport.
data-loopSet to "1" to restart the video after it finishes.
data-startThe time at which the video should start playing.
data-resumeSet to "1" to seek back to the last viewing position when the video loads.
data-volumeSet volume to a value between 0 and 100.
data-consentSet to "1" to indicate the viewer has already given consent to view sensitive content.
data-shareSet to "1" to show a share icon in the player.
data-subtitlesEnable subtitles by default, set to "auto" to show automatically generated subtitles, or set to the name of uploaded subtitles. To show the auto-translated subtitles by default, use Chinese, French, German, Portuguese, or Spanish.
data-shortcutsSet to "0" to disable keyboard shortcuts.
data-downloadSet to "1" to enable downloads.
data-controls Enable or disable player controls. A comma-separated list of controls prepended with plus or minus signs. E.g. "-fullscreen,+subtitles" will show a subtitle toggle and hide the fullscreen toggle. Includes fullscreen, subtitles, volume, settings, chromecast, and airplay.
data-playlistEither a collection ID or a comma-separated list of video IDs to play in a sequence.
data-ldSet to "0" to disable Linked Data markup. Enabled by default. This helps with SEO by hinting search engines to also display this page in the video category.
data-adInclude VAST / VPAID / VMAP tags to show your own ads.

Embedding on Wordpress, Squarespace, or Wix pages? See Player integrations.

Advanced usage

If you want more control over the player and its interactions with your website, you can use the JavaScript library. This allows you to programmatically create the player and access more of its functions.

To use the JavaScript library you will first of all need to include the following embedded player script (see "Simple usage"). Then, creating an instance of a player is easy:

<div id="your-container"></div>
<script src="https://muse.ai/static/js/embed-player.min.js"></script>
<script>
  const player = MusePlayer({
    container: '#your-container',
    video: 'y8zH87z',
    width: 400
  });
</script>

Using the player object you can perform basic operations on your video. For example, to pause the video, call player.pause().

MusePlayer parameters:
containerHTML element that will contain the player.
autoplaySet to true to play the video automatically. Set to 'visible' to play when video enters the viewport.
loopSet to true ro restart the video after it finishes.
startTime at which the video should start playing.
resumeSet to true to seek back to the last viewing position when the video loads.
volumeSet volume to a value between 0 and 100.
widthDesired player width. Can be provided as an integer (in pixels) or a relative value as a string (e.g. '100%').
heightDesired player height. Can be provided as an integer (in pixels) or a relative value as a string (e.g. '100%').
titleSet to false to hide the title.
searchSet to false to hide the search functionality.
linksSet to false to disable links to muse.ai.
sizingSet to 'fill' to indicate that the player should fill the entire container's size and introduce black bars as necessary. Set to 'fit' to span the parent container while maintaining the player's aspect ratio. Set to 'cover' to span the parent container disregarding the player's aspect ratio. When using these values make sure that the container's parent has explicit width and height that don't depend on the player. If sizing is set, width and height will be ignored. Default: null.
logoSet to false to hide branding on the player.
styleSet to minimal for minimal player controls, and to no-controls to hide controls entirely.
consentSet to true to indicate the viewer has already given consent to view sensitive content.
linkedDataSet to false to disable Linked Data markup. Enabled by default. This helps with SEO by hinting search engines to also display this page in the video category.
shareSet to true to show a share icon in the player.
subtitlesEnable subtitles by default, set to 'auto' to show automatically generated subtitles, or set to the name of uploaded subtitles. To show the auto-translated subtitles by default, use Chinese, French, German, Portuguese, or Spanish.
shortcutsSet to false to disable keyboard shortcuts.
downloadSet to true to enable downloads.
controls Enable or disable player controls. A list of control names prepended with plus or minus signs. E.g. ["-fullscreen", "+subtitles"] will show a subtitle toggle and hide the fullscreen toggle. An example that uses all available options: ["-fullscreen", "+subtitles", "-volume", "-settings", "-chromecast", "-airplay"].
playlistEither a collection ID or a list of video IDs to play in a sequence.
adInclude VAST / VPAID / VMAP tags to show your own ads.
MusePlayer methods:
play()Play the video.
pause()Pause the video.
seek(time)Skip to the specified time.
search(query, seek) Search using the provided query. Set the seek argument to true to seek the video to the first result after performing the search.
on(event, listener)Set up a function that will be called when the specified event happens.
off(event, listener)Remove a previously set up event listener.
setVideo(video)Load the video into the player from the given video ID.
setSpeed(rate)Set the rate at which to play the video.
setVolume(volume)Set volume to a value between 0 and 100.
MusePlayer events:
playVideo is playing.
pauseVideo is paused.
endedVideo has ended.
metadataPlayer metadata (such as title, description, width, and height) is ready. The metadata object will be passed to the listener as the first argument.
timeupdateEvent fired when the playback time of the player changes. The current playback time in seconds will be passed to the listener as the first argument.
searchA search is performed. The query string will be passed as the first argument.
speedPlayback speed changed. The new speed is passed as the only argument.

For example:

player.on('metadata', metadata => {
  document.getElementById('video-title').innerText = metadata.title;
  document.getElementById('video-description').innerText = metadata.description;
});

Embedding video data

You can also embed video metadata such as description, transcript, and detected text that appears in the video straight into your website. This is especially useful for rendering full embedded video pages in your websites, and an unparalleled way to do search engine optimization for your videos. Here's the code that you'll need:

<div class="muse-video-data" data-video="FTBViRx" data-content="description"></div>
<script src="https://muse.ai/static/js/embed-player.min.js"></script>

Note that you can skip the <script> line if you already have it elsewhere on that page.

Possible data-content values:
descriptionVideo description.
speechVideo transcript.
objectsA list of detected objects that appear in the video.
scenesA list of distinct scenes in the video.
soundsA list of distinct sounds in the video.
textA list of detected words that appear in the video as printed text.
actionsA list of distinct actions in the video.

Video Pages

As an alternative to embedding videos on your website, you can simply download a ready-made fully responsive HTML file and use it on your own website as a standalone page.

Centered video

Simple page that has the video centered both vertically and horizontally.

Example
<div class="container">
  <div id="video-player"></div>
</div>
<script src="https://muse.ai/static/js/embed-player.min.js"></script>
<script>
  const player = MusePlayer({
    container: document.getElementById('video-player'),
    video: 'sLFaX4p',
    autoplay: true,
    loop: true,
    volume: 0,
    sizing: 'fit',
  });
</script>

Video + title + description

Simple page that has the video, the video title, and video description, horizontally centered.

Example
<div class="container">
  <h1 id="video-title"></h1>
  <div id="video-player"></div>
  <h2 id="video-description"></h2>
</div>
<script src="https://muse.ai/static/js/embed-player.min.js"></script>
<script>
  const player = MusePlayer({
    container: '#video-player',
    video: 'sLFaX4p',
    autoplay: true,
    loop: true,
    volume: 0,
    width: 'parent',
  });
  player.on('metadata', metadata => {
    document.getElementById('video-title').innerText = metadata.title
    document.getElementById('video-description').innerText = metadata.description
  });
</script>

Video + interactive transcript

Simple two-pane layout with the video and its interactive auto-generated transcipt.

Example
<div id="container-video" class="container">
  <h1 id="video-title"></h1>
  <div id="video-player"></div>
  <h2 id="video-description" onclick="expandDescription()">
</div>
<div class="container-transcript">
  <div class="header-transcript">
    <h2>Transcript</h2>
  </div>
  <div id="transcript-list">
    <table><tbody id="speech-container"></tbody></table>
  </div>
</div>

<script src="https://muse.ai/static/js/embed-player.min.js"></script>
<script>
  // Load player with video VBdrD8b into #video-player.
  const svid = 'VBdrD8v';
  const player = MusePlayer({
    container: '#video-player',
    video: svid,
    width: 'parent',
    showTitle: false,
  });
  // Load video's title and description.
  player.on('metadata', metadata => {
    document.getElementById('video-title').innerText = metadata.title
    if (metadata.description.length > 0) {
      document.getElementById('video-description').classList.add('show');
      document.getElementById('video-description').innerText = metadata.description
    }
    document.getElementById('video-description').innerText = metadata.description
  });

  // Highlight the current word.
  player.on('timeupdate', function(time) {
    document.querySelectorAll('.word').forEach(function(word) {
      if (Number.parseFloat(word.dataset.start) <= time && Number.parseFloat(word.dataset.end) > time) {
        word.classList.add('current');
        word.scrollIntoView({behavior: "smooth", block: "center", inline: "end"});
      } else if (word.classList.contains('current')) {
        word.classList.remove('current');
      }
    });
  });

  // Fetch words and place them insde container-transcript as phrases.
  fetch(
    'https://muse.ai/api/files/i/speech/' + svid, {mode: 'cors'}
  )
  .then(function(response) {
    return response.json();
  })
  .then(function(words) {
    // Sort words by time.
    words.sort((a, b) => a[0] - b[0]);

    // Group into phrases.
    let phrases = [];
    let wordPrev;
    words.forEach(word => {
      let paragraphStart = word[2] == '\n' || wordPrev && word[0] - wordPrev[1] > 1.2;
      if (phrases.length == 0 || paragraphStart && wordPrev[2].trim()) {
        phrases.push([]);
      }
      if (word[2].trim()) {
        phrases[phrases.length - 1].push(word);
      }
      wordPrev = word;
    });

    // Draw phrases.
    let list = document.getElementById('speech-container');
    phrases.forEach(phrase => {
      if (!phrase.length) {
        return;
      }

      let time = phrase[0][0];
      let timeLen = time > 3600 ? 8 : (time > 600 ? 5 : 4);
      let timeStart = new Date(time * 1000).toISOString().substr(19 - timeLen, timeLen);
      let wordsHTML = '';
      phrase.forEach(word => {
        const punctJoin = ';:.,'.includes(word[2]);
        const classes = 'word' + (punctJoin ? ' punct-join' : '') + ('-–'.includes(word[2]) ? ' punct-space' : '');
        const space = punctJoin ? '' : ' ';
        wordsHTML += `${space}<span class="${classes}" data-start="${word[0]}" data-end="${word[1]}">${word[2]}</span>`;
      });
      list.insertAdjacentHTML('beforeend', `
      <tr>
        <td class="phrase-time">${timeStart}</td>
        <td class="phrase">${wordsHTML}</td>
      </tr>
      `);
    });
  });

  // On word click/touch, seek video to where the word is spoken.
  document.addEventListener('click', e => {
    if (e.target.classList.contains('word')) {
      player.seek(Number.parseFloat(e.target.dataset.start));
      player.play();
    }
  });

  function expandDescription() {
    var videoDescription = document.getElementById('video-description');
    videoDescription.classList.toggle('open');
  }

  const onScroll = () => {
    const containerVideo = document.getElementById('container-video');
    const scroll = document.documentElement.scrollTop;
    if (scroll > 70) {
      containerVideo.classList.add('scrolled');
    } else {
      containerVideo.classList.remove('scrolled');
    }
  }

  window.addEventListener('scroll', onScroll);
</script>

Video + interactive chapters

Simple two-pane layout designed for users who want to provide clickable chapters for navigating a video.

Example
<div class="container">
  <div id="video-player"></div>
</div>
<div class="container-chapters">
  <div class="header-chapters">
    <h2>Moments</h2>
  </div>
  <div id="container-list">
    <ol>
      <li data-start="0.0">Moment One     (0s)</li>
      <li data-start="2.5">Moment Two   (2.5s)</li>
      <li data-start="9.7">Moment three (9.7s)</li>
    </ol>
  </div>
</div>
<script src="https://muse.ai/static/js/embed-player.min.js"></script>
<script>
  const player = MusePlayer({
    container: '#video-player',
    video: 'sLFaX4p',
    autoplay: true,
    loop: true,
    volume: 0,
    width: 'parent',
  });
  document.querySelectorAll('#container-list li').forEach(li => {
    li.addEventListener('click', e => {
      player.seek(Number.parseFloat(e.currentTarget.dataset.start));
    });
  });
</script>

Video list

Group of videos with one player, created by listing their ID's. The videos in a Video Group do not need to be in the same Collection.

Example
<div id="muse-video-player" data-width="900"></div>
<div id="vgrid"></div>
<script src="https://muse.ai/static/js/embed-player.min.js"></script>
<script>
  const player = MusePlayer({
    container: '#muse-video-player',
    video: 'R7c1PrQ',
    sizing: 'fill',
  });
  function MuseList(vlist)
  {
    vlist.map(x => {
      fetch(`https://muse.ai/api/files/info/${x}`)
        .then(resp => resp.json())
          .then(jdata => {
            var i = document.createElement( "img" );
            i.src = new URL('thumbnails/thumbnail.jpg', jdata.url);
            i.onclick = function () {
              if (player.options.video === jdata.svid){
                player.play();
              }  else {
                player.setVideo(jdata.svid);
              }
            };
            document.getElementById('vgrid').appendChild(i);
          })
    })
  }
  var vlist = ['R7c1PrQ', 'cABMGwV', 'x41yzAr', 'PdPox4y', '9Hdap75'];
  MuseList(vlist);
</script>

FAQ

Frequently asked questions

Is there a bandwidth limit?

We do not limit bandwidth, but operate according to a fair use policy. If a customer consumes so much bandwidth that it starts affecting their own and everyone else's viewers, we will get in touch to negotiate a better solution.

Is there a file-size limit?

No. File size is only limited by the storage allowance of your plan.

Can I choose who can see my videos?

Yes, you set the visibility status of your videos and collections. You can choose from Private, Unlisted, and Public. Using our embedded player you can also restrict plays to certain domains. See how to change visibility status.

What type of content is allowed?

We allow for any type of lawful content, provided it does not contain threats directed at any individual or group of people. Offensive content may be flagged as such, and users must consent to watching it.

Can I cancel anytime?

Yes, you can cancel anytime. Simply go to "Settings / Plan / Delete", and follow the steps.

No results