What matters when optimizing a nginx server for audio/video streaming?

cn flag

I am looking for opinions and resources. Serving rtmp, dash, hal with nginx-rtmp-module. Test streaming from another machine with ffmpeg, but will probably use OBS later on.

  1. Which nginx settings matter?
  2. What's important in relation to hardware (cpu? ram? gpu?)?
  3. How would you decide where the bottlenecks are, what causes performance issues?

I've been using JMeter with the HLSPlugin to do a bit of load testing. Increasing the number of threads has almost no impact on cpu/ram, but the stream did start to lag incrementally. JMeter is registering a bunch of 404 not found errors, when fetching media segments/playlists.

I'm looking forward to your comments.

in flag
Does this answer your question? [Can you help me with my capacity planning?](
treakec avatar
cn flag
Thanks. Looks good, but I am trying to find out about the specificities of video streaming rather than load testing in general. In my own tests I have so far failed to establish a clear connection between the load, the errors and the hardware impact.

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.