View Javadoc
1   /*
2    * Licensed to The Apereo Foundation under one or more contributor license
3    * agreements. See the NOTICE file distributed with this work for additional
4    * information regarding copyright ownership.
5    *
6    *
7    * The Apereo Foundation licenses this file to you under the Educational
8    * Community License, Version 2.0 (the "License"); you may not use this file
9    * except in compliance with the License. You may obtain a copy of the License
10   * at:
11   *
12   *   http://opensource.org/licenses/ecl2.txt
13   *
14   * Unless required by applicable law or agreed to in writing, software
15   * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
16   * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
17   * License for the specific language governing permissions and limitations under
18   * the License.
19   *
20   */
21  
22  
23  package org.opencastproject.inspection.ffmpeg.api;
24  
25  import org.opencastproject.mediapackage.track.FrameRateMode;
26  import org.opencastproject.mediapackage.track.ScanOrder;
27  import org.opencastproject.mediapackage.track.ScanType;
28  
29  /**
30   * This class bundles technical information about a video stream.
31   */
32  public class VideoStreamMetadata extends StreamMetadata {
33  
34    protected String formatSettingsBVOP;
35    protected String formatSettingsCABAC;
36    protected String formatSettingsQPel;
37    protected String formatSettingsGMC;
38    protected String formatSettingsMatrix;
39    protected String formatSettingsRefFrames;
40    protected String formatSettingsPulldown;
41  
42    protected Integer frameWidth;
43    protected Integer frameHeight;
44    protected Float pixelAspectRatio;
45    protected Float displayAspectRatio;
46  
47    protected Float frameRate;
48    protected Float frameRateMinimum;
49    protected Float frameRateMaximum;
50    protected FrameRateMode frameRateMode;
51  
52    protected Long frameCount;
53  
54    // PAL, NTSC
55    protected String videoStandard;
56  
57    // bits / (pixel * frame)
58    protected Float qualityFactor;
59  
60    protected ScanType scanType;
61    protected ScanOrder scanOrder;
62  
63    public String getFormatSettingsBVOP() {
64      return formatSettingsBVOP;
65    }
66  
67    public void setFormatSettingsBVOP(String formatSettingsBVOP) {
68      this.formatSettingsBVOP = formatSettingsBVOP;
69    }
70  
71    public String getFormatSettingsCABAC() {
72      return formatSettingsCABAC;
73    }
74  
75    public void setFormatSettingsCABAC(String formatSettingsCABAC) {
76      this.formatSettingsCABAC = formatSettingsCABAC;
77    }
78  
79    public String getFormatSettingsQPel() {
80      return formatSettingsQPel;
81    }
82  
83    public void setFormatSettingsQPel(String formatSettingsQPel) {
84      this.formatSettingsQPel = formatSettingsQPel;
85    }
86  
87    public String getFormatSettingsGMC() {
88      return formatSettingsGMC;
89    }
90  
91    public void setFormatSettingsGMC(String formatSettingsGMC) {
92      this.formatSettingsGMC = formatSettingsGMC;
93    }
94  
95    public String getFormatSettingsMatrix() {
96      return formatSettingsMatrix;
97    }
98  
99    public void setFormatSettingsMatrix(String formatSettingsMatrix) {
100     this.formatSettingsMatrix = formatSettingsMatrix;
101   }
102 
103   public String getFormatSettingsRefFrames() {
104     return formatSettingsRefFrames;
105   }
106 
107   public void setFormatSettingsRefFrames(String formatSettingsRefFrames) {
108     this.formatSettingsRefFrames = formatSettingsRefFrames;
109   }
110 
111   public String getFormatSettingsPulldown() {
112     return formatSettingsPulldown;
113   }
114 
115   public void setFormatSettingsPulldown(String formatSettingsPulldown) {
116     this.formatSettingsPulldown = formatSettingsPulldown;
117   }
118 
119   /**
120    * Returns the frame width in pixels.
121    */
122   public Integer getFrameWidth() {
123     return frameWidth;
124   }
125 
126   /**
127    * Sets the frame width in pixels.
128    */
129   public void setFrameWidth(Integer frameWidth) {
130     this.frameWidth = frameWidth;
131   }
132 
133   /**
134    * Returns the frame height in pixels.
135    */
136   public Integer getFrameHeight() {
137     return frameHeight;
138   }
139 
140   /**
141    * Sets the frame height in pixels.
142    */
143   public void setFrameHeight(Integer frameHeight) {
144     this.frameHeight = frameHeight;
145   }
146 
147   /**
148    * Gets the pixel aspect ratio.
149    */
150   public Float getPixelAspectRatio() {
151     return pixelAspectRatio;
152   }
153 
154   public void setPixelAspectRatio(Float pixelAspectRatio) {
155     this.pixelAspectRatio = pixelAspectRatio;
156   }
157 
158   public Float getDisplayAspectRatio() {
159     return displayAspectRatio;
160   }
161 
162   public void setDisplayAspectRatio(Float displayAspectRatio) {
163     this.displayAspectRatio = displayAspectRatio;
164   }
165 
166   /**
167    * Returns the frame rate in frames per second.
168    */
169   public Float getFrameRate() {
170     return frameRate;
171   }
172 
173   /**
174    * Sets the frame rate in frames per second.
175    */
176   public void setFrameRate(Float frameRate) {
177     this.frameRate = frameRate;
178   }
179 
180   public Float getFrameRateMinimum() {
181     return frameRateMinimum;
182   }
183 
184   public void setFrameRateMinimum(Float frameRateMinimum) {
185     this.frameRateMinimum = frameRateMinimum;
186   }
187 
188   public Float getFrameRateMaximum() {
189     return frameRateMaximum;
190   }
191 
192   public void setFrameRateMaximum(Float frameRateMaximum) {
193     this.frameRateMaximum = frameRateMaximum;
194   }
195 
196   public FrameRateMode getFrameRateMode() {
197     return frameRateMode;
198   }
199 
200   public void setFrameRateMode(FrameRateMode frameRateMode) {
201     this.frameRateMode = frameRateMode;
202   }
203 
204   public Long getFrameCount() {
205     return frameCount;
206   }
207 
208   public void setFrameCount(Long frameCount) {
209     this.frameCount = frameCount;
210   }
211 
212   public String getVideoStandard() {
213     return videoStandard;
214   }
215 
216   public void setVideoStandard(String videoStandard) {
217     this.videoStandard = videoStandard;
218   }
219 
220   public Float getQualityFactor() {
221     return qualityFactor;
222   }
223 
224   public void setQualityFactor(Float qualityFactor) {
225     this.qualityFactor = qualityFactor;
226   }
227 
228   public ScanType getScanType() {
229     return scanType;
230   }
231 
232   public void setScanType(ScanType scanType) {
233     this.scanType = scanType;
234   }
235 
236   public ScanOrder getScanOrder() {
237     return scanOrder;
238   }
239 
240   public void setScanOrder(ScanOrder scanOrder) {
241     this.scanOrder = scanOrder;
242   }
243 }