Thank you! Have set up GStreamer and run a basic pipeline to confirm it's able to encode to H264 and stream to YouTube. What I haven't been able though is confirm the FPS of this pipeline, to make sure it's indeed achieving the performance required.
gst-launch-1.0 -v videotestsrc pattern=ball is-live=true ! video/x-raw,width=640,height=480,framerate=30/1 ! v4l2h264enc ! h264parse ! flvmux name=mux audiotestsrc ! queue ! audioconvert ! avenc_aac ! aacparse ! mux. mux. ! tee name=t t. ! rtmpsink location="rtmp://a.rtmp.youtube.com/live2/"
So that would be problem #1.
Problem #2 is being able to take the video from my USB camera, that outputs MJPEG and stream that to YouTube. I'm getting stuck passing the frames to the v4l2h264enc element. I've attached the output from running the pipeline
GST_DEBUG=4 gst-launch-1.0 -v v4l2src device=/dev/video2 ! v4l2jpegdec ! v4l2h264enc ! v4l2h264dec ! autovideosink