diff utils.c @ 6353:3f938b3a355a libavformat

Make hex_to_data a lavf internal function This is useful for other future RTP depacketizers
author mstorsjo
date Mon, 09 Aug 2010 10:05:33 +0000
parents 258c03dc3307
children 34df2b405550
line wrap: on
line diff
--- a/utils.c	Mon Aug 09 08:14:48 2010 +0000
+++ b/utils.c	Mon Aug 09 10:05:33 2010 +0000
@@ -3600,6 +3600,34 @@
     return buff;
 }
 
+int ff_hex_to_data(uint8_t *data, const char *p)
+{
+    int c, len, v;
+
+    len = 0;
+    v = 1;
+    for (;;) {
+        p += strspn(p, SPACE_CHARS);
+        if (*p == '\0')
+            break;
+        c = toupper((unsigned char) *p++);
+        if (c >= '0' && c <= '9')
+            c = c - '0';
+        else if (c >= 'A' && c <= 'F')
+            c = c - 'A' + 10;
+        else
+            break;
+        v = (v << 4) | c;
+        if (v & 0x100) {
+            if (data)
+                data[len] = v;
+            len++;
+            v = 1;
+        }
+    }
+    return len;
+}
+
 void av_set_pts_info(AVStream *s, int pts_wrap_bits,
                      unsigned int pts_num, unsigned int pts_den)
 {