diff --git a/libavformat/nsvdec.c b/libavformat/nsvdec.c
index 4f09e6a7f372389e91f9cd339e84225dec850f9a..719337c898db768a891d9e99c81de9e2ad45b86c 100644
--- a/libavformat/nsvdec.c
+++ b/libavformat/nsvdec.c
@@ -337,15 +337,7 @@ static int nsv_parse_NSVf_header(AVFormatContext *s, AVFormatParameters *ap)
                 break;
             *p++ = '\0';
             PRINT(("NSV NSVf INFO: %s='%s'\n", token, value));
-            if (!strcmp(token, "ASPECT")) {
-                /* don't care */
-            } else if (!strcmp(token, "CREATOR") || !strcmp(token, "Author")) {
-                strncpy(s->author, value, 512-1);
-            } else if (!strcmp(token, "Copyright")) {
-                strncpy(s->copyright, value, 512-1);
-            } else if (!strcmp(token, "TITLE") || !strcmp(token, "Title")) {
-                strncpy(s->title, value, 512-1);
-            }
+            av_metadata_set(&s->metadata, token, value);
         }
         av_free(strings);
     }