diff --git a/libavcodec/common.c b/libavcodec/common.c
index 5224299fdad82bd45956a64a5de337f7c2629c29..19bf9621cb7f18f99a24889ca54b1c42c2bd285e 100644
--- a/libavcodec/common.c
+++ b/libavcodec/common.c
@@ -108,6 +108,15 @@ void jflush_put_bits(PutBitContext *s)
 }
 #endif
 
+void put_string(PutBitContext * pbc, char *s)
+{
+    while(*s){
+        put_bits(pbc, 8, *s);
+        s++;
+    }
+    put_bits(pbc, 8, 0);
+}
+
 /* bit input functions */
 
 void init_get_bits(GetBitContext *s, 
diff --git a/libavcodec/common.h b/libavcodec/common.h
index b365081bc80dc34791a24c196785bca1fae580a0..b76288bac7ee61197722c87bd4fd4cf28ad171c5 100644
--- a/libavcodec/common.h
+++ b/libavcodec/common.h
@@ -186,6 +186,7 @@ void init_put_bits(PutBitContext *s,
 INT64 get_bit_count(PutBitContext *s); /* XXX: change function name */
 void align_put_bits(PutBitContext *s);
 void flush_put_bits(PutBitContext *s);
+void put_string(PutBitContext * pbc, char *s);
 
 /* jpeg specific put_bits */
 void jflush_put_bits(PutBitContext *s);
diff --git a/libavcodec/h263.c b/libavcodec/h263.c
index d6114ff3667d2a1889f7302c0aa1bddabdd52228..2a44eb0c2efa102ac4f814b9518c95751c50646c 100644
--- a/libavcodec/h263.c
+++ b/libavcodec/h263.c
@@ -1102,15 +1102,6 @@ static void mpeg4_stuffing(PutBitContext * pbc)
     put_bits(pbc, length, (1<<length)-1);
 }
 
-static void put_string(PutBitContext * pbc, char *s)
-{
-    while(*s){
-        put_bits(pbc, 8, *s);
-        s++;
-    }
-    put_bits(pbc, 8, 0);
-}
-
 /* must be called before writing the header */
 void ff_set_mpeg4_time(MpegEncContext * s, int picture_number){
     int time_div, time_mod;