Upload, embed, and manage WordPress video

Once the FastPix plugin is installed and connected, you can add videos, embed them in posts and pages, control who can watch, read analytics, and run live streams, all from the WordPress admin.

If you haven’t connected the plugin yet, start with Integrate FastPix with WordPress.


Upload videos

After you connect your FastPix account, you can add videos from three sources: a file, a URL, or your existing Media Library.

FastPix Add videos screen with a drag-and-drop area and a video URL field

Upload a file

  1. In your WordPress admin panel, go to FastPix > Add media.
  2. Do one of the following:
    • Drag one or more video or audio files into the upload area.
    • Click Browse and select files from your computer.
  3. Click Next to name the batch and choose settings.
  4. Configure the following media settings:
    • Title: An optional batch title. Leave it blank to use each file’s name.
    • Who can watch: Anyone, Private (signed tokens), or DRM.
    • Quality: Standard, Pro, or Premium. This is locked after upload.
    • Top resolution: The highest rendition FastPix produces. Defaults to 1080p.
    • Allow downloads: Off, Video (MP4), Audio only (M4A), or Video + audio.
    • Even out volume: Normalizes audio loudness.
    • Subtitles: On by default in your site language when FastPix supports it.
    • Lock to this site: Restricts playback to your domain. Add other domains you own under Allow on, or switch to a block list under Sites not on the list.
  5. Click Upload.
Media settings dialog with access, quality, resolution, and domain-lock options before upload

Uploads are resumable and run in the browser in 5 MB chunks. You can leave the page after starting. If the browser is closed mid-upload, the library shows a Resume upload action that asks for the same file again and continues from where it stopped.

NOTE: Nothing uploads until you click Upload. If FastPix is not responding, the screen pauses uploads rather than queueing a file it cannot reliably send.

Upload from a URL

  1. On the Add media screen, paste a public video URL under Or upload using video URL.
  2. Click Upload.

FastPix fetches the file directly. See Supported platforms for the sources FastPix can ingest.

Move existing Media Library videos

The migration tool moves videos that already live in your WordPress Media Library to FastPix while keeping the originals.

  1. Go to FastPix > Videos and click Move existing video.
  2. Click Scan to find video attachments. The scan runs in the background.
  3. Review the list. Choose Migrate all or Choose which ones, then click Migrate. You can Pause and Resume at any time.
Migration tool showing Migrate all and Choose which ones options with scanned videos
  1. Watch the progress as each video is submitted, processed, and made ready. When every item passes verification, Cleanup becomes available. It removes the local files.
Migration progress showing submitted, processing, ready, and failed counts

Migration never edits post content. Existing embeds of a migrated attachment play from FastPix at render time. Until you run cleanup, any item can be reverted to its local file.

NOTE: Cleanup is only offered for a batch whose items passed verification. After cleanup, there is nothing to revert to.


Embed videos in posts and pages

You can add FastPix videos to any post or page with the Gutenberg block or the shortcode. Both use the same renderer and the same per-embed options. Nothing edits your post content: embeds render at view time.

Add a video with the block

  1. In the block editor, add the FastPix Video block from the Media category.
Searching for the FastPix Video block in the WordPress block editor
  1. Pick a video from your library, or upload one now.
  2. Adjust the player options in the block sidebar.
FastPix Video block inserted in a page with playback options in the block sidebar

The block saves a static fallback (poster and link) in the post, so published pages degrade gracefully if the plugin is ever deactivated. Public videos show the poster and a link; private and DRM videos show a short message.

Add a video using the shortcode

[fastpix id="playback_ID"]

Shortcode parameters

ParameterRequiredDescriptionDefault
idYesThe media ID of your video. videoid, media_id, and playback_id are accepted as aliases.None
streamidNoA live stream ID instead of a media ID. See Set up live streaming.None
autoplayNoStart playback on load.false
mutedNoStart muted. Required by browsers for autoplay.false
loopNoRestart when the video ends.false
controlsNoShow the control bar. nocontrols is a shorthand for false.true
chaptersNoShow chapter markers.true
transcriptNoShow the transcript panel.false
captionsdefaultNoTurn captions on by default.false
lazyloadNoLoad the player only when it scrolls into view.true
accentcolourNoPlayer accent color. accentcolor is accepted.#6D22CD
posterNoPoster image URL. Wins over thumbnailtime.The video’s thumbnail
thumbnailtimeNoSecond of the video used for the poster.1
starttimeNoSecond to start playback from.0
aspectratioNoForce an aspect ratio, for example 16:9.The video’s own
clicktoplayNoPlay on click. noclick is a shorthand for false.true
keyboardNoKeyboard shortcuts. nokeys is a shorthand for false.true
complete_atNoLesson videos only. Percentage watched that counts as complete.90
track_viewerNoLesson videos only. Record who watched.false

Booleans accept true or false. A bare flag also works: [fastpix id="…" autoplay muted].

Example

[fastpix id="abc123def456" autoplay muted accentcolour="#0055FF" starttime="30"]

Find your video’s media ID

  1. In your WordPress admin panel, go to FastPix > Videos.
  2. Find the video in the table. The Media ID and Playback ID columns show both identifiers.
  3. Click the video to open its details and copy the ready-made shortcode.

When you publish your post or page, WordPress renders the FastPix player with your specified configuration. Public embeds are cached for an hour. Private and DRM embeds are signed on every render.


Manage videos

You can view and manage all uploaded videos from the Videos screen.

Browse the library

  1. In your WordPress admin panel, go to FastPix > Videos.
  2. Switch between Table and Grid view.
  3. Filter by Status (Ready, Processing, Failed), Access (Public, Private, DRM), and Source (Upload, URL, Migrated, Dashboard, Live).
  4. Search titles, transcripts, and chapters from the search box.
FastPix video library table with media ID, playback ID, status, and access columns

Authors see only the videos they uploaded. Editors and administrators see the whole workspace.

View and edit video details

Click a video to open its details. From there you can:

  • Edit the title and description.
  • Add, replace, or remove subtitle tracks.
  • Copy the shortcode or the media ID.
  • Re-run AI enrichment to regenerate chapters, a summary, and named entities.

Run bulk actions

Select several videos and choose an action from Bulk actions:

  • Re-run AI
  • Regenerate posters
  • Delete

Bulk actions run in the background. You can leave the page.

NOTE: Deleting a video removes it from FastPix and tombstones it locally. Posts that embed it are never edited; they show the saved fallback instead.


Protect playback

Set access when you upload, or change it later from the video details.

  • Anyone: Plays without restrictions. Public markup is cached and structured data is emitted for search engines.
  • Private: The plugin mints a short-lived RS256 token at render time that authorizes the stream, thumbnail, and spritesheet. Tokens are never written to post content, transients, logs, or reports.
  • DRM: Adds a second token for the license exchange. Requires a DRM configuration ID in Settings > Video setup. See Configure settings.

Access checks are tied to the posts that embed each video. A private video plays only on a page the visitor is allowed to read.

Private link lifetime in Settings controls how long a signed token stays valid, from 2 minutes to 24 hours. The default is 15 minutes.

WARNING: Pages with private or DRM video must be excluded from full-page caches. The plugin sends DONOTCACHEPAGE, but edge caches configured outside WordPress cannot see that header. Site Health reports the page cache it detects.


View analytics

The Analytics screen reads a local daily rollup that the plugin pulls from FastPix Data in the background. Nothing on the screen calls FastPix at render time.

Read the dashboard

  1. In your WordPress admin panel, go to FastPix > Analytics.
  2. Choose a scope: Across the site, One video, or LMS.
  3. Pick a range from Last 60 mins to Last 30 days, or Custom.
  4. Filter by device: Mobile, Desktop, or Tablet.
FastPix analytics dashboard showing views, people, watch time, and quality of experience

The dashboard shows views, unique viewers, watch time, quality of experience scores, and playback errors. Switch to One video to see per-video engagement, including how far viewers get and where they drop off.

Per-video analytics showing quality of experience and a how-far-do-people-get chart

Export a CSV

  1. Click Export CSV.
  2. Choose the Date range and what to Include: every video, the per-day rows, and the device breakdown.
  3. Click Start export.
Export CSV dialog with date range and include options

The export runs as a background job. The file appears on the screen when it is ready.

Watch progress and resume

The player records watch progress so a returning visitor resumes where they stopped. Progress is stored only in your WordPress database and only when the visitor’s consent platform allows it. The plugin recognizes the WP Consent API, Cookiebot, OneTrust, and CookieYes.


Add course features

Course features are off by default. Turn them on in Settings > Video setup > Course features when a supported LMS is detected: LearnDash, TutorLMS, LifterLMS, or LearnPress.

With course features on:

  • Lesson videos gain a Completion panel in the block, or the complete_at and track_viewer shortcode attributes in classic editors.
  • Completion is skip-proof. The server re-reads the threshold from the lesson’s own markup and ignores beats for videos not embedded in that lesson.
  • On completion, the plugin calls the LMS’s own completion function to credit the lesson. The fastpix_video_completed action fires first for custom rules, and the fastpix_lms_auto_complete filter turns automatic credit off. See Developer hooks.
  • The LMS tab in Analytics shows per-course student progress.

Per-learner data is stored as a salted hash, never a name, and is pruned after the Per-learner retention period in Settings (90 days by default). It is covered by the WordPress personal-data export and erasure tools.


Set up live streaming

Create a stream

  1. Go to FastPix > Videos > Live streams and click Create stream.
  2. Enter a Name, choose Who can watch, and select Record it to keep the broadcast.
  3. Click Create.

The stream row shows the RTMPS and SRT ingest addresses and the stream key. Paste them into your encoder, for example OBS:

ProtocolAddress
RTMPSrtmps://live.fastpix.com:443/live
SRTsrt://live.fastpix.com:778

Embed a stream

[fastpix streamid="playback_ID"]

One embed handles all three states. Before the broadcast it shows a waiting card. When the stream goes live it switches to the live player. After the stream ends it serves the recording, which also lands in your library as an ordinary video.

NOTE: Live streaming is feature-flagged. If the Live streams screen is missing, turn it on with the fastpix_feature_live filter. See Developer hooks.


Frequently asked questions

What video formats and file size can I upload?

The upload area accepts common video formats (including MP4, MOV, MKV, WebM) and audio formats (MP3, WAV, AAC, M4A, OGG), up to 8 hours duration of video. Uploads are resumable in 5 MB chunks.

How do I embed a private or DRM-protected video?

Embed it the same way with the block or shortcode. For private videos, the plugin signs a short-lived token at render time. DRM also needs a DRM configuration ID in Settings. Keep pages with private or DRM video out of full-page caches.


Troubleshoot

Upload fails or stays paused. The Add media screen pauses when FastPix is not responding. Click Retry. Verify the credentials in Settings, check if the video file is under 8 hours of duration and in a supported format, and try a smaller file to test the connection.

A new video doesn’t appear in the library. Without webhooks, the sweep runs every few minutes. Run wp fastpix sync, or set up webhooks. See Set up webhooks.

A private video doesn’t play. Check that the page is served over HTTPS, the visitor can read the embedding post, and the page is excluded from any full-page cache. Site Health lists the page cache it found.

DRM shows the fallback message. Enter a DRM configuration ID in Settings > Video setup.

Transcript search is unavailable. The database lacks FULLTEXT support. Title search still works. Upgrade to MySQL 5.7 / MariaDB 10.3 or later with InnoDB.

Analytics show nothing yet. The rollup pulls in the background. Confirm the Workspace key is saved so player events reach the right workspace, then wait for the next pull.

Live streams don’t appear. Live is feature-flagged. Add add_filter('fastpix_feature_live', '__return_true'); to your site.

For setup and connection issues, see Troubleshoot setup. For anything else, copy the support report from Settings > Copy support report and send it to FastPix support.


What’s next