[FFmpeg-devel] [PATCH 05/35] avdevice/dshow: set no-seek flags
Diederick Niehorster
dcnieho at gmail.com
Tue Jun 8 02:03:44 EEST 2021
avdevice/dshow is a realtime device and as such does not support seeking. Therefore, its demuxer format should define the AVFMT_NOBINSEARCH, AVFMT_NOGENSEARCH and AVFMT_NO_BYTE_SEEK flags.
With these flags set, attempting to seek (with e.g. avformat_seek_file()) correctly yields -1 (operation not permitted) instead of -22 (invalid argument).
This actually seems to apply to many other devices, at least the gdigrab, v4l2, vfwcap, x11grab, fbdev, kmsgrab and android_camera devices, from reading the source.
Signed-off-by: Diederick Niehorster <dcnieho at gmail.com>
---
libavdevice/dshow.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavdevice/dshow.c b/libavdevice/dshow.c
index 2e9f9ddf3f..389daa6380 100644
--- a/libavdevice/dshow.c
+++ b/libavdevice/dshow.c
@@ -1336,6 +1336,6 @@ const AVInputFormat ff_dshow_demuxer = {
.read_header = dshow_read_header,
.read_packet = dshow_read_packet,
.read_close = dshow_read_close,
- .flags = AVFMT_NOFILE,
+ .flags = AVFMT_NOFILE | AVFMT_NOBINSEARCH | AVFMT_NOGENSEARCH | AVFMT_NO_BYTE_SEEK,
.priv_class = &dshow_class,
};
--
2.28.0.windows.1
More information about the ffmpeg-devel
mailing list