I am trying to stream from an IMX296 sensor. I am able to capture raw frames using v4l2-ctl -d /dev/video0 --set-fmt-video=width=1440,height=1080,pixelformat=RG10 --set-ctrl=sensor_mode=0 --stream-mmap --stream-count=1 --set-ctrl bypass_mode=0 --stream-to=test.raw
I tried nvarguscamerasrc and I don’t get a live stream. It look like it might be capturing (current draw on my sensor board goes up) but, not displaying the output. See below t says: starting captures for 0 seconds. Am I missing something in the command?
Note I get similar messages when running nvgstcapture-1.0.
nluong@nluong-desktop:~$ gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! xvimagesink
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
GST_ARGUS: Creating output stream
CONSUMER: Waiting until producer is connected...
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 1440 x 1080 FR = 59.999999 fps Duration = 16666667 ; Analog Gain range min 1.000000, max 251.188705; Exposure Range min 15000, max 16650000;
GST_ARGUS: Running with following settings:
Camera index = 0
Camera mode = 0
Output Stream W = 1440 H = 1080
seconds to Run = 0
Frame Rate = 59.999999
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.
^Chandling interrupt.
Interrupt: Stopping pipeline ...
Execution ended after 0:00:07.072176778
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
^C
nluong@nluong-desktop:~$
Additionally I noticed after running this command for the first time, nothing works after that. I think the command is not properly terminating? If I try to capture with v4l2-ctl in this state, it says the device is busy. Is ctl+c the right way to end a gst-launch-1.0?
Looks like nvarguscamerasrc can’t capture successfully it could be the sensor driver set the different gain/exposure/framerate…, could you modify those control function as dummy function to confirm it.
I modified the sensor driver to have dummy gain/exposure/framerate functions and it looks like I have the same result:
nluong@nluong-desktop:~/Documents$ gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! xvimagesink
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
GST_ARGUS: Creating output stream
CONSUMER: Waiting until producer is connected...
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 1440 x 1080 FR = 59.999999 fps Duration = 16666667 ; Analog Gain range min 1.000000, max 251.188705; Exposure Range min 15000, max 16650000;
GST_ARGUS: Running with following settings:
Camera index = 0
Camera mode = 0
Output Stream W = 1440 H = 1080
seconds to Run = 0
Frame Rate = 59.999999
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.
^Chandling interrupt.
Interrupt: Stopping pipeline ...
Execution ended after 0:00:07.264666761
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
^C
nluong@nluong-desktop:~/Documents$
Also, any idea why it says the device is busy after running and ending this command?