Skip to content

Instantly share code, notes, and snippets.

@ericxtang
Last active April 4, 2018 23:10
Show Gist options
  • Select an option

  • Save ericxtang/663e3b6a7d79d4369a8d44979e32d0c8 to your computer and use it in GitHub Desktop.

Select an option

Save ericxtang/663e3b6a7d79d4369a8d44979e32d0c8 to your computer and use it in GitHub Desktop.

First of all, I realized my load testing was actually on an AWS transcoder...

But this can be replicated in the devenv. Prereq is that we fix the current protocol deployment script so the protocol is in a running state after the deployment. (Currently it's paused by default, but @yondon is working on a new branch, hopefully it can be merged back in soon)

With that fixed, we can do the following:

  1. Deploy a fresh protocol
  2. Run a broadcasting node (also the bootnode)
  3. Run a transcoding node
  4. Stream a video into the broadcasting node (rtmp://localhost:1935). At this point, the transcoder should pick up the work.
  5. Run another broadcasting node that's connected to the network (Let's say it's running on rtmp://localhost:1937)
  6. Use ffmpeg -i rtmp://localhost:1935 -vcodec libx264 -acodec aac -bitrate 1000k -f flv rtmp://localhost:1937/ to replicate the original RTMP stream into the new broadcasting node. This should create a new job, and the transcoder should pick that up.
  7. We can repeat steps 5 and 6 to add more concurrent jobs for the transcoder.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment