]> git.sesse.net Git - ffmpeg/blobdiff - libavdevice/kmsgrab.c
avdevice: Constify all devices
[ffmpeg] / libavdevice / kmsgrab.c
index b740a3217135ce59c2a92cac1c0d0d9d2cf0b440..ba9b306c65208fa1f6472b2b604648ef78bdd0ca 100644 (file)
@@ -176,13 +176,6 @@ static int kmsgrab_get_fb2(AVFormatContext *avctx,
         err = AVERROR(EIO);
         goto fail;
     }
-    if (fb->modifier != ctx->drm_format_modifier) {
-        av_log(avctx, AV_LOG_ERROR, "Plane %"PRIu32" framebuffer "
-               "format modifier changed: now %"PRIx64".\n",
-               ctx->plane_id, fb->modifier);
-        err = AVERROR(EIO);
-        goto fail;
-    }
     if (fb->width != ctx->width || fb->height != ctx->height) {
         av_log(avctx, AV_LOG_ERROR, "Plane %"PRIu32" framebuffer "
                "dimensions changed: now %"PRIu32"x%"PRIu32".\n",
@@ -275,7 +268,7 @@ static int kmsgrab_read_packet(AVFormatContext *avctx, AVPacket *pkt)
     int64_t now;
     int err;
 
-    now = av_gettime();
+    now = av_gettime_relative();
     if (ctx->frame_last) {
         int64_t delay;
         while (1) {
@@ -283,10 +276,11 @@ static int kmsgrab_read_packet(AVFormatContext *avctx, AVPacket *pkt)
             if (delay <= 0)
                 break;
             av_usleep(delay);
-            now = av_gettime();
+            now = av_gettime_relative();
         }
     }
     ctx->frame_last = now;
+    now = av_gettime();
 
     plane = drmModeGetPlane(ctx->hwctx->fd, ctx->plane_id);
     if (!plane) {
@@ -714,7 +708,7 @@ static const AVClass kmsgrab_class = {
     .category   = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT,
 };
 
-AVInputFormat ff_kmsgrab_demuxer = {
+const AVInputFormat ff_kmsgrab_demuxer = {
     .name           = "kmsgrab",
     .long_name      = NULL_IF_CONFIG_SMALL("KMS screen capture"),
     .priv_data_size = sizeof(KMSGrabContext),