Record audio/video question type

Question types ::: qtype_recordrtc
Maintained by Tim at Lone Pine Koala SanctuaryTim Hunt, Chris Nelson, at the OU (Perry building)Mahmoud Kassaei
A manually graded Moodle question type, where the student records a short audio response to answer the question asked.
Latest release:
977 sites
39 fans
Current versions available: 4
This question type is like the standard essay question type, but instead of writing some text, students have a recording widget where they can record some audio (in future, we plan to also add video recording). We've basically taken RecordRTC ( and implemented it as a question type. 

We consider this an evolution of an Essay question with RecordRTC buttons available to students. We have essentially taken the existing parts and distilled them into a specific question type for the ease and convenience of teachers designing quiz questions and for the students taking them.

Like the standard essay question type, it still requires human grading.

While this question type has obvious uses in Moodle Quiz, it has been primarily designed to be used in an embedded question context (see

This question type has two behaviours: deferred feedback, for use in formal Moodle Quiz tests where a tutor would mark the students' recordings; and a new self-rating behaviour, where students mark themselves.

The self-rating behaviour is used essentially whenever the behaviour is interactive or immediate. We have assumed two use-cases: 1) the student listens to a 'model' audio clip and then records their attempt to follow it. They compare the two clips, and then rate their mimicry. Or 2) the student attempts to pronounce a written sentence verbally, and the feedback contains a model pronunciation clip, allowing the student to then compare the clips and self-rate their accuracy.

This plugin was created by The Open University UK, specifically for its School of Languages and Applied Linguistics.

(We hope that we could look at giving Essay a self-rating behaviour next, which could be used in a similar embedded fashion as an alternative to Pattern Matching sentences. Although if you're thinking about that area already, you might find Gordon Bateson's essay auto-grade plugin of interest.)

Potential privacy issues

You should consider the fact that under GDPR, a recording of a user's voice is personally identifiable data (it is arguably also biometric data). Such 'Special category data' requires extra protection.


Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3


Tim at Lone Pine Koala Sanctuary
Tim Hunt (Lead maintainer)
Chris Nelson: Product owner
at the OU (Perry building)
Mahmoud Kassaei: Developer
Please login to view contributors details and/or to contact them

Comments RSS


  • Thu, May 6, 2021, 9:33 AM
    Hi Tim, Chris and Mahmoud,
    My team were investigating this plugin and after testing decided to pursue a different solution due to the need for iOS-compatibility. I've run into an issue when trying to uninstall it. The Question Instances Report claimed to see 2 instances on our system, one visible and one hidden. I went in and deleted the visible instance, and the Report changed to only show the hidden instance, as expected. I then went in and found the hidden instance, and deleted the quiz containing it. After doing this, the Question Instances Report still claims to be able to see one hidden instance, and thus won't give me the option to uninstall. Has anyone else reported behaviour like this, and is there a known fix for it? Any help you can offer is greatly appreciated smile
  • Tim at Lone Pine Koala Sanctuary
    Thu, May 6, 2021, 5:49 PM
    @salvador mtz - This question type does not support Moodle 3.5.

    @Keenan Nunes-Vaz after deleting the quiz that uses the question, you then need to find that question in the question bank, (you will need to use the 'Also show old questions' option) and delete it again - which probably requires restoring it first.

    We are going to do a work-around for Apple's non-support of open audio formats when we can, but we keep having too many other things to do.

  • Fri, May 7, 2021, 8:14 AM
    Thanks Tim, that solved it! Enabling 'Also show old questions' revealed the hidden question, enabling me to delete it, which itself enabled me to uninstall the plugin. Thanks for your prompt response smile.
  • Sun, May 23, 2021, 8:01 PM
    Thank you very much for Plugin. It's amazing.

    Does it support version 3.11 ?

  • Tim at Lone Pine Koala Sanctuary
    Tue, Jun 1, 2021, 7:54 PM
    It probably works in 3.11, but I have not had time to testing it myself. If you are able to try it, please comment where with your findings.
  • Mon, Oct 4, 2021, 3:06 PM
    Hi Tim,

    This question type is not supported on Moodle mobile app.
    Is there any way to make it functional on the mobile app?

  • Mon, Oct 4, 2021, 4:30 PM
    Hi @Amit

    The underlying recording tech used for this question type is the same as the Atto WebRTC tech, so we are waiting for Moodle to support RTC in the Moodle App first.

    Although another blocker is that Apple do not currently support the open-source WEBM video or OGG audio formats.

    We have just got an MP3-based audio version out ourselves that covers desktop/laptop-based Apple Macs, which if we haven't already shared, we will do as soon as we've ironed it out fully.

    However, I understand that Moodle and Apple are currently discussing and iOS may support the open-source standards soon.

    Best wishes,

  • Sat, Oct 30, 2021, 12:58 AM
    I want to start the audio recording automatically when the page loads instead of clicking on the button. How to configure that?
  • Sun, Oct 31, 2021, 11:55 PM
    @Amit: update that we've seen that Apple now supports WEBM/OGG on iOS and Mac Safari, bt that we're still waiting on Moodle Core to enable RecordRTC in the Moodle App.
  • Mon, Nov 1, 2021, 12:02 AM
    @Aditya: we have not configured the plugin to automatically record audio/video on page load because of various reasons, one of which would be that it would go against the UK's Data Protection Act 2018 and GDPR (specifically, the principle that students are in control of their data).

    However, if you wanted to alter the code locally on your servers only, your would probably be able to find a relevant discussion concerning the RecordRTC tech on

    Hope that helps,

  • Mon, Nov 8, 2021, 12:25 PM
    How can I edit qtype_recordrtc files? For example I want to change the recording mode to auto that whenever a student opens the webpage the recording should start after a certain number of seconds.
  • Tim at Lone Pine Koala Sanctuary
    Mon, Nov 8, 2021, 11:29 PM
    I think that automatically starting recording could be a violation of student's privacy. If you really want it, you can probably change the code to achieve this (assuming web browsers don't block it because of the privacy concern), but I don't know how.
  • Sun, Dec 26, 2021, 1:21 PM
    After clicking on "Start Recording", is there a way to store the recording if one doesn't press "Stop Recording" and wait for the uploading to finish, but directly clicks on "Next Page"?
  • Mon, Jan 10, 2022, 5:23 PM
    Hi @Rohit,

    No, afraid not. The recording is encoded user-side, so 'Save recording' is essentially 'Upload to the central server'. I am pretty sure that this is standard WebRTC behaviour rather than anything we have actually done.

    Under UK and European Data Protection laws, 'opt-out is by default', so we /need/ students to click 'Save' as a form of 'opt in', if that makes sense, for legal compliancy.
  • Mon, Jan 10, 2022, 5:30 PM
    Further to the above, students should be getting a warning about unsaved content (the un-uploaded A/V file) if they click 'Next page' - so there should be no real risk of lost recordings?
Please login to post comments