Error setting option use_wallclock_as_timestamps to value 1 in FFmpegFrameGrabber - avformat_open_input() error -22

130 Views Asked by At

avformat_open_input() error -22 Error setting option

FFmpegFrameGrabber grabber = new FFmpegFrameGrabber("rtsp://xxxxx");
grabber.setOption("use_wallclock_as_timestamps", "1");
grabber.setOption("rtsp_transport", "tcp");
grabber.setOption("rtsp_flags", "prefer_tcp");

grabber.start();

I used ffmpeg in JavaCV to pull rtsp streams, but there was an error like this

Error: [rtsp @ 0x7f2770145a60] Invalid option type.

Error: [rtsp @ 0x7f2770145a60] Error setting option use_wallclock_as_timestamps to value 1.

Error: [rtsp @ 0x7f2770145a60] Invalid option type.

Error: [rtsp @ 0x7f2770145a60] Error setting option use_wallclock_as_timestamps to value 1.

org.bytedeco.javacv.FFmpegFrameGrabber$Exception: avformat_open_input() error -22: Could not open input "rtsp://[email protected]:554/video/1". (Has setFormat() been called?) (For more details, make sure FFmpegLogCallback.set() has been called.)
        at org.bytedeco.javacv.FFmpegFrameGrabber.startUnsafe(FFmpegFrameGrabber.java:975)
        at org.bytedeco.javacv.FFmpegFrameGrabber.start(FFmpegFrameGrabber.java:903)
        at org.bytedeco.javacv.FFmpegFrameGrabber.start(FFmpegFrameGrabber.java:898)


When I removed grabber.setOption("use_wallclock_as_timestamps", "1");, the following error occurred:

2023-05-29 11:11:02.169 [pool-2-thread-9] ERROR [FFmpegLogCallback:54] - [RTSP demuxer @ 0x7f2b8c007240] [Eval @ 0x7f2b32790080] Undefined constant or missing '(' in 'prefer_tcp'

2023-05-29 11:11:02.169 [pool-2-thread-9] ERROR [FFmpegLogCallback:54] - [RTSP demuxer @ 0x7f2b8c007240] Unable to parse option value "prefer_tcp"

2023-05-29 11:11:02.170 [pool-2-thread-9] ERROR [FFmpegLogCallback:54] - [RTSP demuxer @ 0x7f2b8c007240] Error setting option rtsp_flags to value prefer_tcp.

2023-05-29 11:11:02.170 [pool-2-thread-9] ERROR [FFmpegLogCallback:54] - [RTSP demuxer @ 0x7f2b8c007240] [Eval @ 0x7f2b32790080] Undefined constant or missing '(' in 'prefer_tcp'

2023-05-29 11:11:02.170 [pool-2-thread-9] ERROR [FFmpegLogCallback:54] - [RTSP demuxer @ 0x7f2b8c007240] Unable to parse option value "prefer_tcp"

2023-05-29 11:11:02.170 [pool-2-thread-9] ERROR [FFmpegLogCallback:54] - [RTSP demuxer @ 0x7f2b8c007240] Error setting option rtsp_flags to value prefer_tcp.



org.bytedeco.javacv.FFmpegFrameGrabber$Exception: avformat_open_input() error -22: Could not open input "rtsp://[email protected]:554/video/1". (Has setFormat() been called?) (For more details, make sure FFmpegLogCallback.set() has been called.)
        at org.bytedeco.javacv.FFmpegFrameGrabber.startUnsafe(FFmpegFrameGrabber.java:975)
        at org.bytedeco.javacv.FFmpegFrameGrabber.start(FFmpegFrameGrabber.java:903)
        at org.bytedeco.javacv.FFmpegFrameGrabber.start(FFmpegFrameGrabber.java:898)

javacv&ffmpeg:

'org.bytedeco:javacv-platform:1.5.8',
'org.bytedeco:ffmpeg-platform:5.1.2-1.5.8',
0

There are 0 best solutions below