1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.opencastproject.editor.api;
22
23 import org.opencastproject.mediapackage.MediaPackageElementFlavor;
24
25 import com.google.gson.annotations.SerializedName;
26
27 public final class TrackData {
28 public static final String AUDIO_STREAM = "audio_stream";
29 public static final String VIDEO_STREAM = "video_stream";
30
31 @SerializedName(AUDIO_STREAM)
32 private final TrackSubData audio;
33
34 @SerializedName(VIDEO_STREAM)
35 private final TrackSubData video;
36
37 private final MediaPackageElementFlavor flavor;
38 private final String uri;
39 private final String id;
40 private final String thumbnailUri;
41 private final int thumbnailPriority;
42
43 public MediaPackageElementFlavor getFlavor() {
44 if (flavor == null) {
45 return null;
46 }
47 return new MediaPackageElementFlavor(flavor.getType(), flavor.getSubtype());
48 }
49
50 public TrackData(final String flavorType, final String flavorSubtype, final TrackSubData audio,
51 final TrackSubData video, String uri, String id, String thumbnailUri, int thumbnailPriority) {
52 this.flavor = new MediaPackageElementFlavor(flavorType, flavorSubtype);
53 this.audio = audio;
54 this.video = video;
55 this.uri = uri;
56 this.id = id;
57 this.thumbnailUri = thumbnailUri;
58 this.thumbnailPriority = thumbnailPriority;
59 }
60
61 public TrackSubData getAudio() {
62 return this.audio;
63 }
64
65 public TrackSubData getVideo() {
66 return this.video;
67 }
68
69 public String getId() {
70 return this.id;
71 }
72
73 public String getThumbnailURI() {
74 return this.thumbnailUri; }
75 }