nomensa / accessible-media-player Goto Github PK
View Code? Open in Web Editor NEWAccessible Media Player by Nomensa
License: GNU General Public License v3.0
Accessible Media Player by Nomensa
License: GNU General Public License v3.0
Hi there!
The YouTube JS Player API appears to be deprecated.
"The deprecation of the YouTube JavaScript Player API was announced on January 27, 2015. YouTube Flash embeds have also been deprecated"
(From https://developers.google.com/youtube/js_api_reference)
I'm working for a site that uses the Nomensa AMP, but the YouTube videos have stopped working. It tries to access https://www.youtube.com/apiplayer?enablejsapi=1&version=3...
This appears to be defined here: https://github.com/nomensa/Accessible-Media-Player/blob/master/core/javascript/jquery.player.js#L129
This project appears to have had no activity in the last two years, so is the Nomensa Accessible Media Player now effectively deprecated or are we missing something obvious?
Are there any plans to implement the IFrame API (https://developers.google.com/youtube/iframe_api_reference)
Many thanks,
Finn
I'm using the player to present YouTube videos on a page. When the page first loads the video is shown as a still superimposed with a large play arrow. Clicking this button will start the video playing but the player slider, time indication and start/stop button are not updated. When user subsequently clicks on start/stop button apparently nothing happens the first time and the video carries on playing. However the time and slider do 'catch up'.
Since this arrow superimposed over the video is very big and inviting, I'm guessing that many sighted mouse users will just click on that to start the video. Is there any way for the player to 'notice' that this button has been clicked? Then the controls and progress will always be kept in sync.
It is trying to open it in Adobe Acrobat Pro 9.5 and failing. I can't open it by downloading and opening in IE, Firefox or Chrome.
The player is playing mp3 file successfully but the text value for the progress time is not updating - it stays at 00:00 throught the playing of the file. Same appears true when playing mp4 files.
Trying to use the Nomensa Media Player and I am having trouble with using the correct captions file. We are using a captioning service and they have given us every format they have but none work. When I compare those files to your example file (captions-order-of-content.xml), I notice that all of our xml files have HH:MM:SS:FF and yours just has HH:MM:SS. I manipulated our xml file and took out the FF. It worked! So, I would like to contact our service to request the particular kind of file that will work with Nomensa. Is there a special name for it or can you suggest how I ask for that file type?
Is SWF support on the product roadmap? If so, any timeframe?
Thanks
Christophe
When using the player to present video and audio there is some helper text for screen readers in the timer bar. The text starts "The timeline slider below uses WAI ARIA.... " and is held within a span with a class of ui-helper-hidden-accessible.
In latest version of Google Chrome (22.0.1229.94 m) this text is visible at all times and overlays the controls and slider.
The text is hidden from sighted users using the position:absolute + negative left value. For this class, the value for left is set to -99999999px. I believe this number is too high for Chrome to interpret successfully and it is treated as 0 - hence the text becomes visible on the page.
Suggest the player styles are amended to use -9999px. This value is interpreted correctly by Chrome and is plenty to move the text off the visible area of the page.
It would be nice if the same interface could be used for live streaming audio/video as on http://www.ustream.tv
I'm getting a 'this.player is undefined' error from jquery.player.min.js when using the controls in div.player-controls. I'm viewing examples straight out of the box.
Behaviour seen in various versions of firefox and IE8. I'm probably doing somethign wrong but looking at the pdf 'how to' I can't see what.
On HTTPS pages we get no video and there's the following message in the console: "Loaded over HTTPS, but requested an insecure plugin resource 'http://www.youtube.com/apiplayer?enablejsapi=1&version=3&playerapiid=yt0'."
The apiplayer URL is hard-coded in jquery.player.js. Could it be made protocol relative, or set to https by default?
Hi
starting a Youtube video with the play arrow in the video doesn't trigger captions or change the state of the keyboard accessible play button.
thanks
Julian
It would be great to facilitate audio description through the player.
I'm aware that unlike captions itβs complicated by the need to play two tracks in sync when bandwidth may be variable and flaky..
So I suggest a button on the player that simply switches out the regular audio/visual file/url for the one with audio description. If a file with audio description has not been specified the button would not be displayed.
There could even be a third option for a video with sign language interpretation too.
The default dimensions for the player are width to be 100% of available space and for video the height at 300px. This works well in certain situations but is not flexible enough to suit all implementations.
It is possible to constrain the width of the player by placing the link to the media within a div with a set width, however that does not help with the height.
Can I suggest the javascript functionality that scans content for the media links also looks for width and height settings that may be placed there by content authors and developers.
How about using the HTML5 facility for attaching data attributes to the link? Example: data-media-width and data-media-height. So the link to a video would now look like:
href="http://www.youtube.com/watch?v=kXiGXcq4pqY" data-media-height="350px" data-media-width="50%"
The javascript functions could then pass these values to the flash params. Functionality could stick with your current defaults if one or both of the attributes are absent.
This is just an idea - if there's a better way to do it, the requirement is still a useful one I believe.
Hello !
I have a website that is completely ajaxed.
I am having the following issue :
When the user click play, then goes to another page, the following error persists in the console and i can see the number of occurences inscreases infinitely (it might be that it is looping until it gets fixed) :
Uncaught TypeError: Object # < HTMLObjectElement > has no method 'getDuration' (on line 891)
I have seen that there is a destroy method, but i have tried many ways but could not get to implement it properly.
Could you please help me or guide me through ways to trigger destruction of the player (in my opinion this is the solution, but any ideas are really welcomed) ?
Kind regards
Is it possible to stream an MP4 file using nomensa?
I tried the following but it did not work
a href="rtmp://mystreamingserve/mp4:myfile.mp4">MP4 Stream /a
Is there another configuration change to do?
Thanks
Christophe
I don't see a full screen option in the documentation or in an example I've seen on the embedded YouTube video that is playing.
I can't seem to get jwplayer support to work.
Even just viewing example-jwplayer.html doesn't work.
Is there something I'm missing?
The hack that fixes this problem in the Flash player does not apply to the HTML5 player. The hack was to add a 'tabindex' of '-1' on the video element (embed/ object element). With the HTML5 player the video itself is brought in using an iFrame, and so you cannot actually add this 'tabindex' attribute on the video element, nor can you manipulate any of the iFrame's contents.
I've set up a some code to launch the player with a poster image. However in IE9 the poster image first shows up and then disappears. I've looked online and it could be a IE9 video preload issue. Is there anyway to disable preloading of the video for the JW player examples. Here is the code I'm using to initiate the player.
function nPlayer() {
// Create Media Links
var $media_links = $("a[href$='flv'], a[href$='mp4'], a[href$='ogv']");
// Create players for our media links
$.each($media_links, function(i) {
var $holder = $('<span />');
$(this).parent().replaceWith($holder);
// Extract the url/path from the links href attribute
var link = $(this).attr('href');
// Grab the captions if they exist
var $captions = $(this).siblings('.captions');
// Work out if the video has captions
var captionsFile = $($captions).length > 0 ? $($captions).attr('href') : '';
// Grab the poster if they exist
var $poster = $(this).siblings('.poster');
// Work out if the poster has captions
var posterFile = $($poster).length > 0 ? $($poster).attr('href') : '';
// Instantiate the jwplayer
$holder.player({
id:'jw'+i,
media:link,
image: posterFile,
useHtml5: true,
flashHeight:380,
captions:captionsFile,
url: 'nomensa/custom/javascript/config/jwplayer-5/core/player.swf',
swfCallback : jwPlayerReady
}, jwconfig);
});
}
In the documentation for the player I'm led to believe that wherever possible the player will instantiate itself as HTML5 and only revert to Flash when the browser does not support HTML5.
However I'm beginning to suspect that actually that is not the case and that the Flash version of the player is being delivered everywhere. I'm suspicious as I've implemented the player on a couple of sites and I'm seeing flash in every browser. Additionally my client has tested one site on a new iPad and the video is not showing - with the message 'requires Macromedia Flash Player...'
I would have expected a new iPad running Safari to entertain the HTML5. I'm also running latest versions of Chrome and Firefox and flash is showing on them - whereas I would have thought that HTML5 would work on them.
Is there something else that needs to be set somewhere to enable the HTML5 first?
Hi,
I was playing around with your AMP, but the examples are not working.
https://github.com/nomensa/Accessible-Media-Player
I opened them in several browsers, but the Vimeo and YT examples are not working, though all scripts are being loaded.
Do you know anything about that?
Thanks,
Thomas
Hi
if more than one video on a page only the first seems to be getting the captions file loaded.
Possibly because the following only contains a single value at document.ready
var
Changing the .each() to
$.each($("a[href*='http://www.youtube.com/watch']"), function(i) {
//blah
});
seems to work OK.
Thanks
Julian
Have been attempting to use the player in a site where caption files are now available for the YouTube videos. Unfortunately without success.
Your documentation is clear about the caption file requirements but I believe your options are too restrictive.
I have been using Universal Subtitles (http://www.universalsubtitles.org) to add captions to the YouTube videos I'm working with. Universal Subtitles is a popular and robust tool for adding captions and can take a transcript file to speed up the production of the caption file.
Once the captions have been created it is possible to export the captions into 6 different file formats: SRT, SSA, TTML, TXT, SBV and DFXP.
Discounting the TXT format which contains no timing information, all of the remaining 5 formats contain timing codes. Two of the formats - TTML and DFXP are xml - but they all record time down to hundredths of a second which may be why they are not acceptable to the player. The TTML format (which I thought was a standard) uses 'begin' and 'dur' attributes rather than 'begin' and 'end'
SBV is the format that is native to YouTube - although YouTube will accept the TTML format too.
So at the moment I have a great tool to produce captions and a good accessible player but nothing to join them up without some considerable rework. Is it feasible that you could open up the acceptable format just a little to incorporate TTML and/or DFXP. Accepting SBV format would be good too as these can be obtained directly from YouTube for videos that already have captions.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. πππ
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google β€οΈ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.