The video resolution with the Android app is likely the video to file resolution.
There is significant documentation here:
https://theta360.guide/special/linuxstreaming/
Did you set qos=false ?
if (strcmp(cmd_name, "gst_loopback") == 0)
pipe_proc = "decodebin ! autovideoconvert ! "
"video/x-raw,format=I420 ! identity drop-allocation=true !"
"v4l2sink device=/dev/video0 qos=false sync=false";
You can change the video resolution of the stream like this
https://github.com/codetricity/libuvc-theta-sample
Check video resolution
$ v4l2-ctl --list-formats-ext
ioctl: VIDIOC_ENUM_FMT
Index : 0
Type : Video Capture
Pixel Format: 'YU12'
Name : Planar YUV 4:2:0
Size: Discrete 1920x960
Interval: Discrete 0.033s (30.000 fps)
Information that might help:
- CPU (such as x86 and roughly if it is fast)
- GPU setup, primarily if you are using a discrete NVIDIA graphics card or if you are using the integrated GPU on the x86 chip
If the problems persists after you set qos=false
in the code, you next need to verify that you are using hardware acceleration, not software decoding.