Adds width and height to video streams and subtitle file to subtitle streams
This commit is contained in:
		@@ -4,12 +4,13 @@ package net.knarcraft.ffmpegconverter.streams;
 | 
			
		||||
 * This class represents an ffmpeg audio stream
 | 
			
		||||
 */
 | 
			
		||||
public class AudioStream extends StreamObject {
 | 
			
		||||
    private String language;
 | 
			
		||||
    private int channels;
 | 
			
		||||
    private String title;
 | 
			
		||||
    private final String language;
 | 
			
		||||
    private final int channels;
 | 
			
		||||
    private final String title;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Instantiates a new audio stream
 | 
			
		||||
     *
 | 
			
		||||
     * @param codecName     <p>The codec of the audio stream.</p>
 | 
			
		||||
     * @param absoluteIndex <p>The index of the audio stream.</p>
 | 
			
		||||
     * @param relativeIndex <p>The index of the audio stream relative to other audio streams.</p>
 | 
			
		||||
@@ -29,6 +30,7 @@ public class AudioStream extends StreamObject {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the language of the audio stream
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>The language of the audio stream.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public String getLanguage() {
 | 
			
		||||
@@ -37,6 +39,7 @@ public class AudioStream extends StreamObject {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the number of channels for the audio stream
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>The number of channels for the audio stream.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public int getChannels() {
 | 
			
		||||
@@ -45,6 +48,7 @@ public class AudioStream extends StreamObject {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the title of the audio stream
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>The title of the audio stream.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public String getTitle() {
 | 
			
		||||
 
 | 
			
		||||
@@ -11,6 +11,7 @@ public abstract class StreamObject {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the type of the stream codec (video/audio/subtitle)
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>Codec type.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public String getCodecType() {
 | 
			
		||||
@@ -19,14 +20,16 @@ public abstract class StreamObject {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the name of the stream codec
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>Codec name.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public String getCodecName() {
 | 
			
		||||
    String getCodecName() {
 | 
			
		||||
        return this.codecName;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the absolute index of a stream object
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>Absolute index.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public int getAbsoluteIndex() {
 | 
			
		||||
@@ -35,6 +38,7 @@ public abstract class StreamObject {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the relative index of a stream object (kth element of codec type)
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>Relative index.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public int getRelativeIndex() {
 | 
			
		||||
 
 | 
			
		||||
@@ -6,18 +6,22 @@ package net.knarcraft.ffmpegconverter.streams;
 | 
			
		||||
public class SubtitleStream extends StreamObject {
 | 
			
		||||
    final private String language;
 | 
			
		||||
    final private String title;
 | 
			
		||||
    final private String file;
 | 
			
		||||
    final private boolean isFullSubtitle;
 | 
			
		||||
    final private boolean isImageSubtitle;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Instantiates a new subtitle stream
 | 
			
		||||
     *
 | 
			
		||||
     * @param codecName     <p>The name of the codec for the subtitle stream.</p>
 | 
			
		||||
     * @param absoluteIndex <p>The index of the subtitle stream.</p>
 | 
			
		||||
     * @param relativeIndex <p>The index of the subtitle stream relative to other subtitle streams.</p>
 | 
			
		||||
     * @param language      <p>The language of the subtitle stream.</p>
 | 
			
		||||
     * @param title         <p>The title of the subtitle stream.</p>
 | 
			
		||||
     * @param file          <p>The file containing the subtitle.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public SubtitleStream(String codecName, int absoluteIndex, int relativeIndex, String language, String title) {
 | 
			
		||||
    public SubtitleStream(String codecName, int absoluteIndex, int relativeIndex, String language, String title,
 | 
			
		||||
                          String file) {
 | 
			
		||||
        this.codecType = "subtitle";
 | 
			
		||||
        this.codecName = codecName;
 | 
			
		||||
        this.absoluteIndex = absoluteIndex;
 | 
			
		||||
@@ -26,10 +30,12 @@ public class SubtitleStream extends StreamObject {
 | 
			
		||||
        this.isFullSubtitle = isFullSubtitle();
 | 
			
		||||
        this.relativeIndex = relativeIndex;
 | 
			
		||||
        this.isImageSubtitle = isImageSubtitle();
 | 
			
		||||
        this.file = file;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the language of the subtitle stream
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>The language of the subtitle stream.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public String getLanguage() {
 | 
			
		||||
@@ -38,14 +44,25 @@ public class SubtitleStream extends StreamObject {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the title of the subtitle stream
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>The title of the subtitle stream.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public String getTitle() {
 | 
			
		||||
    private String getTitle() {
 | 
			
		||||
        return this.title;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the file name of the file containing this subtitle
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>The file name containing the subtitle stream.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public String getFile() {
 | 
			
		||||
        return this.file;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets whether the subtitle is an image subtitle
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>Whether the subtitles is an image subtitle.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public boolean getIsImageSubtitle() {
 | 
			
		||||
@@ -54,6 +71,7 @@ public class SubtitleStream extends StreamObject {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets whether the subtitle is a full subtitle
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>Whether the subtitle is a full subtitle.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public boolean getIsFullSubtitle() {
 | 
			
		||||
@@ -62,6 +80,7 @@ public class SubtitleStream extends StreamObject {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Checks whether a subtitle is image based (as opposed to text based)
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>True if the subtitle is image based.</p>
 | 
			
		||||
     */
 | 
			
		||||
    private boolean isImageSubtitle() {
 | 
			
		||||
@@ -70,6 +89,7 @@ public class SubtitleStream extends StreamObject {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Checks whether the subtitle translates everything (as opposed to just songs and signs)
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>True if the subtitle translates everything.</p>
 | 
			
		||||
     */
 | 
			
		||||
    private boolean isFullSubtitle() {
 | 
			
		||||
 
 | 
			
		||||
@@ -4,17 +4,42 @@ package net.knarcraft.ffmpegconverter.streams;
 | 
			
		||||
 * An object representation of a video stream in a media file
 | 
			
		||||
 */
 | 
			
		||||
public class VideoStream extends StreamObject {
 | 
			
		||||
    private final int width;
 | 
			
		||||
    private final int height;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Instantiates a new video stream
 | 
			
		||||
     *
 | 
			
		||||
     * @param codec         <p>The name of the codec for the video stream.</p>
 | 
			
		||||
     * @param absoluteIndex <p>The index of the video stream.</p>
 | 
			
		||||
     * @param relativeIndex <p>The index of the video stream relative to other video streams.</p>
 | 
			
		||||
     * @param width         <p>The width of the video stream.</p>
 | 
			
		||||
     * @param height        <p>The height of the video stream.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public VideoStream(String codec, int absoluteIndex, int relativeIndex) {
 | 
			
		||||
    public VideoStream(String codec, int absoluteIndex, int relativeIndex, int width, int height) {
 | 
			
		||||
        this.codecType = "video";
 | 
			
		||||
        this.codecName = codec;
 | 
			
		||||
        this.absoluteIndex = absoluteIndex;
 | 
			
		||||
        this.relativeIndex = relativeIndex;
 | 
			
		||||
        this.width = width;
 | 
			
		||||
        this.height = height;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the width of the video stream
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>The width of the video steam in pixels.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public int getWidth() {
 | 
			
		||||
        return this.width;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the height of the video stream
 | 
			
		||||
     *
 | 
			
		||||
     * @return <p>The height of the video stream in pixels.</p>
 | 
			
		||||
     */
 | 
			
		||||
    public int getHeight() {
 | 
			
		||||
        return this.height;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user