AstonJ
Are there any Elixir or Erlang libraries that help with this? I’ve been thinking how streaming services like twitch have exploded recently, and wondered what they might be using for compression of the video before it is streamed.
Trending in Discussions
Hey folks,
I wanted to share with you a project I’ve been working on for a while: It’s an Open Source (AGPLv3) newsletter tool. Think Ma...
New
Hi there! :wave:
@frigidcode and I (but mostly him) have been running an Elixir Book club, we’re almost done with Designing Elixir Syste...
New
I love Elixir. It’s one of 2 programming languages I’ve ever fallen in love with.
But I don’t use it anymore.
Serverless was the promis...
New
Fly’s CEO posted this recently - Turn And Face The Strange · The Fly Blog
It says that Fly is going all-in on sprites, which is a worry ...
New
In my third year of college, around 2010, I found Erlang. A few years later, I found Elixir. I liked the ideas at once: many small proces...
New
Hi everyone,
I have 8 years of production experience with Erlang/OTP and I’m just starting to get to know Elixir. What would you learn f...
New
A note on form. Joe Armstrong, co-creator of the Erlang programming language, died in April 2019. What follows is a work of narrative non...
New
Other Trending Topics
We have a solution that is using Pow and Assent for authentication.
It seems that the latest version is not compatible with Phoenix 1.8...
New
I fully migrated to my own harness from Anthropic/Gemini and I think it’s time to share it. Welcome DSH, the DeepSeek Harness, fully writ...
New
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself.
My main conc...
New
(I just needed to vent somewhere and LinkedIn is full of hope, or hype, I’m not sure which exactly)
AI dream has many faces, but general...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #ai
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #blog-post
- #elixirconf-us
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #elixirconf-eu
- #api
- #forms
- #security
- #hex










Showing Posts 1 to 6- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
andre1sk
generally everyone is using ffmpeg on encoding side I think more or less
there was erlyvideo but it seams it’s only available as commercial product http://flussonic.com/ now
We have not used erlyvideo but we did use flussonic to stream up to 20 Gbit/ sec of video was working well as far as I remember.
shavit
They are using FFMPEG:
If you don’t want live video, Phoenix can work almost out of the box for video on demand.
AstonJ
Thanks both. I’d be interested in both VOD and live video.
Here’s Twitch’s tech stack: Twitch Blog they seem to use a lot of Go.
The video system is responsible for getting video from the broadcaster to our viewers. This includes the following core components:
What would we use to process/compress the video once it’s been uploaded by a user? (Apart from flussonic)
maxlapshin
Hi, I’m author of erlyvideo and Flussonic, so let me tell a bit.
Yes, I was writing opensource video streaming code some time ago, but now I had to close it, because I was the only author and opensource didn’t work in my case.
Right now Flussonic is developed by a moderate team of programmers and other people.
Erlang shows itself very powerful when it comes to reading bytes from network, repacking them and sending forward. It is incomparable with C++ because there is no C++ program that has the same functionality. Java gives the same speed.
In Flussonic we have lot of code related to unpacking and packing containers, protocols, etc.
We do not opensource most of this part because it is very highly tighed with each other. Structure of our format-reading code is rather similar to libavformat.
Part that handles large payload is rather unique. Flussonic handles extremely large traffic: 1,5 gbit of input, 20 gbit of output, 10 gbit of disk reading.
Go is not required for this and on such speeds term “speed” changes its meaning. It is much more important to flexibly control your program then just to make a throughput.
Simple example: it is prohibited in Flussonic to send message or make gen_server:cast. Only gen_server:call, because it is very dangerous to disable flow control.
As it was properly written here: transcoding can be done only via libraries that are included into ffmpeg package. libx264 is one of the best modern softwares.
We do not put our code to opensource because it is useless and it can only hurt existing users: they rely on us, but we need to earn money to work.
If you are interested in some aspects — ask, I will try to answer.
OvermindDL1
Eeeeeh, as one of those who worked on the old Boost.Spirit2 version (they are up to Boost.Spirit3 since I had to move on), the Boost.Spirit has binary parsing/creating support that is almost as succinct as Erlangs and faster than anything else out (by definition, it is a self-optimizing template structure, if you find a case where it is slower in parsing anything compared to something else, once we saw how the other one did it then just another optimization pass fixes it permanently). And no, no Java library compared to ASIO/Spirit as a network handling and parsing interaction, not even erlang compared in speed, yet I still used erlang back then due to its fantastic error handling.
/me coughs…
andre1sk
Can’t argue with you
but have to note that we did try pretty much everything available as far as streaming and live streaming and Flussonic did save our a##.