I'm using a dm368 to capture video input from component and audio from the mic input with ridgerun eval sdk 2011Q2. My intent is to stream the output using mpeg ts over UDP. I'm using gstreamer and can successfully capture the input for both audio and video with the following pipeline and view the stream on a remote host using vlc:
gst-launch -e v4l2src chain-ipipe=true always-copy=FALSE input-src=component ! "video/x-raw-yuv,format=(fourcc)NV12,width=1280,height=720,framerate=(fraction)30/1" ! dmaiaccel ! dmaienc_h264 encodingpreset=2 targetbitrate=1800000 outputBufferSize=5000000 ratecontrol=2 headers=true ! dmaiperf print-arm-load=true ! queue ! mux. alsasrc buffer-time=800000 latency-time=30000 ! "audio/x-raw-int,rate=44100" ! dmaienc_aac outputBufferSize=131072 bitrate=128000 ! mux. mpegtsmux name=mux ! queue ! udpsink port=5000 host=192.168.111.184 enable-last-buffer=false sync=true
My problem is that the the cpu runs up when using mpegtsmux with output similar to the following:
../../../../src/gst-libs/gst/audio/gstbaseaudiosrc.c(828): gst_base_audio_src_create (): /GstPipeline:pipeline0/GstAlsaSrc:alsasrc0:Dropped 32768 samples. This is most likely because downstream can't keep up and is consuming samples too slowly.INFO:Timestamp: 48:02:57.066361228; bps: 16615; fps: 1; CPU: 99; INFO:Timestamp: 48:02:58.155326147; bps: 28930; fps: 1; CPU: 71;
The resulting video is basically useless. The audio is reasonable, although it sounds like the gain is too high, but the video is lik e a slow moving slide show.
If i replace the muxer with ffmux_mpegts the cpu drops to around 60% and the fps goes right back up to 30, right where I'd expect it. However, I can no longer view the stream on a remote host, and when I try to write the output using filesink instead, there is little to no data in the file and it can't be opened with a media player.
Any suggestions on how to get valid output using ffmux_mpegts or to improve the performance of mpegtsmux? Either solution would be acceptable as long as my frame rate stays consistently around 30fps and cpu is below 100%.
Thanks in advance