upload tizen1.0 source
[framework/web/webkit-efl.git] / LayoutTests / media / media-file.js
1 var audioCodecs = [
2     ["audio/wav", "wav"],
3     ["audio/aac", "m4a"],
4     ["audio/mpeg", "mp3"],
5     ["audio/ogg", "oga"]
6 ];
7
8 var videoCodecs = [
9     ["video/mp4", "mp4"],
10     ["video/mpeg", "mpg"],
11     ["video/quicktime", "mov"],
12     ["video/ogg", "ogv"]
13 ];
14
15 function findMediaFile(tagName, name) {
16     var codecs;
17     if (tagName == "audio")
18         codecs = audioCodecs;
19     else
20         codecs = videoCodecs;
21
22     var element = document.getElementsByTagName(tagName)[0];
23     if (!element)
24         element = document.createElement(tagName);
25
26     for (var i = 0; i < codecs.length; ++i) {
27         if (element.canPlayType(codecs[i][0]))
28             return name + "." + codecs[i][1];
29     }
30
31     return "";
32 }
33
34 function mimeTypeForExtension(extension) {
35     for (var i = 0; i < videoCodecs.length; ++i) {
36         if (extension == videoCodecs[i][1])
37             return videoCodecs[i][0];
38     }
39     for (var i = 0; i < audioCodecs.length; ++i) {
40         if (extension == audioCodecs[i][1])
41             return audioCodecs[i][0];
42     }
43
44     return "";
45 }
46
47 function mimeTypeForFile(filename) {
48  var lastPeriodIndex = filename.lastIndexOf(".");
49   if (lastPeriodIndex > 0)
50     return mimeTypeForExtension(filename.substring(lastPeriodIndex + 1));
51
52   return "";
53 }
54
55 function setSrcByTagName(tagName, src) {
56     var elements = document.getElementsByTagName(tagName);
57     if (elements) {
58         for (var i = 0; i < elements.length; ++i)
59             elements[i].src = src;
60     }
61 }
62
63 function setSrcById(id, src) {
64     var element = document.getElementById(id);
65     if (element)
66         element.src = src;
67 }
68
69 function stripExtension(filename) {
70   var lastPeriodIndex = filename.lastIndexOf(".");
71   if (lastPeriodIndex > 0)
72     return filename.substring(0, lastPeriodIndex);
73   return filename;
74 }