diff options
Diffstat (limited to 'src/plugins/test_gstreamer.c')
-rw-r--r-- | src/plugins/test_gstreamer.c | 979 |
1 files changed, 974 insertions, 5 deletions
diff --git a/src/plugins/test_gstreamer.c b/src/plugins/test_gstreamer.c index 67d3a99..210ca71 100644 --- a/src/plugins/test_gstreamer.c +++ b/src/plugins/test_gstreamer.c | |||
@@ -176,15 +176,20 @@ main (int argc, char *argv[]) | |||
176 | strlen ("9999") + 1, | 176 | strlen ("9999") + 1, |
177 | 0 | 177 | 0 |
178 | }, | 178 | }, |
179 | /* Suggest a fix to gst devs; "performed by" and "contributors" should | ||
180 | * be separate. | ||
181 | */ | ||
182 | { | 179 | { |
183 | EXTRACTOR_METATYPE_ARTIST, | 180 | EXTRACTOR_METATYPE_ARTIST, |
184 | EXTRACTOR_METAFORMAT_UTF8, | 181 | EXTRACTOR_METAFORMAT_UTF8, |
185 | "text/plain", | 182 | "text/plain", |
186 | "All performed by Nobody, This Artist Contributed", | 183 | "All performed by Nobody", |
187 | strlen ("All performed by Nobody, This Artist Contributed") + 1, | 184 | strlen ("All performed by Nobody") + 1, |
185 | 0 | ||
186 | }, | ||
187 | { | ||
188 | EXTRACTOR_METATYPE_ARTIST, | ||
189 | EXTRACTOR_METAFORMAT_UTF8, | ||
190 | "text/plain", | ||
191 | "This Artist Contributed", | ||
192 | strlen ("This Artist Contributed") + 1, | ||
188 | 0 | 193 | 0 |
189 | }, | 194 | }, |
190 | { | 195 | { |
@@ -700,6 +705,970 @@ main (int argc, char *argv[]) | |||
700 | result += (0 == ET_main ("gstreamer", ps) ? 0 : 1); | 705 | result += (0 == ET_main ("gstreamer", ps) ? 0 : 1); |
701 | } | 706 | } |
702 | 707 | ||
708 | pre_test = discoverer_main (dc, "testdata/matroska_flame.mkv"); | ||
709 | if (pre_test != GST_DISCOVERER_MISSING_PLUGINS) | ||
710 | { | ||
711 | int result_stock; | ||
712 | int result_patched; | ||
713 | struct SolutionData matroska_flame_stock_sol[] = | ||
714 | { | ||
715 | { | ||
716 | EXTRACTOR_METATYPE_DURATION, | ||
717 | EXTRACTOR_METAFORMAT_UTF8, | ||
718 | "text/plain", | ||
719 | "0:00:03.143000000", | ||
720 | strlen ("0:00:03.143000000") + 1, | ||
721 | 0 | ||
722 | }, | ||
723 | { | ||
724 | EXTRACTOR_METATYPE_MIMETYPE, | ||
725 | EXTRACTOR_METAFORMAT_UTF8, | ||
726 | "text/plain", | ||
727 | "video/x-matroska", | ||
728 | strlen ("video/x-matroska") + 1, | ||
729 | 0 | ||
730 | }, | ||
731 | { | ||
732 | EXTRACTOR_METATYPE_MIMETYPE, | ||
733 | EXTRACTOR_METAFORMAT_UTF8, | ||
734 | "text/plain", | ||
735 | "video/x-indeo", | ||
736 | strlen ("video/x-indeo") + 1, | ||
737 | 0 | ||
738 | }, | ||
739 | { | ||
740 | EXTRACTOR_METATYPE_UNKNOWN, | ||
741 | EXTRACTOR_METAFORMAT_UTF8, | ||
742 | "text/plain", | ||
743 | "indeoversion=4", | ||
744 | strlen ("indeoversion=4") + 1, | ||
745 | 0 | ||
746 | }, | ||
747 | { | ||
748 | EXTRACTOR_METATYPE_TITLE, | ||
749 | EXTRACTOR_METAFORMAT_UTF8, | ||
750 | "text/plain", | ||
751 | "filesegmenttitle", | ||
752 | strlen ("filesegmenttitle") + 1, | ||
753 | 0 | ||
754 | }, | ||
755 | { | ||
756 | EXTRACTOR_METATYPE_TITLE, | ||
757 | EXTRACTOR_METAFORMAT_UTF8, | ||
758 | "text/plain", | ||
759 | "ALBUM/TITLE", | ||
760 | strlen ("ALBUM/TITLE") + 1, | ||
761 | 0 | ||
762 | }, | ||
763 | { | ||
764 | EXTRACTOR_METATYPE_TITLE, | ||
765 | EXTRACTOR_METAFORMAT_UTF8, | ||
766 | "text/plain", | ||
767 | "TITLE", | ||
768 | strlen ("TITLE") + 1, | ||
769 | 0 | ||
770 | }, | ||
771 | { | ||
772 | EXTRACTOR_METATYPE_ARTIST, | ||
773 | EXTRACTOR_METAFORMAT_UTF8, | ||
774 | "text/plain", | ||
775 | "ALBUM/ARTIST", | ||
776 | strlen ("ALBUM/ARTIST") + 1, | ||
777 | 0 | ||
778 | }, | ||
779 | { | ||
780 | EXTRACTOR_METATYPE_ARTIST, | ||
781 | EXTRACTOR_METAFORMAT_UTF8, | ||
782 | "text/plain", | ||
783 | "ARTIST", | ||
784 | strlen ("ARTIST") + 1, | ||
785 | 0 | ||
786 | }, | ||
787 | { | ||
788 | EXTRACTOR_METATYPE_COPYRIGHT, | ||
789 | EXTRACTOR_METAFORMAT_UTF8, | ||
790 | "text/plain", | ||
791 | "COPYRIGHT", | ||
792 | strlen ("COPYRIGHT") + 1, | ||
793 | 0 | ||
794 | }, | ||
795 | { | ||
796 | EXTRACTOR_METATYPE_COMPOSER, | ||
797 | EXTRACTOR_METAFORMAT_UTF8, | ||
798 | "text/plain", | ||
799 | "COMPOSER", | ||
800 | strlen ("COMPOSER") + 1, | ||
801 | 0 | ||
802 | }, | ||
803 | { | ||
804 | EXTRACTOR_METATYPE_GENRE, | ||
805 | EXTRACTOR_METAFORMAT_UTF8, | ||
806 | "text/plain", | ||
807 | "GENRE", | ||
808 | strlen ("GENRE") + 1, | ||
809 | 0 | ||
810 | }, | ||
811 | { | ||
812 | EXTRACTOR_METATYPE_ENCODER, | ||
813 | EXTRACTOR_METAFORMAT_UTF8, | ||
814 | "text/plain", | ||
815 | "ENCODER", | ||
816 | strlen ("ENCODER") + 1, | ||
817 | 0 | ||
818 | }, | ||
819 | { | ||
820 | EXTRACTOR_METATYPE_ISRC, | ||
821 | EXTRACTOR_METAFORMAT_UTF8, | ||
822 | "text/plain", | ||
823 | "ISRC", | ||
824 | strlen ("ISRC") + 1, | ||
825 | 0 | ||
826 | }, | ||
827 | { | ||
828 | EXTRACTOR_METATYPE_LICENSE, | ||
829 | EXTRACTOR_METAFORMAT_UTF8, | ||
830 | "text/plain", | ||
831 | "TERMS_OF_USE", | ||
832 | strlen ("TERMS_OF_USE") + 1, | ||
833 | 0 | ||
834 | }, | ||
835 | { | ||
836 | EXTRACTOR_METATYPE_CONTAINER_FORMAT, | ||
837 | EXTRACTOR_METAFORMAT_UTF8, | ||
838 | "text/plain", | ||
839 | "Matroska", | ||
840 | strlen ("Matroska") + 1, | ||
841 | 0 | ||
842 | }, | ||
843 | { | ||
844 | EXTRACTOR_METATYPE_VIDEO_CODEC, | ||
845 | EXTRACTOR_METAFORMAT_UTF8, | ||
846 | "text/plain", | ||
847 | "Intel Video 4", | ||
848 | strlen ("Intel Video 4") + 1, | ||
849 | 0 | ||
850 | }, | ||
851 | { | ||
852 | EXTRACTOR_METATYPE_VIDEO_LANGUAGE, | ||
853 | EXTRACTOR_METAFORMAT_UTF8, | ||
854 | "text/plain", | ||
855 | "it", | ||
856 | strlen ("it") + 1, | ||
857 | 0 | ||
858 | }, | ||
859 | { | ||
860 | EXTRACTOR_METATYPE_VIDEO_DIMENSIONS, | ||
861 | EXTRACTOR_METAFORMAT_UTF8, | ||
862 | "text/plain", | ||
863 | "256x240", | ||
864 | strlen ("256x240") + 1, | ||
865 | 0 | ||
866 | }, | ||
867 | { | ||
868 | EXTRACTOR_METATYPE_FRAME_RATE, | ||
869 | EXTRACTOR_METAFORMAT_UTF8, | ||
870 | "text/plain", | ||
871 | "35/1", | ||
872 | strlen ("35/1") + 1, | ||
873 | 0 | ||
874 | }, | ||
875 | { | ||
876 | EXTRACTOR_METATYPE_PIXEL_ASPECT_RATIO, | ||
877 | EXTRACTOR_METAFORMAT_UTF8, | ||
878 | "text/plain", | ||
879 | "1/1", | ||
880 | strlen ("1/1") + 1, | ||
881 | 0 | ||
882 | }, | ||
883 | { 0, 0, NULL, NULL, 0, -1 } | ||
884 | }; | ||
885 | struct ProblemSet stock_ps[] = | ||
886 | { | ||
887 | { "testdata/matroska_flame.mkv", | ||
888 | matroska_flame_stock_sol }, | ||
889 | { NULL, NULL } | ||
890 | }; | ||
891 | |||
892 | |||
893 | struct SolutionData matroska_flame_patched_sol[] = | ||
894 | { | ||
895 | { | ||
896 | EXTRACTOR_METATYPE_DURATION, | ||
897 | EXTRACTOR_METAFORMAT_UTF8, | ||
898 | "text/plain", | ||
899 | "0:00:03.143000000", | ||
900 | strlen ("0:00:03.143000000") + 1, | ||
901 | 0 | ||
902 | }, | ||
903 | { | ||
904 | EXTRACTOR_METATYPE_MIMETYPE, | ||
905 | EXTRACTOR_METAFORMAT_UTF8, | ||
906 | "text/plain", | ||
907 | "video/x-matroska", | ||
908 | strlen ("video/x-matroska") + 1, | ||
909 | 0 | ||
910 | }, | ||
911 | { | ||
912 | EXTRACTOR_METATYPE_MIMETYPE, | ||
913 | EXTRACTOR_METAFORMAT_UTF8, | ||
914 | "text/plain", | ||
915 | "video/x-indeo", | ||
916 | strlen ("video/x-indeo") + 1, | ||
917 | 0 | ||
918 | }, | ||
919 | { | ||
920 | EXTRACTOR_METATYPE_UNKNOWN, | ||
921 | EXTRACTOR_METAFORMAT_UTF8, | ||
922 | "text/plain", | ||
923 | "indeoversion=4", | ||
924 | strlen ("indeoversion=4") + 1, | ||
925 | 0 | ||
926 | }, | ||
927 | { | ||
928 | EXTRACTOR_METATYPE_TITLE, | ||
929 | EXTRACTOR_METAFORMAT_UTF8, | ||
930 | "text/plain", | ||
931 | "filesegmenttitle", | ||
932 | strlen ("filesegmenttitle") + 1, | ||
933 | 0 | ||
934 | }, | ||
935 | { | ||
936 | EXTRACTOR_METATYPE_ALBUM, | ||
937 | EXTRACTOR_METAFORMAT_UTF8, | ||
938 | "text/plain", | ||
939 | "ALBUM/TITLE", | ||
940 | strlen ("ALBUM/TITLE") + 1, | ||
941 | 0 | ||
942 | }, | ||
943 | { | ||
944 | EXTRACTOR_METATYPE_TITLE, | ||
945 | EXTRACTOR_METAFORMAT_UTF8, | ||
946 | "text/plain", | ||
947 | "TITLE", | ||
948 | strlen ("TITLE") + 1, | ||
949 | 0 | ||
950 | }, | ||
951 | { | ||
952 | EXTRACTOR_METATYPE_TITLE, | ||
953 | EXTRACTOR_METAFORMAT_UTF8, | ||
954 | "text/plain", | ||
955 | "SUBTITLE", | ||
956 | strlen ("SUBTITLE") + 1, | ||
957 | 0 | ||
958 | }, | ||
959 | { | ||
960 | EXTRACTOR_METATYPE_TITLE, | ||
961 | EXTRACTOR_METAFORMAT_UTF8, | ||
962 | "text/plain", | ||
963 | "VIDEO/TITLE", | ||
964 | strlen ("VIDEO/TITLE") + 1, | ||
965 | 0 | ||
966 | }, | ||
967 | { | ||
968 | EXTRACTOR_METATYPE_ARTIST, | ||
969 | EXTRACTOR_METAFORMAT_UTF8, | ||
970 | "text/plain", | ||
971 | "ALBUM/ARTIST", | ||
972 | strlen ("ALBUM/ARTIST") + 1, | ||
973 | 0 | ||
974 | }, | ||
975 | { | ||
976 | EXTRACTOR_METATYPE_ARTIST, | ||
977 | EXTRACTOR_METAFORMAT_UTF8, | ||
978 | "text/plain", | ||
979 | "ARTIST", | ||
980 | strlen ("ARTIST") + 1, | ||
981 | 0 | ||
982 | }, | ||
983 | { | ||
984 | EXTRACTOR_METATYPE_SONG_COUNT, | ||
985 | EXTRACTOR_METAFORMAT_UTF8, | ||
986 | "text/plain", | ||
987 | "20", | ||
988 | strlen ("20") + 1, | ||
989 | 0 | ||
990 | }, | ||
991 | { | ||
992 | EXTRACTOR_METATYPE_UNKNOWN, | ||
993 | EXTRACTOR_METAFORMAT_UTF8, | ||
994 | "text/plain", | ||
995 | "PART_OFFSET=5", | ||
996 | strlen ("PART_OFFSET=5") + 1, | ||
997 | 0 | ||
998 | }, | ||
999 | { | ||
1000 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1001 | EXTRACTOR_METAFORMAT_UTF8, | ||
1002 | "text/plain", | ||
1003 | "ARTIST/INSTRUMENTS=ARTIST/INSTRUMENTS", | ||
1004 | strlen ("ARTIST/INSTRUMENTS=ARTIST/INSTRUMENTS") + 1, | ||
1005 | 0 | ||
1006 | }, | ||
1007 | { | ||
1008 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1009 | EXTRACTOR_METAFORMAT_UTF8, | ||
1010 | "text/plain", | ||
1011 | "LEAD_PERFORMER=LEAD_PERFORMER", | ||
1012 | strlen ("LEAD_PERFORMER=LEAD_PERFORMER") + 1, | ||
1013 | 0 | ||
1014 | }, | ||
1015 | { | ||
1016 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1017 | EXTRACTOR_METAFORMAT_UTF8, | ||
1018 | "text/plain", | ||
1019 | "ARRANGER=ARRANGER", | ||
1020 | strlen ("ARRANGER=ARRANGER") + 1, | ||
1021 | 0 | ||
1022 | }, | ||
1023 | { | ||
1024 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1025 | EXTRACTOR_METAFORMAT_UTF8, | ||
1026 | "text/plain", | ||
1027 | "LYRICIST=LYRICIST", | ||
1028 | strlen ("LYRICIST=LYRICIST") + 1, | ||
1029 | 0 | ||
1030 | }, | ||
1031 | { | ||
1032 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1033 | EXTRACTOR_METAFORMAT_UTF8, | ||
1034 | "text/plain", | ||
1035 | "DIRECTOR=DIRECTOR", | ||
1036 | strlen ("DIRECTOR=DIRECTOR") + 1, | ||
1037 | 0 | ||
1038 | }, | ||
1039 | { | ||
1040 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1041 | EXTRACTOR_METAFORMAT_UTF8, | ||
1042 | "text/plain", | ||
1043 | "ASSISTANT_DIRECTOR=ASSISTANT_DIRECTOR", | ||
1044 | strlen ("ASSISTANT_DIRECTOR=ASSISTANT_DIRECTOR") + 1, | ||
1045 | 0 | ||
1046 | }, | ||
1047 | { | ||
1048 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1049 | EXTRACTOR_METAFORMAT_UTF8, | ||
1050 | "text/plain", | ||
1051 | "DIRECTOR_OF_PHOTOGRAPHY=DIRECTOR_OF_PHOTOGRAPHY", | ||
1052 | strlen ("DIRECTOR_OF_PHOTOGRAPHY=DIRECTOR_OF_PHOTOGRAPHY") + 1, | ||
1053 | 0 | ||
1054 | }, | ||
1055 | { | ||
1056 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1057 | EXTRACTOR_METAFORMAT_UTF8, | ||
1058 | "text/plain", | ||
1059 | "SOUND_ENGINEER=SOUND_ENGINEER", | ||
1060 | strlen ("SOUND_ENGINEER=SOUND_ENGINEER") + 1, | ||
1061 | 0 | ||
1062 | }, | ||
1063 | { | ||
1064 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1065 | EXTRACTOR_METAFORMAT_UTF8, | ||
1066 | "text/plain", | ||
1067 | "ART_DIRECTOR=ART_DIRECTOR", | ||
1068 | strlen ("ART_DIRECTOR=ART_DIRECTOR") + 1, | ||
1069 | 0 | ||
1070 | }, | ||
1071 | { | ||
1072 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1073 | EXTRACTOR_METAFORMAT_UTF8, | ||
1074 | "text/plain", | ||
1075 | "PRODUCTION_DESIGNER=PRODUCTION_DESIGNER", | ||
1076 | strlen ("PRODUCTION_DESIGNER=PRODUCTION_DESIGNER") + 1, | ||
1077 | 0 | ||
1078 | }, | ||
1079 | { | ||
1080 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1081 | EXTRACTOR_METAFORMAT_UTF8, | ||
1082 | "text/plain", | ||
1083 | "CHOREGRAPHER=CHOREGRAPHER", | ||
1084 | strlen ("CHOREGRAPHER=CHOREGRAPHER") + 1, | ||
1085 | 0 | ||
1086 | }, | ||
1087 | { | ||
1088 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1089 | EXTRACTOR_METAFORMAT_UTF8, | ||
1090 | "text/plain", | ||
1091 | "COSTUME_DESIGNER=COSTUME_DESIGNER", | ||
1092 | strlen ("COSTUME_DESIGNER=COSTUME_DESIGNER") + 1, | ||
1093 | 0 | ||
1094 | }, | ||
1095 | { | ||
1096 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1097 | EXTRACTOR_METAFORMAT_UTF8, | ||
1098 | "text/plain", | ||
1099 | "ACTOR=ACTOR", | ||
1100 | strlen ("ACTOR=ACTOR") + 1, | ||
1101 | 0 | ||
1102 | }, | ||
1103 | { | ||
1104 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1105 | EXTRACTOR_METAFORMAT_UTF8, | ||
1106 | "text/plain", | ||
1107 | "CHARACTER=CHARACTER", | ||
1108 | strlen ("CHARACTER=CHARACTER") + 1, | ||
1109 | 0 | ||
1110 | }, | ||
1111 | { | ||
1112 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1113 | EXTRACTOR_METAFORMAT_UTF8, | ||
1114 | "text/plain", | ||
1115 | "WRITTEN_BY=WRITTEN_BY", | ||
1116 | strlen ("WRITTEN_BY=WRITTEN_BY") + 1, | ||
1117 | 0 | ||
1118 | }, | ||
1119 | { | ||
1120 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1121 | EXTRACTOR_METAFORMAT_UTF8, | ||
1122 | "text/plain", | ||
1123 | "SCREENPLAY_BY=SCREENPLAY_BY", | ||
1124 | strlen ("SCREENPLAY_BY=SCREENPLAY_BY") + 1, | ||
1125 | 0 | ||
1126 | }, | ||
1127 | { | ||
1128 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1129 | EXTRACTOR_METAFORMAT_UTF8, | ||
1130 | "text/plain", | ||
1131 | "EDITED_BY=EDITED_BY", | ||
1132 | strlen ("EDITED_BY=EDITED_BY") + 1, | ||
1133 | 0 | ||
1134 | }, | ||
1135 | { | ||
1136 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1137 | EXTRACTOR_METAFORMAT_UTF8, | ||
1138 | "text/plain", | ||
1139 | "PRODUCER=PRODUCER", | ||
1140 | strlen ("PRODUCER=PRODUCER") + 1, | ||
1141 | 0 | ||
1142 | }, | ||
1143 | { | ||
1144 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1145 | EXTRACTOR_METAFORMAT_UTF8, | ||
1146 | "text/plain", | ||
1147 | "COPRODUCER=COPRODUCER", | ||
1148 | strlen ("COPRODUCER=COPRODUCER") + 1, | ||
1149 | 0 | ||
1150 | }, | ||
1151 | { | ||
1152 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1153 | EXTRACTOR_METAFORMAT_UTF8, | ||
1154 | "text/plain", | ||
1155 | "EXECUTIVE_PRODUCER=EXECUTIVE_PRODUCER", | ||
1156 | strlen ("EXECUTIVE_PRODUCER=EXECUTIVE_PRODUCER") + 1, | ||
1157 | 0 | ||
1158 | }, | ||
1159 | { | ||
1160 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1161 | EXTRACTOR_METAFORMAT_UTF8, | ||
1162 | "text/plain", | ||
1163 | "DISTRIBUTED_BY=DISTRIBUTED_BY", | ||
1164 | strlen ("DISTRIBUTED_BY=DISTRIBUTED_BY") + 1, | ||
1165 | 0 | ||
1166 | }, | ||
1167 | { | ||
1168 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1169 | EXTRACTOR_METAFORMAT_UTF8, | ||
1170 | "text/plain", | ||
1171 | "MASTERED_BY=MASTERED_BY", | ||
1172 | strlen ("MASTERED_BY=MASTERED_BY") + 1, | ||
1173 | 0 | ||
1174 | }, | ||
1175 | { | ||
1176 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1177 | EXTRACTOR_METAFORMAT_UTF8, | ||
1178 | "text/plain", | ||
1179 | "MIXED_BY=MIXED_BY", | ||
1180 | strlen ("MIXED_BY=MIXED_BY") + 1, | ||
1181 | 0 | ||
1182 | }, | ||
1183 | { | ||
1184 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1185 | EXTRACTOR_METAFORMAT_UTF8, | ||
1186 | "text/plain", | ||
1187 | "REMIXED_BY=REMIXED_BY", | ||
1188 | strlen ("REMIXED_BY=REMIXED_BY") + 1, | ||
1189 | 0 | ||
1190 | }, | ||
1191 | { | ||
1192 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1193 | EXTRACTOR_METAFORMAT_UTF8, | ||
1194 | "text/plain", | ||
1195 | "PRODUCTION_STUDIO=PRODUCTION_STUDIO", | ||
1196 | strlen ("PRODUCTION_STUDIO=PRODUCTION_STUDIO") + 1, | ||
1197 | 0 | ||
1198 | }, | ||
1199 | { | ||
1200 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1201 | EXTRACTOR_METAFORMAT_UTF8, | ||
1202 | "text/plain", | ||
1203 | "THANKS_TO=THANKS_TO", | ||
1204 | strlen ("THANKS_TO=THANKS_TO") + 1, | ||
1205 | 0 | ||
1206 | }, | ||
1207 | { | ||
1208 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1209 | EXTRACTOR_METAFORMAT_UTF8, | ||
1210 | "text/plain", | ||
1211 | "PUBLISHER=PUBLISHER", | ||
1212 | strlen ("PUBLISHER=PUBLISHER") + 1, | ||
1213 | 0 | ||
1214 | }, | ||
1215 | { | ||
1216 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1217 | EXTRACTOR_METAFORMAT_UTF8, | ||
1218 | "text/plain", | ||
1219 | "LABEL=LABEL", | ||
1220 | strlen ("LABEL=LABEL") + 1, | ||
1221 | 0 | ||
1222 | }, | ||
1223 | { | ||
1224 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1225 | EXTRACTOR_METAFORMAT_UTF8, | ||
1226 | "text/plain", | ||
1227 | "MOOD=MOOD", | ||
1228 | strlen ("MOOD=MOOD") + 1, | ||
1229 | 0 | ||
1230 | }, | ||
1231 | { | ||
1232 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1233 | EXTRACTOR_METAFORMAT_UTF8, | ||
1234 | "text/plain", | ||
1235 | "ORIGINAL_MEDIA_TYPE=ORIGINAL_MEDIA_TYPE", | ||
1236 | strlen ("ORIGINAL_MEDIA_TYPE=ORIGINAL_MEDIA_TYPE") + 1, | ||
1237 | 0 | ||
1238 | }, | ||
1239 | { | ||
1240 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1241 | EXTRACTOR_METAFORMAT_UTF8, | ||
1242 | "text/plain", | ||
1243 | "CONTENT_TYPE=CONTENT_TYPE", | ||
1244 | strlen ("CONTENT_TYPE=CONTENT_TYPE") + 1, | ||
1245 | 0 | ||
1246 | }, | ||
1247 | { | ||
1248 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1249 | EXTRACTOR_METAFORMAT_UTF8, | ||
1250 | "text/plain", | ||
1251 | "SUBJECT=SUBJECT", | ||
1252 | strlen ("SUBJECT=SUBJECT") + 1, | ||
1253 | 0 | ||
1254 | }, | ||
1255 | { | ||
1256 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1257 | EXTRACTOR_METAFORMAT_UTF8, | ||
1258 | "text/plain", | ||
1259 | "SUMMARY=SUMMARY", | ||
1260 | strlen ("SUMMARY=SUMMARY") + 1, | ||
1261 | 0 | ||
1262 | }, | ||
1263 | { | ||
1264 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1265 | EXTRACTOR_METAFORMAT_UTF8, | ||
1266 | "text/plain", | ||
1267 | "SYNOPSIS=SYNOPSIS", | ||
1268 | strlen ("SYNOPSIS=SYNOPSIS") + 1, | ||
1269 | 0 | ||
1270 | }, | ||
1271 | { | ||
1272 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1273 | EXTRACTOR_METAFORMAT_UTF8, | ||
1274 | "text/plain", | ||
1275 | "INITIAL_KEY=INITIAL_KEY", | ||
1276 | strlen ("INITIAL_KEY=INITIAL_KEY") + 1, | ||
1277 | 0 | ||
1278 | }, | ||
1279 | { | ||
1280 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1281 | EXTRACTOR_METAFORMAT_UTF8, | ||
1282 | "text/plain", | ||
1283 | "PERIOD=PERIOD", | ||
1284 | strlen ("PERIOD=PERIOD") + 1, | ||
1285 | 0 | ||
1286 | }, | ||
1287 | { | ||
1288 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1289 | EXTRACTOR_METAFORMAT_UTF8, | ||
1290 | "text/plain", | ||
1291 | "LAW_RATING=LAW_RATING", | ||
1292 | strlen ("LAW_RATING=LAW_RATING") + 1, | ||
1293 | 0 | ||
1294 | }, | ||
1295 | { | ||
1296 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1297 | EXTRACTOR_METAFORMAT_UTF8, | ||
1298 | "text/plain", | ||
1299 | "COMPOSITION_LOCATION=COMPOSITION_LOCATION", | ||
1300 | strlen ("COMPOSITION_LOCATION=COMPOSITION_LOCATION") + 1, | ||
1301 | 0 | ||
1302 | }, | ||
1303 | { | ||
1304 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1305 | EXTRACTOR_METAFORMAT_UTF8, | ||
1306 | "text/plain", | ||
1307 | "COMPOSER_NATIONALITY=COMPOSER_NATIONALITY", | ||
1308 | strlen ("COMPOSER_NATIONALITY=COMPOSER_NATIONALITY") + 1, | ||
1309 | 0 | ||
1310 | }, | ||
1311 | { | ||
1312 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1313 | EXTRACTOR_METAFORMAT_UTF8, | ||
1314 | "text/plain", | ||
1315 | "PLAY_COUNTER=PLAY_COUNTER", | ||
1316 | strlen ("PLAY_COUNTER=PLAY_COUNTER") + 1, | ||
1317 | 0 | ||
1318 | }, | ||
1319 | { | ||
1320 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1321 | EXTRACTOR_METAFORMAT_UTF8, | ||
1322 | "text/plain", | ||
1323 | "RATING=RATING", | ||
1324 | strlen ("RATING=RATING") + 1, | ||
1325 | 0 | ||
1326 | }, | ||
1327 | { | ||
1328 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1329 | EXTRACTOR_METAFORMAT_UTF8, | ||
1330 | "text/plain", | ||
1331 | "ENCODER_SETTINGS=ENCODER_SETTINGS", | ||
1332 | strlen ("ENCODER_SETTINGS=ENCODER_SETTINGS") + 1, | ||
1333 | 0 | ||
1334 | }, | ||
1335 | { | ||
1336 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1337 | EXTRACTOR_METAFORMAT_UTF8, | ||
1338 | "text/plain", | ||
1339 | "FPS=FPS", | ||
1340 | strlen ("FPS=FPS") + 1, | ||
1341 | 0 | ||
1342 | }, | ||
1343 | { | ||
1344 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1345 | EXTRACTOR_METAFORMAT_UTF8, | ||
1346 | "text/plain", | ||
1347 | "MEASURE=MEASURE", | ||
1348 | strlen ("MEASURE=MEASURE") + 1, | ||
1349 | 0 | ||
1350 | }, | ||
1351 | { | ||
1352 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1353 | EXTRACTOR_METAFORMAT_UTF8, | ||
1354 | "text/plain", | ||
1355 | "TUNING=TUNING", | ||
1356 | strlen ("TUNING=TUNING") + 1, | ||
1357 | 0 | ||
1358 | }, | ||
1359 | { | ||
1360 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1361 | EXTRACTOR_METAFORMAT_UTF8, | ||
1362 | "text/plain", | ||
1363 | "ISBN=ISBN", | ||
1364 | strlen ("ISBN=ISBN") + 1, | ||
1365 | 0 | ||
1366 | }, | ||
1367 | { | ||
1368 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1369 | EXTRACTOR_METAFORMAT_UTF8, | ||
1370 | "text/plain", | ||
1371 | "BARCODE=BARCODE", | ||
1372 | strlen ("BARCODE=BARCODE") + 1, | ||
1373 | 0 | ||
1374 | }, | ||
1375 | { | ||
1376 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1377 | EXTRACTOR_METAFORMAT_UTF8, | ||
1378 | "text/plain", | ||
1379 | "CATALOG_NUMBER=CATALOG_NUMBER", | ||
1380 | strlen ("CATALOG_NUMBER=CATALOG_NUMBER") + 1, | ||
1381 | 0 | ||
1382 | }, | ||
1383 | { | ||
1384 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1385 | EXTRACTOR_METAFORMAT_UTF8, | ||
1386 | "text/plain", | ||
1387 | "LABEL_CODE=LABEL_CODE", | ||
1388 | strlen ("LABEL_CODE=LABEL_CODE") + 1, | ||
1389 | 0 | ||
1390 | }, | ||
1391 | { | ||
1392 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1393 | EXTRACTOR_METAFORMAT_UTF8, | ||
1394 | "text/plain", | ||
1395 | "LCCN=LCCN", | ||
1396 | strlen ("LCCN=LCCN") + 1, | ||
1397 | 0 | ||
1398 | }, | ||
1399 | { | ||
1400 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1401 | EXTRACTOR_METAFORMAT_UTF8, | ||
1402 | "text/plain", | ||
1403 | "PURCHASE_ITEM=PURCHASE_ITEM", | ||
1404 | strlen ("PURCHASE_ITEM=PURCHASE_ITEM") + 1, | ||
1405 | 0 | ||
1406 | }, | ||
1407 | { | ||
1408 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1409 | EXTRACTOR_METAFORMAT_UTF8, | ||
1410 | "text/plain", | ||
1411 | "PURCHASE_INFO=PURCHASE_INFO", | ||
1412 | strlen ("PURCHASE_INFO=PURCHASE_INFO") + 1, | ||
1413 | 0 | ||
1414 | }, | ||
1415 | { | ||
1416 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1417 | EXTRACTOR_METAFORMAT_UTF8, | ||
1418 | "text/plain", | ||
1419 | "PURCHASE_OWNER=PURCHASE_OWNER", | ||
1420 | strlen ("PURCHASE_OWNER=PURCHASE_OWNER") + 1, | ||
1421 | 0 | ||
1422 | }, | ||
1423 | { | ||
1424 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1425 | EXTRACTOR_METAFORMAT_UTF8, | ||
1426 | "text/plain", | ||
1427 | "PURCHASE_PRICE=PURCHASE_PRICE", | ||
1428 | strlen ("PURCHASE_PRICE=PURCHASE_PRICE") + 1, | ||
1429 | 0 | ||
1430 | }, | ||
1431 | { | ||
1432 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1433 | EXTRACTOR_METAFORMAT_UTF8, | ||
1434 | "text/plain", | ||
1435 | "PURCHASE_CURRENCY=PURCHASE_CURRENCY", | ||
1436 | strlen ("PURCHASE_CURRENCY=PURCHASE_CURRENCY") + 1, | ||
1437 | 0 | ||
1438 | }, | ||
1439 | { | ||
1440 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1441 | EXTRACTOR_METAFORMAT_UTF8, | ||
1442 | "text/plain", | ||
1443 | "ORIGINAL/TITLE=ORIGINAL/TITLE", | ||
1444 | strlen ("ORIGINAL/TITLE=ORIGINAL/TITLE") + 1, | ||
1445 | 0 | ||
1446 | }, | ||
1447 | { | ||
1448 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1449 | EXTRACTOR_METAFORMAT_UTF8, | ||
1450 | "text/plain", | ||
1451 | "ORIGINAL/ARTIST/SORT_WITH=ORIGINAL/ARTIST/SORT_WITH", | ||
1452 | strlen ("ORIGINAL/ARTIST/SORT_WITH=ORIGINAL/ARTIST/SORT_WITH") + 1, | ||
1453 | 0 | ||
1454 | }, | ||
1455 | { | ||
1456 | EXTRACTOR_METATYPE_UNKNOWN, | ||
1457 | EXTRACTOR_METAFORMAT_UTF8, | ||
1458 | "text/plain", | ||
1459 | "ORIGINAL/ARTIST=ORIGINAL/ARTIST", | ||
1460 | strlen ("ORIGINAL/ARTIST=ORIGINAL/ARTIST") + 1, | ||
1461 | 0 | ||
1462 | }, | ||
1463 | { | ||
1464 | EXTRACTOR_METATYPE_TRACK_NUMBER, | ||
1465 | EXTRACTOR_METAFORMAT_UTF8, | ||
1466 | "text/plain", | ||
1467 | "10", | ||
1468 | strlen ("10") + 1, | ||
1469 | 0 | ||
1470 | }, | ||
1471 | { | ||
1472 | EXTRACTOR_METATYPE_COPYRIGHT, | ||
1473 | EXTRACTOR_METAFORMAT_UTF8, | ||
1474 | "text/plain", | ||
1475 | "COPYRIGHT", | ||
1476 | strlen ("COPYRIGHT") + 1, | ||
1477 | 0 | ||
1478 | }, | ||
1479 | { | ||
1480 | EXTRACTOR_METATYPE_CONTACT_INFORMATION, | ||
1481 | EXTRACTOR_METAFORMAT_UTF8, | ||
1482 | "text/plain", | ||
1483 | "COPYRIGHT/EMAIL", | ||
1484 | strlen ("COPYRIGHT/EMAIL") + 1, | ||
1485 | 0 | ||
1486 | }, | ||
1487 | { | ||
1488 | EXTRACTOR_METATYPE_CONTACT_INFORMATION, | ||
1489 | EXTRACTOR_METAFORMAT_UTF8, | ||
1490 | "text/plain", | ||
1491 | "COPYRIGHT/ADDRESS", | ||
1492 | strlen ("COPYRIGHT/ADDRESS") + 1, | ||
1493 | 0 | ||
1494 | }, | ||
1495 | { | ||
1496 | EXTRACTOR_METATYPE_CREATION_TIME, | ||
1497 | EXTRACTOR_METAFORMAT_UTF8, | ||
1498 | "text/plain", | ||
1499 | "1999-01-01", | ||
1500 | strlen ("1999-01-01") + 1, | ||
1501 | 0 | ||
1502 | }, | ||
1503 | { | ||
1504 | EXTRACTOR_METATYPE_COMMENT, | ||
1505 | EXTRACTOR_METAFORMAT_UTF8, | ||
1506 | "text/plain", | ||
1507 | "The purpose of this file is to hold as many examples of Matroska tags as possible.", | ||
1508 | strlen ("The purpose of this file is to hold as many examples of Matroska tags as possible.") + 1, | ||
1509 | 0 | ||
1510 | }, | ||
1511 | { | ||
1512 | EXTRACTOR_METATYPE_COMPOSER, | ||
1513 | EXTRACTOR_METAFORMAT_UTF8, | ||
1514 | "text/plain", | ||
1515 | "COMPOSER", | ||
1516 | strlen ("COMPOSER") + 1, | ||
1517 | 0 | ||
1518 | }, | ||
1519 | { | ||
1520 | EXTRACTOR_METATYPE_PERFORMER, | ||
1521 | EXTRACTOR_METAFORMAT_UTF8, | ||
1522 | "text/plain", | ||
1523 | "ACCOMPANIMENT", | ||
1524 | strlen ("ACCOMPANIMENT") + 1, | ||
1525 | 0 | ||
1526 | }, | ||
1527 | { | ||
1528 | EXTRACTOR_METATYPE_PERFORMER, | ||
1529 | EXTRACTOR_METAFORMAT_UTF8, | ||
1530 | "text/plain", | ||
1531 | "CONDUCTOR", | ||
1532 | strlen ("CONDUCTOR") + 1, | ||
1533 | 0 | ||
1534 | }, | ||
1535 | { | ||
1536 | EXTRACTOR_METATYPE_LYRICS, | ||
1537 | EXTRACTOR_METAFORMAT_UTF8, | ||
1538 | "text/plain", | ||
1539 | "LYRICS", | ||
1540 | strlen ("LYRICS") + 1, | ||
1541 | 0 | ||
1542 | }, | ||
1543 | { | ||
1544 | EXTRACTOR_METATYPE_ENCODED_BY, | ||
1545 | EXTRACTOR_METAFORMAT_UTF8, | ||
1546 | "text/plain", | ||
1547 | "ENCODED_BY", | ||
1548 | strlen ("ENCODED_BY") + 1, | ||
1549 | 0 | ||
1550 | }, | ||
1551 | { | ||
1552 | EXTRACTOR_METATYPE_GENRE, | ||
1553 | EXTRACTOR_METAFORMAT_UTF8, | ||
1554 | "text/plain", | ||
1555 | "GENRE", | ||
1556 | strlen ("GENRE") + 1, | ||
1557 | 0 | ||
1558 | }, | ||
1559 | { | ||
1560 | EXTRACTOR_METATYPE_DESCRIPTION, | ||
1561 | EXTRACTOR_METAFORMAT_UTF8, | ||
1562 | "text/plain", | ||
1563 | "DESCRIPTION", | ||
1564 | strlen ("DESCRIPTION") + 1, | ||
1565 | 0 | ||
1566 | }, | ||
1567 | { | ||
1568 | EXTRACTOR_METATYPE_KEYWORDS, | ||
1569 | EXTRACTOR_METAFORMAT_UTF8, | ||
1570 | "text/plain", | ||
1571 | "KEYWORDS", | ||
1572 | strlen ("KEYWORDS") + 1, | ||
1573 | 0 | ||
1574 | }, | ||
1575 | { | ||
1576 | EXTRACTOR_METATYPE_LOCATION_NAME, | ||
1577 | EXTRACTOR_METAFORMAT_UTF8, | ||
1578 | "text/plain", | ||
1579 | "RECORDING_LOCATION", | ||
1580 | strlen ("RECORDING_LOCATION") + 1, | ||
1581 | 0 | ||
1582 | }, | ||
1583 | { | ||
1584 | EXTRACTOR_METATYPE_ENCODER, | ||
1585 | EXTRACTOR_METAFORMAT_UTF8, | ||
1586 | "text/plain", | ||
1587 | "ENCODER", | ||
1588 | strlen ("ENCODER") + 1, | ||
1589 | 0 | ||
1590 | }, | ||
1591 | { | ||
1592 | EXTRACTOR_METATYPE_ISRC, | ||
1593 | EXTRACTOR_METAFORMAT_UTF8, | ||
1594 | "text/plain", | ||
1595 | "ISRC", | ||
1596 | strlen ("ISRC") + 1, | ||
1597 | 0 | ||
1598 | }, | ||
1599 | { | ||
1600 | EXTRACTOR_METATYPE_LICENSE, | ||
1601 | EXTRACTOR_METAFORMAT_UTF8, | ||
1602 | "text/plain", | ||
1603 | "LICENSE", | ||
1604 | strlen ("LICENSE") + 1, | ||
1605 | 0 | ||
1606 | }, | ||
1607 | { | ||
1608 | EXTRACTOR_METATYPE_CONTAINER_FORMAT, | ||
1609 | EXTRACTOR_METAFORMAT_UTF8, | ||
1610 | "text/plain", | ||
1611 | "Matroska", | ||
1612 | strlen ("Matroska") + 1, | ||
1613 | 0 | ||
1614 | }, | ||
1615 | { | ||
1616 | EXTRACTOR_METATYPE_VIDEO_CODEC, | ||
1617 | EXTRACTOR_METAFORMAT_UTF8, | ||
1618 | "text/plain", | ||
1619 | "Intel Video 4", | ||
1620 | strlen ("Intel Video 4") + 1, | ||
1621 | 0 | ||
1622 | }, | ||
1623 | { | ||
1624 | EXTRACTOR_METATYPE_VIDEO_LANGUAGE, | ||
1625 | EXTRACTOR_METAFORMAT_UTF8, | ||
1626 | "text/plain", | ||
1627 | "it", | ||
1628 | strlen ("it") + 1, | ||
1629 | 0 | ||
1630 | }, | ||
1631 | { | ||
1632 | EXTRACTOR_METATYPE_VIDEO_DIMENSIONS, | ||
1633 | EXTRACTOR_METAFORMAT_UTF8, | ||
1634 | "text/plain", | ||
1635 | "256x240", | ||
1636 | strlen ("256x240") + 1, | ||
1637 | 0 | ||
1638 | }, | ||
1639 | { | ||
1640 | EXTRACTOR_METATYPE_FRAME_RATE, | ||
1641 | EXTRACTOR_METAFORMAT_UTF8, | ||
1642 | "text/plain", | ||
1643 | "35/1", | ||
1644 | strlen ("35/1") + 1, | ||
1645 | 0 | ||
1646 | }, | ||
1647 | { | ||
1648 | EXTRACTOR_METATYPE_PIXEL_ASPECT_RATIO, | ||
1649 | EXTRACTOR_METAFORMAT_UTF8, | ||
1650 | "text/plain", | ||
1651 | "1/1", | ||
1652 | strlen ("1/1") + 1, | ||
1653 | 0 | ||
1654 | }, | ||
1655 | { 0, 0, NULL, NULL, 0, -1 } | ||
1656 | }; | ||
1657 | struct ProblemSet patched_ps[] = | ||
1658 | { | ||
1659 | { "testdata/matroska_flame.mkv", | ||
1660 | matroska_flame_patched_sol }, | ||
1661 | { NULL, NULL } | ||
1662 | }; | ||
1663 | g_print ("Running a test assuming stock GStreamer:\n"); | ||
1664 | result_stock = (0 == ET_main ("gstreamer", stock_ps) ? 0 : 1); | ||
1665 | g_print ("Stock GStreamer test result: %s\n", result_stock == 0 ? "OK" : "FAILED"); | ||
1666 | g_print ("Running a test assuming patched GStreamer:\n"); | ||
1667 | result_patched = (0 == ET_main ("gstreamer", patched_ps) ? 0 : 1); | ||
1668 | g_print ("Patched GStreamer test result: %s\n", result_patched == 0 ? "OK" : "FAILED"); | ||
1669 | if (result_stock && result_patched) | ||
1670 | result += 1; | ||
1671 | } | ||
703 | g_object_unref (dc); | 1672 | g_object_unref (dc); |
704 | return result; | 1673 | return result; |
705 | } | 1674 | } |