soumik-mukherjee / capturio Goto Github PK
View Code? Open in Web Editor NEWA PWA for video production - screencasts, voice overs and camera integration
License: Apache License 2.0
A PWA for video production - screencasts, voice overs and camera integration
License: Apache License 2.0
Describe the bug
Add a license.md file to the repo with some appropriate license
To Reproduce
NA
Expected behavior
The repo should display license requirements, liabilities and warranties as defined by the license
Screenshots
NA
Desktop (please complete the following information):
NA
Smartphone (please complete the following information):
NA
Additional context
None
Is your feature request related to a problem? Please describe.
Support common social authN providers
Describe the solution you'd like
Must support the following for now
Describe alternatives you've considered
NA
Additional context
Users will need to login to do a recording
Right now the following behaviors are left open for the consuming component to implement:
Stop
and Download
buttons should be disabledRecord
the button should be disabled, along with the source (i.e. Cam
, Mic
& Screen
buttons) should also be disabledRecord
, Stop
should be enabledSo on and so forth.
These behaviors should be encapsulated within RecorderControls
, consuming components should not have to implement them.
Is your feature request related to a problem? Please describe.
ATM, the recording data is stored in the browser tab's memory (i.e. part of the DOM tree). This means the user must download and save the file locally before navigating away from the app. What happens is the tab is closed accidentally, or a link is clicked that takes the user away to another page? recordings that were made must not be inadvertently lost.
Describe the solution you'd like
The app must persist the recording without requiring the user to do anything explicitly, beyond the intent of concluding a recording. (i.e. clicks on the Stop
button)
Describe alternatives you've considered
Blobs
and files
are ideally persisted in Indexed DB
. Plus just storing is not the end of the line, user's will need a UI to browse through and retrieve the recordings. Indexed DB
is the ideal candidate on all counts.
Accessing local file system, without explicit user consent (every time a recording concludes), is a no go. Asking for the consent each time, worsens the experience.
Additional context
Add any other context or screenshots about the feature request here.
Describe the bug
In the current version, clicking the Record
button starts recording a user selected screen/area. The selection is through a browser dialog prompting user to grant "screen share" access with the app, and along with it select which screen this permission applies to.
This prompt is no longer coming up, neither is the recording happening, as a consequence.
To Reproduce
Steps to reproduce the behavior:
Recorder
> With Default Layout
, item in the stories menu panel (left panel)Record
buttonExpected behavior
A dialog should open up asking the user to select a screen/area and permissions to share that with the app.
Screenshots
The missing prompt is this one below
Desktop (please complete the following information):
Smartphone (please complete the following information):
Smartphones and tablets not supported at the moment.
Additional context
This is prototype functionality and the Record
button onClick
behavior is expected to change substantially. But this fix is a tactical requirement, to restore basic working and enable testing of fixes for pending bugs.
Describe the bug
Umbrella issue to encapsulate all bugs in pipeline detected during testing
Summary of Problems
ERROR: (gcloud.kms.decrypt) NOT_FOUND: CryptoKey <FULL_KEY_PATH> not found.
yarn
(deps install) stepStep #1: yarn install v1.9.4
Step #1: [1/4] Resolving packages...
Step #1: [2/4] Fetching packages...
Step #1: error [email protected]: The engine "node" is incompatible with this module. Expected version ">=10".
Step #1: error Found incompatible module
Step #1: info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
...
ERROR
ERROR: build step 1 "gcr.io/cloud-builders/yarn" failed: step exited with non-zero status: 1
firebase deploy
stepStep #3: $ firebase deploy --token "$FIREBASE_TOKEN"
Step #3:
Step #3: Error: No project active, but project aliases are available.
Step #3:
Step #3: Run firebase use <alias> with one of these options:
Step #3:
Step #3: default ()
Step #3: error Command failed with exit code 1.
Step #3: info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
Finished Step #3
ERROR
ERROR: build step 3 "node:12.16.2" failed: step exited with non-zero status: 1
To Reproduce
Below for each problem,
bug/32_pipeline_defects
Expected behavior
Below for each problem,
yarn
should succeedyarn deploy
should refresh the app with new title (see PR #31)Screenshots
NA
Desktop (please complete the following information):
NA
Smartphone (please complete the following information):
NA
Additional context
NA
Stuff that are necessary at the moment but missing
Readme
, covering atleast,
Is your feature request related to a problem? Please describe.
The release pipeline should automate the process of build and release (using Google Cloud Build) on the creation of a release tag.
Describe the solution you'd like
The gatsby
webapp should be build and its public
be deployed to the chosen target runtime. At the moment, I am leaning towards a cloud CDN with a blob storage origin for the hosting. However hosting architecture is a complete different issue in itself (may be link back here?)
Describe alternatives you've considered
None. Gitlab CICD is quite potent, but its futile using Gitlab only for CICD. Have a long standing relationship with GCP and will stick to it (commercially more viable)
Additional context
None
UX will change:
Need a new RecorderControl
to allow user to select sources. This should be a multi-select, with options like,
Screen
Audio (with available audio input devices listed, only one can be selected)
Camera is an ideal candidate but will keep this out of scope for now.
Currently, the RecorderControls
component has a Start Capture button, which does both things at the same time
Selects the source, i.e. screen media as of now
Starts recording the source
The Start Capture button should only start recording, all the user selected streams
The new Select Sources button should be the one to define sources, i.e. take this functionality out of the button state handler
Originally posted by @soumik-mukherjee in #1 (comment)
Describe the bug
Once you've recorded and download the file, and the open it offline, you are not able to "seek" to a particular time instant in the video, using the controls.
This is irrespective of the player used to open the file offline, tried,
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Users should be able to seek to a particular instant
Screenshots
NA
Desktop (please complete the following information):
Additional context
See related stuff on the internet:
Describe the bug
package.json
currently only supports local development scripts. Add a production build script.
To Reproduce
N/A
Expected behavior
Devs should be able to run a prod build using yarn
Screenshots
N/A
Desktop (please complete the following information):
N/A
Smartphone (please complete the following information):
N/A
Additional context
None
Is your feature request related to a problem? Please describe.
Users will have to login. We need a UI to ask the user to use one of the following social id for login,
Describe the solution you'd like
A simple & clear UI, providing navigation to respective providers.
Describe alternatives you've considered
NA
Additional context
NA
Is your feature request related to a problem? Please describe.
The library
UI is for users to browse through recordings they have created using the tool. The backend for library should be the browser's persisted storage.
Describe the solution you'd like
LibraryListView
should show recordings sorted by,
The same view must also enable filters by
Each RecordingItem
in the list, should show
disabled
is also a statusItem can also be a folder
in which case it will have a name, apply topic/subject tags, item count, sync enabled, sync status.
Describe alternatives you've considered
None
Additional context
None
Record
buttonCancel
in the ensuing prompt.TypeError: Cannot read property 'stop' of null
..... capturio/packages/ui-components/src/Recorder/index.jsx:103
100 | case REC_STATUS_ON:
101 | break
102 | case REC_STATUS_OFF_REQUESTED:
103 | mediaRecorder.stop()
104 | let tracks = mediaStream.getTracks()
105 | tracks.forEach(track => track.stop())
106 | player.srcObject = null
Record
button, select a screen to share. Recording startsStop
button. Download of recording should be ready.Download
button. Nothing happensStep 3 above should have opened a file Save As
prompt to allow saving the recorded file, locally in the computer.
Unknown, needs investigation.
This functionality was working before. Some recent changes would have broken it.
Is your feature request related to a problem? Please describe.
Logged in users will need to access their profiles.
The following are not exactly in scope for this item, but they provide important justifications for the profile to exist
Describe the solution you'd like
A familiar top-level menu trigger experience, as seen with most web apps, occupying extreme right, top corner of the topbar.
Describe alternatives you've considered
Mostly experience/design alternatives
Additional context
None
Describe the bug
There are multiple package.json
in the repo (and other places too) where project details (owner, license etc.) need to be updated.
To Reproduce
NA
Expected behavior
package.json
(at minimum) must reflect project details.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
NA
Smartphone (please complete the following information):
NA
Additional context
None
Is your feature request related to a problem? Please describe.
The UI branding (i.e. app title etc.) is still generic and has no alignment to the product.
This change should also serve as a means of testing the pipeline
Describe the solution you'd like
Changes to title and other basic branding assets. No logo yet
Describe alternatives you've considered
NA
Additional context
This will form the basis of a release version 0.1.0
and testing the cloud build cicd integration
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.