WordPress.org

Make WordPress Core

Opened 19 months ago

Last modified 12 months ago

#35780 new feature request

New data-type: recordable video

Reported by: michael.heuberger Owned by:
Milestone: Awaiting Review Priority: normal
Severity: normal Version:
Component: General Keywords:
Focuses: accessibility, javascript Cc:

Description

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 https://github.com/binarykitchen/videomail-client.

Here is an exact example how this could work:
https://binarykitchen.com/contact/action/add/

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.

Michael

Change History (14)

#1 @jorbin
19 months 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
19 months 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
19 months 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 README.md 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
19 months 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
19 months ago

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

Last edited 19 months ago by michael.heuberger (previous) (diff)

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


19 months ago

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


19 months ago

#8 @michael.heuberger
18 months ago

Think I ll try with a plugin first, see https://github.com/binarykitchen/videomail-client/issues/43 for updates.

But please leave this ticket open for future. Thanks

#9 @chriscct7
17 months ago

  • Version trunk deleted

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


12 months ago

#11 @michael.heuberger
12 months ago

Here is an update: a WordPress plugin development for Videomail is underway, see https://github.com/kjohnson/ninja-forms-videomail

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.


12 months ago

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


12 months ago

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


12 months ago

Note: See TracTickets for help on using tickets.