You can use
-r 30 to designate 30 fps for your mp4 output. The whole cmd can be like this
ffmpeg -i https://example.com/xxx.m3u8 -y -vcodec copy -c copy -bsf:a aac_adtstoasc test.mp4
ffmpeg -re -y -i https://example.com/xxx.m3u8 -map 0 -vcodec copy -c copy -bsf:a aac_adtstoasc test.mp4
See the new options:
- -map 0 maps all streams from the input.
- -re reads in the live stream HLS at its’ rate. Not specifying this may result in FFmpeg hanging (as it waits for referenced packets that are not in the manifest).