Browse code

tools: add a script to find missing codec descriptors.

Nicolas George authored on 2012/08/13 07:31:13
Showing 1 changed files
1 1
new file mode 100755
... ...
@@ -0,0 +1,37 @@
0
+#!/bin/sh
1
+
2
+srcdir=${0%/*}/..
3
+
4
+while read -r field equal value; do
5
+  case "$field $equal" in
6
+    ".id =")
7
+      eval "known_${value%,}=1"
8
+      ;;
9
+  esac
10
+done < $srcdir/libavcodec/codec_desc.c
11
+
12
+known_AV_CODEC_ID_NONE=1
13
+known_AV_CODEC_ID_FIRST_AUDIO=1
14
+known_AV_CODEC_ID_FIRST_SUBTITLE=1
15
+known_AV_CODEC_ID_FIRST_UNKNOWN=1
16
+known_AV_CODEC_ID_TTF=1
17
+known_AV_CODEC_ID_PROBE=1
18
+known_AV_CODEC_ID_MPEG2TS=1
19
+known_AV_CODEC_ID_MPEG4SYSTEMS=1
20
+known_AV_CODEC_ID_FFMETADATA=1
21
+
22
+in=0
23
+while read -r line; do
24
+  case "$in-$line" in
25
+    0-"enum AVCodecID"*) in=1;;
26
+    1-*"};"*)            in=0;;
27
+    1-*AV_CODEC_ID_*,*)
28
+      cid="${line%%[, =]*}"
29
+      eval "known=\$known_$cid"
30
+      case "$known" in
31
+        1) ;;
32
+        *) echo "$cid missing";;
33
+      esac
34
+      ;;
35
+  esac
36
+done < $srcdir/libavcodec/avcodec.h