diff --git a/libavformat/asf.h b/libavformat/asf.h
index 94c93d2c0f991c1b42c306ffdd706c43dc5fd8ba..c3107f4a0cfbd5899f5cafec7aa2a95e7abe8252 100644
--- a/libavformat/asf.h
+++ b/libavformat/asf.h
@@ -24,6 +24,7 @@
 #include <stdint.h>
 #include "avformat.h"
 #include "metadata.h"
+#include "riff.h"
 
 #define PACKET_SIZE 3200
 
@@ -46,8 +47,6 @@ typedef struct {
 
 } ASFStream;
 
-typedef uint8_t ff_asf_guid[16];
-
 typedef struct {
     ff_asf_guid guid;                  ///< generated by client computer
     uint64_t file_size;         /**< in bytes
@@ -173,11 +172,4 @@ extern const AVMetadataConv ff_asf_metadata_conv[];
 
 extern AVInputFormat ff_asf_demuxer;
 
-static av_always_inline int ff_guidcmp(const void *g1, const void *g2)
-{
-    return memcmp(g1, g2, sizeof(ff_asf_guid));
-}
-
-void ff_get_guid(AVIOContext *s, ff_asf_guid *g);
-
 #endif /* AVFORMAT_ASF_H */
diff --git a/libavformat/asfdec.c b/libavformat/asfdec.c
index 82cad560d124816c2d0550a560fc5efd1b3e63d4..d3fdf034b29ca6386cce5b4804e830e3b97e544e 100644
--- a/libavformat/asfdec.c
+++ b/libavformat/asfdec.c
@@ -133,12 +133,6 @@ static void print_guid(const ff_asf_guid *g)
 #define print_guid(g)
 #endif
 
-void ff_get_guid(AVIOContext *s, ff_asf_guid *g)
-{
-    assert(sizeof(*g) == 16);
-    avio_read(s, *g, sizeof(*g));
-}
-
 static int asf_probe(AVProbeData *pd)
 {
     /* check file header */
diff --git a/libavformat/riff.c b/libavformat/riff.c
index fb8ab1c07548424f004977944d479969ca5f90fa..b0a89de7a1a7aeed751577df89800d9effc85d39 100644
--- a/libavformat/riff.c
+++ b/libavformat/riff.c
@@ -584,3 +584,9 @@ void ff_parse_specific_params(AVCodecContext *stream, int *au_rate, int *au_ssiz
     *au_scale /= gcd;
     *au_rate /= gcd;
 }
+
+void ff_get_guid(AVIOContext *s, ff_asf_guid *g)
+{
+    assert(sizeof(*g) == 16);
+    avio_read(s, *g, sizeof(*g));
+}
diff --git a/libavformat/riff.h b/libavformat/riff.h
index 5a45a38e68a31bdb1f6e3bd3d948619a60911b04..c8a47e0af742fa88e62abe757eac93172f22b189 100644
--- a/libavformat/riff.h
+++ b/libavformat/riff.h
@@ -54,4 +54,13 @@ unsigned int ff_codec_get_tag(const AVCodecTag *tags, enum CodecID id);
 enum CodecID ff_codec_get_id(const AVCodecTag *tags, unsigned int tag);
 void ff_parse_specific_params(AVCodecContext *stream, int *au_rate, int *au_ssize, int *au_scale);
 
+typedef uint8_t ff_asf_guid[16];
+
+static av_always_inline int ff_guidcmp(const void *g1, const void *g2)
+{
+    return memcmp(g1, g2, sizeof(ff_asf_guid));
+}
+
+void ff_get_guid(AVIOContext *s, ff_asf_guid *g);
+
 #endif /* AVFORMAT_RIFF_H */