I start the audio streaming with:

ffmpeg \
    -f alsa -i hw:1,0 -acodec mp2 -b:a 128k

and I can see that it will encode the PCM S16LE to MP2:

Stream mapping:
  Stream #0:0 -> #0:0 (pcm_s16le (native) -> mp2 (native))

Similarly, I start the video streaming with

ffmpeg \
    -f video4linux2 -s 1920x1080 -r 5 -re -i /dev/video0 -input_format mjpeg \
    -vcodec libx264 -bf 1                                          

and I can see that again it will transform the data from rawvideo to MP4:

Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))

Is there a way to setup the camera (probably via v4l2-ctl?) so instead of raw data, I get data compressed by the camera and forward that with an ... -vcodec copy -acodec copy ... instead of having to encode (which makes the server go rather slow and makes the video quite choppy).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.