diff --git a/libavcodec/common.h b/libavcodec/common.h
index ed1ba4ea04141e39aa11278cdee6f59d9eb3ff07..516522abc95dedb4624b5ae8b8d33f759593734f 100644
--- a/libavcodec/common.h
+++ b/libavcodec/common.h
@@ -1045,8 +1045,11 @@ static inline int ff_sqrt(int a)
  */
 static inline int ff_get_fourcc(const char *s){
     assert( strlen(s)==4 );
-    
+#ifndef WORDS_BIGENDIAN
     return (s[0]) + (s[1]<<8) + (s[2]<<16) + (s[3]<<24);
+#else
+    return (s[3]) + (s[2]<<8) + (s[1]<<16) + (s[0]<<24);
+#endif
 }
 
 #define MKTAG(a,b,c,d) (a | (b << 8) | (c << 16) | (d << 24))