Hi all, I'd like to share a Toolforge tool I've built for uploading device-recorded videos to Wikimedia Commons: clip2commons.
https://clip2commons.toolforge.org/ It encodes locally in the browser using the WebCodecs API and uploads via the official MediaWiki API. WHY ANOTHER TOOL This is intended to complement, not replace, video2commons. video2commons handles URL imports (YouTube, archive.org, etc.) and remains the right tool for that workflow. clip2commons covers a different case: a video file already on the user's device that needs to reach Commons. For that case, the existing options are: - video2commons (file upload mode): the file goes to a Toolforge encoder pool that is shared and currently overstretched (Community Wishlist W447, W392, W443, W512, W523, W536 are open about v2c stability or capability gaps). - UploadWizard: accepts files up to 5 GB chunked, but does not convert formats. iPhone .mov and many Android .mp4 files fail TimedMediaHandler post-upload or upload as patent-encumbered formats. - Manual ffmpeg + UploadWizard: works for those who can do it, but is outside what most uploaders are willing or able to manage. clip2commons does the WebM/VP9 conversion in the browser via WebCodecs, then uploads chunk-by-chunk to commons.wikimedia.org. There is no shared queue, no server-side encoder pool, and no infrastructure that needs maintenance to keep the tool running. The only resource constraint is the user's own device. VALIDATION End-to-end test, 1-2 Mbps connection, 683 MB 1080x1920 portrait (Original) file (6 min 13 s): - In-browser encode: 15 min 20 s - Total wall-clock (encode + upload combined): ~16 minutes - Final file: 163 MB, VP9/Opus, 1080x1920 - Result on Commons: https://commons.wikimedia.org/wiki/File:Wiki_Script_Publisher_Presentation_at_Developer_Skill_Development_Program_India_01.webm PROVENANCE / LICENSING UI The "Release rights" step mirrors UploadWizard's question tree exactly: same root choice (own work vs. someone else), same sub-questions for "contains the work of others" and "not protected by copyright law", same hard blocks for "I don't know" and "copyright-protected", same VRT-pending workflow for permission uploads, same set of accepted CC license templates per branch. This was deliberate. Files uploaded through clip2commons should be indistinguishable in policy terms from files uploaded through UploadWizard or video2commons. The wikitext output uses the standard {{Information}} + {{self}} / bare-license-template structure with [[Category:Uploaded with clip2commons]]. BROWSER SUPPORT Verified working (full encode + upload): - Google Chrome (desktop and mobile) - Microsoft Edge (desktop only) - Brave - DuckDuckGo browser - Samsung Internet - Dolphin - Bing browser - Opera Mini (already-WebM/VP9 files only) Limited mode (already-WebM/VP9 files; cannot re-encode): - Firefox (desktop and mobile) - Safari (encoder support coming in 26.1) Not currently supported: - Microsoft Edge on Android (WebCodecs implementation incompatible) - Opera (decoder errors at encode start) - Yandex - Tor Browser (WebCodecs disabled as fingerprinting protection) Browsers in the "limited mode" or "not supported" lists show a clear banner up front instead of letting the user start a doomed upload. video2commons remains the recommended fallback for those browsers. KNOWN LIMITS - No URL imports. video2commons remains the right tool for that. - Hard cap: 1 GB / 1 hour input file. Larger files risk OOM during in-browser encode on memory-limited devices. - Encode time depends on the device. Modern hardware encodes at roughly 0.2x to 1x video duration; older devices can be slower. FEEDBACK WELCOME This is beta. Bug reports, policy / wikitext / copy review, and testing on devices and connections I do not have are all welcome. - GitLab issues: https://gitlab.wikimedia.org/toolforge-repos/clip2commons (MIT) - My talk page: https://meta.wikimedia.org/wiki/User_talk:Dev_Jadiya Thanks, Dev Jadiya
_______________________________________________ Wikimedia-l mailing list -- [email protected], guidelines at: https://meta.wikimedia.org/wiki/Mailing_lists/Guidelines and https://meta.wikimedia.org/wiki/Wikimedia-l Public archives at https://lists.wikimedia.org/hyperkitty/list/[email protected]/message/T5AN5AX3QSJF7PUPCBCFIYRGHUBLVSTA/ To unsubscribe send an email to [email protected]
