Make WordPress Core

Opened 8 years ago

Last modified 5 years ago

#35780 new feature request

New data-type: recordable video

Reported by: michaelheuberger's profile michael.heuberger Owned by:
Milestone: Future Release Priority: normal
Severity: normal Version:
Component: General Keywords:
Focuses: accessibility, javascript Cc:

Description (last modified by afercia)

Hello there

I am suggesting a new data-type 'recordable video' within WordPress core. Do not have a clear idea what data types you currently have and how they are implemented.

Already have raised this on slack and were recommended to raise this as a ticket instead. My goal is to make WordPress accessible for Sign Language users! They are mostly Deaf people who express their messages, comments, posts in Sign Language.

Currently it is a pain to record a video message with a separate software, to convert, to compress and to upload it back to WordPress. That's not fair compared to those hearing people who just can type in the Form and submit that.

There is an open source npm library to record videos, asynchronous, in plain JavaScript and HTML, see

Here is an exact example how this could work:

With the videomail-client you can add a recordable <video> element linked to your webcam inside any form. Very easily.

As a plus, it also supports audio! Like that also those who can hear, not just deaf people, could just hit the record button, say something and submit that right away. That would be awesome for everyone. Just takes few seconds to encode, depending on the length and your bandwidth. All plain JS, using the getUserMedia() API.

I am not trying to advertise my code but to distribute it on well-known CMS, this to improve the lives of Deaf people including me (I've been hacking JS, PHP, HTML and much more for > 22 yrs).

Feedback very welcome. I am very happy to submit PRs if I have your blessings and can count on your guidance where to start.


Change History (16)

#1 @jorbin
8 years ago

  • Type changed from enhancement to feature request

I took a quick glance at the library. To be clear, It is a browser library, don't let the mention of npm fool you. This looks really interesting and the idea of adding support to record videos would help set WP apart from other CMS.

That said, I am worried about the browser matrix this library currently supports:

Firefox >= 34
Google Chrome >= 32
Microsoft Edge >= 12
Opera >= 26
Chrome for Android >= 39
Android Browser >= 37

No support for IOS Safari, only recent Android support, and no IE support just isn't in line with where WordPress is. While it's ok to engage in progressive enhancement, excluding over 30% of browser users just doesn't feel right to me.

Overall, I think that recordable video natively in WordPress is something that should be demonstrated in plugin form first. I would also worry a bit that just recording video without editing might not work for users. So that likely needs to be user tested.

#2 @michael.heuberger
8 years ago

@jorbin Thanks for that. Good input and questions from you. Would like to discuss more ...

So, yes, First, I am the maintainer of videomail-client myself :) And secondly, npm does not always mean a server component. It is just a package manager for anything (which is going to render Bower obsolete I think).

Exactly, the ability to record videos and audio would set WP apart from other CMS.

Regarding browser incompatibilities, for iOS and IE, I'd show a file upload button instead as a fallback alternative. And for editing, I think that's a bit too far. You cannot edit a phone call or a Skype conversation. Btw, there is also the reset function in Videomail-Client so that you can re-record in case if you do not like the preview.

I've been thinking of a Wordpress plugin too but do not know where to start. I mean, a little guidance would be great. How can i add such a new datatype as a plugin other forms can re-use?

#3 @voldemortensen
8 years ago

I really love this idea, however I just tried building a proof of concept plugin using the git repo at master and am getting javascript errors all over the place. I'm using the basic example at the top of the as a guide. Firefox 43 as my browser. Should I be working from a specific tag or branch?

Essentially, added videomail-client.min.js to the footer, added the var VideomailClient = require('videomail-client'), stuff to its own file and enqueued it after the client. Then I made a post with <div id="videomail"></div> with no luck.

#4 @michael.heuberger
8 years ago

@voldemortensen Thanks - I want to examine that asap. It should work off the master branch. Tell me, what npm and nodejs versions were you using and can you attach the HTML file here you wrote when using videomail-client.min.js?

Meanwhile I ll try to reproduce your problem.

#5 @michael.heuberger
8 years ago

@voldemortensen Ummm, tell me, did you try the example at /examples/simple.html?

Last edited 8 years ago by michael.heuberger (previous) (diff)

This ticket was mentioned in Slack in #accessibility by afercia. View the logs.

8 years ago

This ticket was mentioned in Slack in #accessibility by michael.heuberger. View the logs.

8 years ago

#8 @michael.heuberger
8 years ago

Think I ll try with a plugin first, see for updates.

But please leave this ticket open for future. Thanks

#9 @chriscct7
8 years ago

  • Version trunk deleted

This ticket was mentioned in Slack in #accessibility by rianrietveld. View the logs.

8 years ago

#11 @michael.heuberger
8 years ago

Here is an update: a WordPress plugin development for Videomail is underway, see

Works very well so far. Needs some polishing before I ll publish it in 1-2 months from now onwards.

I am open to have this integrated to WordPress core after a trial or so. Stay tuned.

This ticket was mentioned in Slack in #accessibility by michael.heuberger. View the logs.

8 years ago

This ticket was mentioned in Slack in #accessibility by afercia. View the logs.

8 years ago

This ticket was mentioned in Slack in #accessibility by rachievee. View the logs.

8 years ago

This ticket was mentioned in Slack in #accessibility by afercia. View the logs.

5 years ago

#18 @afercia
5 years ago

  • Description modified (diff)
  • Milestone set to Future Release
Note: See TracTickets for help on using tickets.