Glimesh / waveguide

A polyglot WebRTC media server.
GNU Affero General Public License v3.0
37 stars 8 forks source link

Save H264 video to disk #10

Open clone1018 opened 1 year ago

clone1018 commented 1 year ago

In order to support our future goals of providing users Video on Demand of previous streams, and Clips of particular sections of a live stream, we need to know how to save H264 to disk in a playable way.

My theory is that we could easily do this in a way similar to how Peer Snap works (and based on the architecture we come up with in https://github.com/Glimesh/waveguide/issues/7). Since we'll be able to consume the RTP packets, and save them directly to disk.

Some Pion examples:

nassah221 commented 1 year ago

I'm looking to pick this up. In the pion examples, the stream is written in ivf container for VP8. Do we want to use a container for our h264 streams (mpegtsmux?) or just write them as .h264 on disk?

Also, is it better to prioritise #7? IMO the thumbnailer code needs refactoring as we would need to generalize it to cover both cases of writing to disk and sending thumbnails.

clone1018 commented 1 year ago

We'll have to implement a container for the eventual https://github.com/Glimesh/waveguide/issues/12. I'm in agreement that #7 might be a good first start though to improve handling of these "outputs" that don't actually send their data anywhere.