-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bugfix/default transcripts #4
Closed
OPersian
wants to merge
132
commits into
appsembler:master
from
raccoongang:bugfix/default_transcripts
Closed
Bugfix/default transcripts #4
OPersian
wants to merge
132
commits into
appsembler:master
from
raccoongang:bugfix/default_transcripts
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This changeset includes basic files required for an xblock. Such as: - video_xblock.py with Python side of the VideoXBlock - backends directory with BaseVideoPlayer class and it’s minimal implementation DummyPlayer - student_view.html a template to render video - Documentation in README.md - setup.py with module specifications - bower.json with external JavaScript dependencies - requirements.txt with Python dependencies
- backends/youtube.py is a server-side part responsible for the logic - static/html/youtube.html is a template to render video player - static/css/videojs.css is a video.js skin definition to replicate Open edX video player look
- backends/wistia.py is a server-side part. Prepares context for video player - static/html/wistiavideo.html is a template to render video player
Brightcove video players are special. They are based on a Video.js but are loaded from the player.brightcove.net. Hence we use separate css. - backends/brightcove.py is a server-side part responsible for the logic - static/html/brightcove.html is a template to render video player. Also includes styles for Brightcove’s ‘default’ theme - static/css/brightcove.css is a video.js skin definition to replicate Open edX video player look
To turn on playback rates support for all video.js plugins we patch video.js Tech component.
Playback state includes: - Current time to within 1 second. Unique for each player - Playback rate. Unique for user, shared between players - Volume. Unique for user, shared between players - Muted. Unique for user, shared between players Playback state is loaded after Video.js player is fully initialized and passed from server in the video player’s template at rendering time. Every video player is rendered inside an iframe and doesn’t have access to xblock’s runtime. So they post their state to a parent frame as a message using `Window.postMessage`. Parent frame in turn accepts and verifies the state and post it to the server to a json handler resolved by `runtime.handlerUrl(element, 'save_player_state’)` method. Playback state is being saved at following events: - Volume change - Playback rate change - Play - Pause - Video ended
Progress bar had incorrect position on Safari and IE
add videojs resolution switcher for youtube provider
Progress bar markup bugfix
…itcher Add resolution switcher
…storage Download and upload handout file on MongoDB
add style for right focus pleyer elements
Add player id to studio form. Consider player id in student view. Consider player id in brightcove.css Avoid using player id in brightcove.css
…thub.com/raccoongang/xblock-video into feature/brightcove_player_id # Conflicts: # video_xblock/static/css/brightcove.css # video_xblock/video_xblock.py
Brightcove player id analytics
Created videojs plugin for catching events and sending them as messages from iframe to parent window Created listener for catching event messages and publishing it by xblock handler
Use cases covered: - Upload transcripts with extensions .sjson, .srt and .vtt - Upload transcripts for differenet languages - Store uploaded transcripts in MongoDb - Download or replace previously uploaded transcripts
Add transcripts upload feature in the studio
get transcripts for youtube, wistia, brightcove - add transcripts to context template players - add button for subtitles and text block with translates
Interactive transcripts display
Add new library videojs-offset Add new fields start_time and end_time
- 500 error with canceling of file upload - Handout download on both sides - Add status of upload handout - Add name of file to status of uploading - Add name of file to download attribute in button "Download" - After uploading handout replace wording "Upload" to "Replace" in button
add responsive for player, fix progres bar width
…#101) * Move bower.json to root directory and add .bowerrc add deps make target * More precise XBlock and xblock-utils version specification * Update README with make tasks instead of commands, add clean, deps-test & tools make targets * Update .travis.yml to utilize Makefile and cache node_modules
* Order tabindex in progressbar - add into options "tabindex" to togleButton - add into options "tabIndex" to transcript * Fix customize xblock fields -fill method customize_xblock_fields_display for return video fields
# Brightcove content protection and auto-quality: On API authentication uploads two custom Ingest Profiles: - Creates new API credentials with required permissions - HLS for auto quality - HLSe for auto qualify & encryption - Add new UI controls after a user has authenticated against Brightcove API: View video tech info - Send video re-transcode request on a Brightcove side # Default transcripts upload: - Allows to fetch transcripts from the platform and store them into XBlock. - Supports: Brightcove, Youtube & Wistia. - Brightcove & Wistia require API authentication before default transcripts upload can work.
* added base exception, refactored existing exceptions * refactored exceptions * correct docstring * added init call of parent init method to base exception * Update base.py * fix pylint violation * address comments
…113) - Bump Xblock dependency to 0.4.14 and install it from PyPI rather than git - Switch to container-based Travis build - Install python-lxml using Travis' apt addon
Refactoring to reduce code duplication.
…o bugfix/default_transcripts
* Move django vars from js -add valid json into player context on backend -parse json on frontend and use js object as global var
bryanlandia
pushed a commit
that referenced
this pull request
Jul 28, 2021
…hanges Fixes for rendering player and edit block popup
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fix default transcripts autoload: