bf7a3d106338f9c673d95f45616e55df65cb1fcb
[platform/core/csapi/tizenfx.git] / src / Tizen.Multimedia / MetadataExtractor / Metadata.cs
1 /*
2 * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
3 *
4 * Licensed under the Apache License, Version 2.0 (the License);
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an AS IS BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17
18 using System;
19 using System.Collections.Generic;
20 using System.Linq;
21 using System.Text;
22 using System.Threading.Tasks;
23
24 namespace Tizen.Multimedia
25 {\r
26     /// <summary>
27     /// This class provides properties of the metadata information of the given media
28     /// </summary>
29     public class Metadata
30         {
31                 internal Metadata(MetadataBundle metadata)
32                 {
33                         Duration = metadata.Duration;
34                         VideoBitrate = metadata.VideoBitrate;
35                         VideoFPS = metadata.VideoFPS;
36                         VideoWidth = metadata.VideoWidth;
37                         VideoHeight = metadata.VideoHeight;
38                         VideoStreamCount = metadata.Videostreamcount;
39                         AudioBitrate = metadata.AudioBitrate;
40                         AudioChannels = metadata.AudioChannels;
41                         AudioSamplerate = metadata.AudioSamplerate;
42                         AudioBitPerSample = metadata.Audiobitpersample;
43                         AudioStreamCount = metadata.Audiostreamcount;
44                         Artist = metadata.Artist;
45                         Title = metadata.Title;
46                         Album = metadata.Album;
47                         AlbumArtist = metadata.AlbumArtist;
48                         Genre = metadata.Genre;
49                         Author = metadata.Author;
50                         Copyright = metadata.Copyright;
51                         Date = metadata.Date;
52                         Description = metadata.Description;
53                         Comment = metadata.Comment;
54                         TrackNumber = metadata.Tracknumber;
55                         Classification = metadata.Classification;
56                         Rating = metadata.Rating;
57                         Longitude = metadata.Longitude;
58                         Latitude = metadata.Latitude;
59                         Altitude = metadata.Altitude;
60                         Conductor = metadata.Conductor;
61                         Unsynclyric = metadata.Unsynclyric;
62                         SyncLyricNumber = metadata.SyncLyricNumber;
63                         RecordingDate = metadata.Recordingdate;
64                         Rotate = metadata.Rotate;
65                         VideoCodec = metadata.VideoCodec;
66                         AudioCodec = metadata.AudioCodec;
67                         Content360 = metadata.content360;
68                 }\r
69         /// <summary>
70         /// Duration
71         /// </summary>
72         public readonly string Duration;
73         /// <summary>
74         /// Video bitrate
75         /// </summary>
76                 public readonly string VideoBitrate;
77         /// <summary>
78         /// Video FPS
79         /// </summary>
80                 public readonly string VideoFPS;
81         /// <summary>
82         /// Video width
83         /// </summary>
84                 public readonly string VideoWidth;
85         /// <summary>
86         /// Video height
87         /// </summary>
88                 public readonly string VideoHeight;
89         /// <summary>
90         /// Video stream existence
91         /// </summary>
92                 public readonly string VideoStreamCount;
93         /// <summary>
94         /// Audio bitrate
95         /// </summary>
96                 public readonly string AudioBitrate;
97         /// <summary>
98         /// Audio channels
99         /// </summary>
100                 public readonly string AudioChannels;
101         /// <summary>
102         /// Audio samplerate
103         /// </summary>
104                 public readonly string AudioSamplerate;
105         /// <summary>
106         /// Audio bit per sample
107         /// </summary>
108                 public readonly string AudioBitPerSample;
109         /// <summary>
110         /// Audio stream existence
111         /// </summary>
112                 public readonly string AudioStreamCount;
113         /// <summary>
114         /// Artist
115         /// </summary>
116                 public readonly string Artist;
117         /// <summary>
118         /// Title
119         /// </summary>
120                 public readonly string Title;
121         /// <summary>
122         /// Album name
123         /// </summary>
124                 public readonly string Album;
125         /// <summary>
126         /// Album artist
127         /// </summary>
128                 public readonly string AlbumArtist;
129         /// <summary>
130         /// Genre
131         /// </summary>
132                 public readonly string Genre;
133         /// <summary>
134         /// Author
135         /// </summary>
136                 public readonly string Author;
137         /// <summary>
138         /// Copyright
139         /// </summary>
140                 public readonly string Copyright;
141         /// <summary>
142         /// Release date
143         /// </summary>
144                 public readonly string Date;
145         /// <summary>
146         /// Description
147         /// </summary>
148                 public readonly string Description;
149         /// <summary>
150         /// Comment
151         /// </summary>
152                 public readonly string Comment;
153         /// <summary>
154         /// Track number information
155         /// </summary>
156                 public readonly string TrackNumber;
157         /// <summary>
158         /// Classification
159         /// </summary>
160                 public readonly string Classification;
161         /// <summary>
162         /// Rating
163         /// </summary>
164                 public readonly string Rating;
165         /// <summary>
166         /// Longitude
167         /// </summary>
168                 public readonly string Longitude;
169         /// <summary>
170         /// Latitude
171         /// </summary>
172                 public readonly string Latitude;
173         /// <summary>
174         /// Altitude
175         /// </summary>
176                 public readonly string Altitude;
177         /// <summary>
178         /// Conductor
179         /// </summary>
180                 public readonly string Conductor;
181         /// <summary>
182         /// Unsynchronized lyrics
183         /// </summary>
184                 public readonly string Unsynclyric;
185         /// <summary>
186         /// Synchronized lyrics number
187         /// </summary>
188                 public readonly string SyncLyricNumber;
189         /// <summary>
190         /// Recording date
191         /// </summary>
192                 public readonly string RecordingDate;
193         /// <summary>
194         /// Rotate(orientation) information
195         /// </summary>
196                 public readonly string Rotate;
197         /// <summary>
198         /// Video codec type
199         /// </summary>
200                 public readonly string VideoCodec;
201         /// <summary>
202         /// Audio codec type
203         /// </summary>
204                 public readonly string AudioCodec;
205         /// <summary>
206         /// 360 content information
207         /// </summary>
208                 public readonly string Content360;
209         }
210
211         internal class MetadataBundle
212         {
213                 internal string Duration;
214                 internal string VideoBitrate;
215                 internal string VideoFPS;
216                 internal string VideoWidth;
217                 internal string VideoHeight;
218                 internal string Videostreamcount;
219                 internal string AudioBitrate;
220                 internal string AudioChannels;
221                 internal string AudioSamplerate;
222                 internal string Audiobitpersample;
223                 internal string Audiostreamcount;
224                 internal string Artist;
225                 internal string Title;
226                 internal string Album;
227                 internal string AlbumArtist;
228                 internal string Genre;
229                 internal string Author;
230                 internal string Copyright;
231                 internal string Date;
232                 internal string Description;
233                 internal string Comment;
234                 internal string Tracknumber;
235                 internal string Classification;
236                 internal string Rating;
237                 internal string Longitude;
238                 internal string Latitude;
239                 internal string Altitude;
240                 internal string Conductor;
241                 internal string Unsynclyric;
242                 internal string SyncLyricNumber;
243                 internal string Recordingdate;
244                 internal string Rotate;
245                 internal string VideoCodec;
246                 internal string AudioCodec;
247                 internal string content360;
248         }
249 }