Code Monkey home page Code Monkey logo

gopavasanth / video-cut-tool Goto Github PK

View Code? Open in Web Editor NEW
46.0 2.0 25.0 11.19 MB

Wikimedia Tool to Trim Online Videos in Wikimedia Commons. https://commons.wikimedia.org/wiki/Commons:VideoCutTool

Home Page: https://videocuttool.wmflabs.org/

License: Other

HTML 1.06% CSS 0.19% JavaScript 83.78% SCSS 14.85% Procfile 0.05% Pug 0.07%
wikimedia wikimedia-commons trim-videos crop-videos video-cut-tool rotate-videos online-video-editor tool video-editor

video-cut-tool's Introduction

An online tool to cut/trim videos in Wikimedia commons.

See live demo at: https://videocuttool.wmcloud.org/

Learn More

You can learn more in the https://commons.wikimedia.org/wiki/Commons:VideoCutTool.

Installation

Get OAuth2 Credentials

Go to:

https://meta.wikimedia.org/wiki/Special:OAuthConsumerRegistration/propose.

Create an application with the following grants:

  • Edit existing pages.

  • Create, edit, and move pages.

  • Upload new files.

  • Upload, replace, and move files.

If its for production, use call back URL as: https://videocuttool.wmcloud.org/api/auth/mediawiki/callback

Add the keys to server/config.js file under CLIENT_ID and CLIENT_SERCRET after you clone the repo.

Connecting to Cloud VPS Servers

Cloud VPS Horizon URL: https://horizon.wikimedia.org

videocuttool instance using ssh -J <username>@primary.bastion.wmflabs.org <username>@videocuttool.videocuttool.eqiad1.wikimedia.cloud

nc-videocuttool instance using ssh -J <username>@primary.bastion.wmflabs.org <username>@nc-videocuttool.videocuttool.eqiad1.wikimedia.cloud

Installing VideoCutTool in server

Install the following utilities

  • git
  • node version v16.15.1
  • npm version v8.12.1
  • ffmpeg
  • mongodb
  • nginx

Database

  • View the users list using the following commands
    • Connect to mongo using shell - mongo
    • show databases
    • use video-cut-tool
    • db.users.find({}, {"_id":0, username : 1})

Install Docker

The tool uses docker to install and run everything with a single command.

Install docker from this link: https://docs.docker.com/get-docker/

Clone Repo

Run these commands to clone the code from the remote repo.


git clone "https://gerrit.wikimedia.org/r/labs/tools/VideoCutTool"

cd ./VideoCutTool

Run environment

Run this command inside VideoCutTool to start development docker container.

docker-compose -f .\docker-compose.dev.yml up --build

The first time you run it will take some time 4-8 minutes (depending on your internet speed) because it will pull the necessary images from docker and install NPM packages. Once it is up and running changes will be hot loaded.

Note: anytime you update package.json the build process will take a while.

To run production you can run this command

docker-compose -f .\docker-compose.prd.yml up -d

Credits

VideoCutTool is created by Gopa Vasanth as a part of 2019 Google Summer of Code in the mentorship of Pratik shetty, Hassan Amin and James Heilman.

Khr2003 joined as a co-maintainer of the tool and revamped code base.

video-cut-tool's People

Contributors

abdul-alhasany avatar abhishekbvs avatar adrianorlow avatar anishagg17 avatar bhaarat-khatri avatar gopavasanth avatar gopavasanth-sap avatar harshithpabbati avatar jayprakash-se avatar karanjain71 avatar lalit97 avatar minhducsun2002 avatar nixerus avatar ogechivivian avatar ramushetty avatar sandyabhi avatar sarthakkundra avatar shcherbadev avatar sohomdatta1 avatar somechris avatar srialavandar avatar ssd71 avatar tobi406 avatar translatewiki avatar zabemath avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

video-cut-tool's Issues

HEVC support

Hey, I've noticed It doesn't support hevc. Any ideas why so?

Demo link

Hi @gopavasanth, Need a demo link for the client side video cut-tool. That will be very useful for me.

Adding Blur effect to mask problematic areas of video

Hi! Not sure if adding this to issues is correct or wrong place, but it would be very useful to have Blur effect to mask problematic areas of video (like faces or brands). What are the chances that this gets added anytime soon?

'Icon' is not exported from 'antd'

This issue is caught because in the upgraded version of Ant Design to v4, Icon is no longer exported from 'antd' package.
Instead Icon component is exported from "@ant-design/icons".

can't set up the dev server.

I tried to run the project locally but every time i run npm start it stars the dev server but the view is blank in the browser . What could be the issue here ? Cause no error related that is showing. It just some linting errors .thats it.

Switching the audio track to translate video content on wikimedia commons

I am currently looking at the video https://commons.wikimedia.org/wiki/File:Klimafaktor_CO%E2%82%82_(ZDF,_Terra_X)_720p_HD_50FPS.webm which is in german language. But it has already an english timed text https://commons.wikimedia.org/wiki/TimedText:Klimafaktor_CO%E2%82%82_(ZDF,_Terra_X)_720p_HD_50FPS.webm.en-gb.srt I now wanted to record the english audio and create a derrived english work. However in the cutting server I can only cut the video and have no possibilities to exchange the audio track.

btw I was able to mute the audio track on https://videocuttool.wmcloud.org/ but I could not upload a new one

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.