Set up tiny plugin

Use the tiny_fastpix plugin to add an Insert FastPix Video button to the TinyMCE editor in Moodle. Authors pick a video from a searchable list and the plugin inserts a short code that renders as a player.

The tiny_fastpix plugin is a TinyMCE extension that adds a single toolbar button. Insert FastPix Video to every TinyMCE editor in Moodle. When a teacher selects the button, a modal opens with a searchable list of FastPix videos they own. Picking a video inserts a FastPix short code at the cursor; when the page is viewed, filter_fastpix swaps that short code for a working video player.

tiny_fastpix is the authoring half of the FastPix × Moodle embed system. The rendering half is filter_fastpix. Both plugins depend on local_fastpix (the foundation plugin that owns FastPix credentials and the asset cache) and mod_fastpix (the activity plugin that owns video uploads and the view capability). tiny_fastpix never contacts FastPix directly, every video read goes through local_fastpix.

The audience for this guide is Moodle site administrators (who install the plugin) and teachers and content authors (who insert the videos).


Before you begin

Make sure that you have:

  • A Moodle site running version 4.5 LTS or later, with TinyMCE set as the default editor at Site administration > Plugins > Text editors > Manage editors. Atto and other editors aren’t supported in version 1.0.
  • PHP 8.1 or later. The plugin is tested through PHP 8.3.
  • Site administrator access to your Moodle dashboard.
  • local_fastpix 1.0.0 or later, installed and connected to a FastPix account.
  • mod_fastpix 1.0.0 or later, installed. The picker reuses its mod/fastpix:uploadmedia capability.
  • filter_fastpix 1.0.0 or later, installed and enabled. Without the filter, the short code that tiny_fastpix inserts stays as plain text instead of becoming a player. See Embed FastPix videos in Moodle for the filter setup.
  • At least one ready, non-DRM video uploaded to a FastPix activity. The picker only lists videos that the signed-in author owns.

Note: You can’t install tiny_fastpix standalone. Moodle blocks the install with a dependency error until local_fastpix, mod_fastpix, and filter_fastpix are present.


Install the plugin

You can install tiny_fastpix from the Moodle plugins directory or from a ZIP file.

Install from the Moodle plugins directory

  1. Sign in to Moodle as a site administrator.
  2. Go to Site administration > Plugins > Install plugins.
  3. Search for FastPix Video picker and follow the prompts.

Install from a ZIP file

  1. Download the latest release from the GitHub Releases page.
  2. Sign in to Moodle as a site administrator.
  3. Go to Site administration > Plugins > Install plugins.
  4. Drag the ZIP onto the drop zone, or select Choose a file to upload it. Don’t unzip the file first; Moodle installs the package directly from the ZIP.
  5. Select Install plugin from the ZIP file, then continue through the validation screen.
  6. On the Plugins requiring attention screen, select Upgrade Moodle database now.
  7. When the upgrade finishes, select Continue.

No further admin configuration is needed. The toolbar button registers automatically with TinyMCE, and the picker uses the existing mod/fastpix:uploadmedia capability, editing teachers and managers have it by default.

To confirm the install, sign in as an editing teacher in any course, open any rich-text editor, and look for the Insert FastPix Video button on the toolbar. If you don’t see it, see Troubleshooting.


Insert a video into a Moodle page

After the plugin is installed and filter_fastpix is enabled, teachers can insert a video from any TinyMCE editor in Moodle forum posts, Pages, Book chapters, labels, course and section summaries, quiz feedback, and anywhere else Moodle uses rich text.

Use the toolbar button

  1. Open any page that has a TinyMCE editor for example, edit a Page activity, write a forum reply, or update a course summary.
  2. Place the cursor where you want the video to appear.
  3. Select Insert FastPix Video on the toolbar. The button shows the FastPix icon.
  4. In the modal that opens, browse or search for the video by name. The modal lists your most recently uploaded ready, non-DRM videos. See What appears in the picker.
  5. Select the video card. The modal closes and a FastPix short code is inserted at the cursor.
  6. Save the form. When the page is viewed, filter_fastpix renders the player in place of the short code.

You can also reach the picker from the editor’s Insert menu, which is useful if your toolbar is full or if you prefer keyboard navigation.


Search for a video

If you have more than a handful of videos, search by name from the picker:

  1. Open the picker. The modal shows your most recent videos by default.
  2. Start typing in the search box. The list refreshes as you type, matching against both the activity name and the asset title.
  3. Select the video you want.

Searches match anywhere in the name, are case-insensitive, and handle accented characters. Clear the search box to return to the full list.


Verify the embed renders

After you insert a short code and save the page, do these three checks:

  1. Reload the saved page as a student or other enrolled user. The short code should be replaced with a working video player.
  2. Select Play. The video should stream from FastPix.
  3. As a teacher in the same course, reload the page. You should see the same player as the student. The filter renders identically for both roles, because the embed view is the same regardless of role.

If the short code appears as raw text instead of a player, the most likely cause is that filter_fastpix isn’t enabled. See Troubleshooting.


What appears in the picker

The picker only lists videos you can legitimately embed. Several rules narrow the list, all enforced on the server:

  • Owned by you. The picker calls a web service that filters by your user ID, so only videos that you uploaded appear. You won’t see another teacher’s videos, even in the same course.
  • Ready to play. Videos that are still processing are hidden. They appear once FastPix has finished transcoding and notified Moodle through the webhook.
  • Not DRM-protected. DRM videos need short-lived playback tokens that a forum post can’t refresh, so they’re excluded from the picker. To use a DRM video, place it in a FastPix activity (mod_fastpix) instead.
  • Most recent first. The list is capped at the most-recent videos. If you have a very large library and don’t see what you want, search for it by name.

If the picker is empty:

  • “You have no ready videos to embed yet.” You haven’t uploaded any qualifying videos. Upload one through a FastPix activity in any course.
  • “No videos match your search.” Clear the search box to return to the full list, or check the spelling of the activity name or video title.
  • “Could not load your videos. Please try again.” The web service didn’t respond. Close the modal and reopen it. If the problem persists, see Troubleshooting.

Limitations

tiny_fastpix does one thing, insert a FastPix short code into TinyMCE and is intentionally narrow. Four limitations to set expectations:

  • TinyMCE only. Version 1.0 doesn’t add the button to Atto or other editors. If your site uses Atto, switch the default editor to TinyMCE at Site administration > Plugins > Text editors > Manage editors.
  • No uploads from the picker. The picker only inserts videos that already exist in FastPix. To upload a new video, place it in a FastPix activity (mod_fastpix) and then come back to the picker.
  • No DRM videos. DRM-protected videos are excluded from the picker. To use them, place them in a FastPix activity.
  • No edit-in-place. To change an embedded video, delete the short code and insert a new one.

Privacy

tiny_fastpix doesn’t store any personal data. It declares a null_provider under Moodle’s Privacy API. Video lookups go through local_fastpix, which is the only plugin in the FastPix suite that talks to FastPix. For full privacy details, see the documentation for local_fastpix.


Troubleshooting

The Insert FastPix Video button doesn’t appear

Try the following in order:

  • Confirm that TinyMCE is the active editor for your account. Go to Preferences > Editor preferences and select TinyMCE editor. If only Atto appears, set TinyMCE as the site default at Site administration > Plugins > Text editors > Manage editors.
  • Confirm that you have the mod/fastpix:uploadmedia capability in the course or system context where you’re editing. Editing teachers and managers have it by default; other roles need it granted explicitly.
  • Reload the page to pick up the latest editor configuration.

The picker is empty

Try the following:

  • If you’ve never uploaded a FastPix video, the list is empty. Upload one in a FastPix activity, wait for it to finish processing, and reopen the picker.
  • If you’ve uploaded videos but the picker is still empty, the videos may not be ready yet. Check the activity in the course, a Preparing your video card means the video isn’t ready.
  • If the videos are ready but still don’t appear, check whether they’re DRM-protected. DRM videos are excluded from the picker by design.

The short code appears as plain text on the saved page

filter_fastpix isn’t enabled, or isn’t placed correctly in the filter order.

  1. Go to Site administration > Plugins > Filters > Manage filters.
  2. Confirm that FastPix video embeds is set to On.
  3. Confirm that the filter is placed above Multimedia plugins in the order list.

For the full filter setup, see Embed FastPix videos in Moodle.

Searching doesn’t find a video I know I uploaded

  • Check the asset title in FastPix. The picker matches the activity name in Moodle and the asset title stored in FastPix, not the original filename.
  • Searches are case-insensitive and accent-insensitive, but they don’t handle typos or partial-word matches.

Another course’s videos don’t appear in my picker

That’s expected. The picker only shows videos that the signed-in user uploaded. There’s no cross-author sharing in version 1.0. To share a video, the original uploader can pass you the short code directly, or place the video in a course where you both author content.


What’s next