Video

Top 23 Video Open-Source Projects

  • FFmpeg

    Mirror of https://git.ffmpeg.org/ffmpeg.git

  • Project mention: Show HN: CompressX, my FFmpeg wrapper for macOS, made $9k in the last 4 months | news.ycombinator.com | 2024-04-10

    GPL2

    Since FFmpeg is GPL2, doesn’t that require CompressX to disclose its source code?

    IANAL, apologies if I miss understand license requirements.

    https://github.com/FFmpeg/FFmpeg?tab=License-1-ov-file

  • video.js

    Video.js - open source HTML5 video player

  • Project mention: Stream to Chromecast with resolved, vlc and bash | news.ycombinator.com | 2024-01-07

    For people who like to watch with subtitles, VLC currently doesn't support streaming to chromecast with SRT subtitles.. there are several issues for it and I believe support is slated for the next major version of Chromecast, but not sure when that will be.

    The typical "workaround" is to reencode the video file to include the subtitles directly, but that sounded like too much work, so I hacked together a static page using https://videojs.com/ to embed a player and load the video and subtitles in a browser window.

    Here it is in gist form if anyone has a similar issue: https://gist.github.com/HartS/9bb2721fa73b6798efcdbf5c463e87...

    This was hacked together as quickly as possible for my own needs, so definitely not intended to be an example of clean code. You need to run the python server separately to serve the SRT because video-js can't load it from a file URL IIRC

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • iina

    The modern video player for macOS.

  • Project mention: ReAMP, a Winamp Remake in Swift | news.ycombinator.com | 2024-04-07
  • ijkplayer

    Android/iOS video player based on FFmpeg n3.4, with MediaCodec, VideoToolbox support. (by bilibili)

  • NewPipe

    A libre lightweight streaming front-end for Android.

  • Project mention: Mobile Ad Blocker Will No Longer Stop YouTube's Ads | news.ycombinator.com | 2024-04-16

    Just use NewPipe. It's just a better Youtube client even if it had ads.

    https://newpipe.net/

  • mpv

    🎥 Command line video player

  • Project mention: MPV: Vulkan Video Decoding: Usage Guide and FAQ | news.ycombinator.com | 2023-12-20
  • lux

    👾 Fast and simple video download library and CLI tool written in Go

  • Project mention: Bilibili download stalls at around 30-60% | /r/youtubedl | 2023-05-18

    Not a fix, but I tend to use lux when downloading from bilibili. It is faster too.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • srs

    SRS is a simple, high-efficiency, real-time video server supporting RTMP, WebRTC, HLS, HTTP-FLV, SRT, MPEG-DASH, and GB28181.

  • Project mention: What's the state of screen-sharing games to friends on linux? | /r/linux_gaming | 2023-06-26
  • ScreenToGif

    🎬 ScreenToGif allows you to record a selected area of your screen, edit and save it as a gif or video.

  • Project mention: Adding Smooth Animations to Diagrams in Draw.io | dev.to | 2023-12-01

    By following these steps, your diagram will be exported as an SVG, keeping the animation intact. If you find yourself on a platform that doesn't support SVG, you can use external programs like ScreenToGif. This program lets you record your screen and export the recording as a GIF. Handy for platforms that prefer GIFs over SVGs.

  • lossless-cut

    The swiss army knife of lossless video/audio editing

  • Project mention: Show HN: CompressX, my FFmpeg wrapper for macOS, made $9k in the last 4 months | news.ycombinator.com | 2024-04-10

    For lossless cut, there's the LosslessCut [1] app, which even has an experimental but mostly working version of a "smart cut" feature [2] (aka. only re-encode the minimal mandatory amount of frames if you trim at a point between 2 key frames)

    [1]: https://github.com/mifi/lossless-cut

    [2]: https://github.com/mifi/lossless-cut/issues/126

  • Jitsi Meet

    Jitsi Meet - Secure, Simple and Scalable Video Conferences that you use as a standalone app or embed in your web application.

  • Exoplayer

    An extensible media player for Android

  • Project mention: Another post for Stremio on LG Web OS | /r/Stremio | 2023-07-15

    I tried using the Fire TV but it has huge problems with some 4K HDR video formats that goes black screen. It is an issue reported by multiple users for Plex but it's the same for all applications on FireTV. This is the issue on github for Exoplayer: https://github.com/google/ExoPlayer/issues/11096

  • remotion

    🎥 Make videos programmatically with React

  • Project mention: Show HN: Revideo – Create Videos with Code | news.ycombinator.com | 2024-04-15

    Hey HN! We’re building Revideo (https://github.com/redotvideo/revideo), an open source toolkit that lets you programmatically create and export videos with the animation library Motion Canvas (https://github.com/motion-canvas/motion-canvas). This is useful whenever you want to build apps that automate certain video tasks, which is increasingly possible using AI tools - for instance, one of our first users is building an app that turns code documentation into video tutorials.

    Revideo extends Motion Canvas with features that are essential for creating video, such as the ability to export audio tracks, a nodejs package for headless, parameterized & much faster rendering, and audio components that make audio editing and syncing easier. While Motion Canvas aims to be a standalone editor [1], we want to build a set of libraries that lets developers integrate video editing functionality into their apps. Our goal is to provide an open-source alternative to Remotion (https://github.com/remotion-dev/remotion).

    At the start of this year, we explored a bunch of product ideas in the space of AI-based video creation. For example, we’ve built apps that automatically create educational short videos and have experimented with automatically A/B testing and personalizing video ads.

    While building these products, we were frustrated with the video editing frameworks we used: Moviepy (https://github.com/Zulko/moviepy), which we relied on initially, doesn’t offer a way to preview your videos, so we’d often have to wait minutes for a video to render to test our code changes. Remotion (https://github.com/remotion-dev/remotion), which we switched to later, is really good, but we didn’t want to rely on it as it is not open source (source-available only). That’s why we decided to build Revideo.

    We’d already been following Motion Canvas for some time and really liked using it, so we thought that extending it would get us to something useful much faster than building an animation library from scratch. Initially, we tried to build our features as Motion Canvas plugins, but this did not provide enough flexibility to achieve the desired functionality. Additionally, video-specific features (such as audio support) were generally considered out of scope by the Motion Canvas maintainers, which is why we ultimately ended up creating a fork. We’re unsure if this is the right way to go in the long term, and would prefer to find a way to build Revideo without diverging from Motion Canvas too much - if you have suggestions on how to solve this, we’d love your input.

    Compared to Remotion, which builds on top of React, Motion Canvas uses the HTML Canvas API and makes you define animation flows with generator functions. Its API is more “procedural”, as it makes you define the things that happen in your animation as a sequence of yields, whereas Remotion gives you a frame number and lets you declare how your video should look like at that frame.

    Our current focus is improving the open source project. In the long term, we want to make money by building a rendering service for developers building apps with Revideo. Such a service would offer a pretty similar deployment experience to Vercel, but instead of web apps, we let developers deploy Revideo projects and expose a rendering endpoint for them. Letting us manage the infrastructure will allow us to offer much faster rendering, as we can massively parallelize rendering jobs on our servers (e.g. spinning up 100 headless browsers that render 100 frames each to render a video with 10,000 frames).

    We’d love to hear your feedback and suggestions! You can find our repo at https://github.com/redotvideo/revideo, We’ve also released an example video editing app at https://github.com/redotvideo/revideo-saas-template. Thank you!

    [1] “Motion Canvas is not a normal npm package. It's a standalone tool that happens to be distributed via npm.” - https://github.com/orgs/motion-canvas/discussions/1015

  • Anime4K

    A High-Quality Real Time Upscaler for Anime Video

  • Project mention: AI Made These Movies Sharper. Critics Say It Ruined Them. | news.ycombinator.com | 2024-04-15

    I watch AI enhanced movies and/or shows every day when I use Anime4K, a real-time ML upscaler for anime https://github.com/bloc97/Anime4K

    If you give shit-tier blurry DVD messes, it turns them into nicer blurry messes.

    If you give it the usual bitrate starved streaming quality show, it looks almost as nice as a blueray.

    If you give it a blueray... It basically comes out looking exactly the same. I'll usually still add its "darken lines" filter since I'm a fan of strong linework.

  • awesome-python-applications

    💿 Free software that works great, and also happens to be open-source Python.

  • digital_video_introduction

    A hands-on introduction to video technology: image, video, codec (av1, vp9, h265) and more (ffmpeg encoding). Translations: 🇺🇸 🇨🇳 🇯🇵 🇮🇹 🇰🇷 🇷🇺 🇧🇷 🇪🇸

  • Project mention: Breakdown of AV1 Video Codec | news.ycombinator.com | 2023-12-25

    There's a great introduction to video tech, including codecs, at https://github.com/leandromoreira/digital_video_introduction

  • Invidious

    Invidious is an alternative front-end to YouTube

  • Project mention: Google Broke Invidious Again | news.ycombinator.com | 2024-04-26
  • hls.js

    HLS.js is a JavaScript library that plays HLS in browsers with support for MSE.

  • Project mention: Show HN: Caltrans CCTV | news.ycombinator.com | 2024-03-14

    Good point; there's only a single server handling all the requests so things can be a bit slow depending on the time of day. And there are browser limits to the number of concurrent connections.

    Apple browsers with native HLS support are better than those without as well. Other browsers need to load everything via https://github.com/video-dev/hls.js/ which slows things down.

  • vhs

    Your CLI home video recorder 📼

  • Project mention: Asciinema 3.0 will be rewritten in Rust | news.ycombinator.com | 2024-02-07

    https://github.com/charmbracelet/vhs/blob/main/record.go#L22

    I was looking at the code, and it seems like you could put a low value for this and it would do what you want.

    I did not try it though

      // sleepThreshold is the time at which if there has been no activity in the

  • ffmpeg.wasm

    FFmpeg for browser, powered by WebAssembly

  • Project mention: Show HN: I open-sourced the in-memory PostgreSQL I built at work for E2E tests | news.ycombinator.com | 2024-04-07

    There's already ffmpeg wasm. I've used it in projects. Works great.

    https://github.com/ffmpegwasm/ffmpeg.wasm

  • Pion WebRTC

    Pure Go implementation of the WebRTC API

  • Project mention: VoRS: Vo(IP) Simple Alternative to Mumble | news.ycombinator.com | 2024-04-19
  • PeerTube

    ActivityPub-federated video streaming platform using P2P directly in your web browser

  • Project mention: YouTube's search function is atrocious now [video] | news.ycombinator.com | 2024-02-21
  • Waifu2x-Extension-GUI

    Video, Image and GIF upscale/enlarge(Super-Resolution) and Video frame interpolation. Achieved with Waifu2x, Real-ESRGAN, Real-CUGAN, RTX Video Super Resolution VSR, SRMD, RealSR, Anime4K, RIFE, IFRNet, CAIN, DAIN, and ACNet.

  • Project mention: Looking for ways to run AI GUI software via cloud gpu compute | /r/Cloud | 2023-11-13

    The software in question is on Github called Waifu2x-Extension-GUI https://github.com/AaronFeng753/Waifu2x-Extension-GUI

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

Video related posts

Index

What are some of the best open-source Video projects? This list will help you:

Project Stars
1 FFmpeg 42,374
2 video.js 37,169
3 iina 36,293
4 ijkplayer 32,094
5 NewPipe 28,617
6 mpv 25,960
7 lux 25,247
8 srs 24,173
9 ScreenToGif 22,671
10 lossless-cut 22,155
11 Jitsi Meet 21,684
12 Exoplayer 21,472
13 remotion 19,110
14 Anime4K 17,751
15 awesome-python-applications 16,200
16 digital_video_introduction 15,095
17 Invidious 14,937
18 hls.js 14,175
19 vhs 13,836
20 ffmpeg.wasm 12,983
21 Pion WebRTC 12,664
22 PeerTube 12,555
23 Waifu2x-Extension-GUI 12,005

Sponsored
Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com