You may try to add option async-handling=true
to each instance of splitmuxsink:
gst-launch-1.0 -evvv nvarguscamerasrc sensor-id=0 ! 'video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, format=(string)NV12, framerate=(fraction)30/1' ! tee name=tfront ! queue ! comp.sink_0 tfront. ! queue ! tee name=tback ! queue ! nvvidconv ! queue ! comp.sink_1 nvcompositor name=comp sink_0::xpos=0 sink_0::ypos=0 sink_0::width=1920 sink_0::height=1080 sink_1::xpos=1270 sink_1::ypos=10 sink_1::width=640 sink_1::height=360 ! tee name=tboth ! queue ! nvvidconv ! nvv4l2h264enc maxperf-enable=1 bitrate=5000000 profile=4 ! h264parse ! queue2 ! splitmuxsink async-handling=true location=./PIPUserCam_$(date +%s)_%02d.mkv max-size-time=6000000000000 muxer=matroskamux name=pipmux tboth. ! queue ! nvvidconv ! nvv4l2h264enc maxperf-enable=1 bitrate=2000000 profile=4 ! h264parse ! queue ! flvmux name=rtmux ! fakesink tfront. ! queue ! nvv4l2h264enc maxperf-enable=1 bitrate=5000000 profile=4 ! h264parse ! queue2 ! splitmuxsink async-handling=true location=./FrontUserCam_$(date +%s)_%02d.mkv max-size-time=6000000000000 muxer=matroskamux name=fmux tback. ! queue ! nvv4l2h264enc maxperf-enable=1 bitrate=5000000 profile=4 ! h264parse ! queue2 ! splitmuxsink async-handling=true location=./BackUserCam_$(date +%s)_%02d.mkv max-size-time=6000000000000 muxer=matroskamux name=bmux alsasrc device=hw:1,0 ! queue ! audioconvert ! audioresample ! voaacenc bitrate=64000 ! tee name=tmic ! queue ! rtmux. tmic. ! queue ! pipmux.audio_0 tmic. ! queue ! fmux.audio_0 tmic. ! queue ! bmux.audio_0