Skip to content

Commit

Permalink
release 1.0.8
Browse files Browse the repository at this point in the history
  • Loading branch information
qqia committed Dec 10, 2018
1 parent 0c339de commit 139fd2b
Show file tree
Hide file tree
Showing 7 changed files with 22 additions and 18 deletions.
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,14 @@ with the AWS SDK for the Kinesis Video. This example provides examples for
The Gstreamer pipeline is a toy example that demonstrates that Gstreamer can parse the mkv passed into it.
## Release Notes
### Release 1.0.8 (Dec 2018)
* Add close method for derived classes to cleanup resources.
* Add exception type which could be used in downstream frame processing logic.
* Make boolean value thread-safe in ContinuousGetMediaWorker.
* Remove extra exception wrapping in CompositeMkvElementVisitor.
* Declare exception throwing for some methods.
* Enabled stack trace in ContinuousGetMediaWorker when there is an exception.
### Release 1.0.7 (Sep 2018)
* Add flag in KinesisVideoRendererExample and KinesisVideoExample to use the existing stream (and not doing PutMedia again if it exists already).
* Added support to retrieve the information from FragmentMetadata and display in the image panel during rendering.
Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
<artifactId>amazon-kinesis-video-streams-parser-library</artifactId>
<packaging>jar</packaging>
<name>Amazon Kinesis Video Streams Parser Library</name>
<version>1.0.8-SNAPSHOT</version>
<version>1.0.8</version>
<description>The Amazon Kinesis Video Streams Parser Library for Java enables Java developers to parse the streams
returned by GetMedia calls to Amazon Kinesis Video.
</description>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -106,10 +106,10 @@ public void run() {
Thread.sleep(200);
}
} catch (FrameProcessException e) {
log.error("FrameProcessException in ContinuousGetMedia worker for stream {} {}", streamName, e);
log.error("FrameProcessException in ContinuousGetMedia worker for stream: " + streamName, e);
break;
} catch (IOException | MkvElementVisitException e) {
log.error("Failure in ContinuousGetMedia worker for stream {} {}", streamName, e);
log.error("Failure in ContinuousGetMedia worker for stream: " + streamName, e);
} catch (InterruptedException ie) {
Thread.currentThread().interrupt();
throw new RuntimeException(ie);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,17 +63,13 @@ public boolean isDone() {
}

private void visitAll(MkvElement element) throws MkvElementVisitException {
try {
for (MkvElementVisitor childVisitor : childVisitors) {
if (log.isDebugEnabled()) {
log.debug("Composite visitor calling {} on element {}",
childVisitor.getClass().toString(),
element.toString());
}
element.accept(childVisitor);
for (MkvElementVisitor childVisitor : childVisitors) {
if (log.isDebugEnabled()) {
log.debug("Composite visitor calling {} on element {}",
childVisitor.getClass().toString(),
element.toString());
}
} catch (MkvElementVisitException e) {
throw new MkvElementVisitException("Composite Visitor caught exception ", e);
element.accept(childVisitor);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@

import com.amazonaws.kinesisvideo.parser.ebml.MkvTypeInfos;
import com.amazonaws.kinesisvideo.parser.mkv.Frame;
import com.amazonaws.kinesisvideo.parser.mkv.FrameProcessException;
import com.amazonaws.kinesisvideo.parser.mkv.MkvElementVisitor;
import com.amazonaws.kinesisvideo.parser.mkv.MkvValue;
import com.amazonaws.kinesisvideo.parser.mkv.visitors.CompositeMkvElementVisitor;
Expand Down Expand Up @@ -58,13 +59,13 @@ public void close() {

public interface FrameProcessor extends AutoCloseable {
default void process(Frame frame, MkvTrackMetadata trackMetadata,
Optional<FragmentMetadata> fragmentMetadata) {
Optional<FragmentMetadata> fragmentMetadata) throws FrameProcessException {
throw new NotImplementedException("Default FrameVisitor.FrameProcessor");
}

default void process(Frame frame, MkvTrackMetadata trackMetadata,
Optional<FragmentMetadata> fragmentMetadata,
Optional<FragmentMetadataVisitor.MkvTagProcessor> tagProcessor) {
Optional<FragmentMetadataVisitor.MkvTagProcessor> tagProcessor) throws FrameProcessException {
if (tagProcessor.isPresent()) {
throw new NotImplementedException("Default FrameVisitor.FrameProcessor");
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
package com.amazonaws.kinesisvideo.parser.utilities;

import com.amazonaws.kinesisvideo.parser.mkv.Frame;
import com.amazonaws.kinesisvideo.parser.mkv.FrameProcessException;
import lombok.Getter;
import lombok.extern.slf4j.Slf4j;
import org.jcodec.codecs.h264.H264Decoder;
Expand Down Expand Up @@ -43,7 +44,7 @@ public class H264FrameDecoder implements FrameVisitor.FrameProcessor {
private byte[] codecPrivateData;

@Override
public void process(Frame frame, MkvTrackMetadata trackMetadata, Optional<FragmentMetadata> fragmentMetadata) {
public void process(Frame frame, MkvTrackMetadata trackMetadata, Optional<FragmentMetadata> fragmentMetadata) throws FrameProcessException {
decodeH264Frame(frame, trackMetadata);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,6 @@
import com.amazonaws.kinesisvideo.parser.mkv.MkvElementVisitException;
import com.amazonaws.kinesisvideo.parser.mkv.MkvElementVisitor;
import com.amazonaws.kinesisvideo.parser.mkv.StreamingMkvReader;
import com.amazonaws.kinesisvideo.parser.mkv.visitors.CompositeMkvElementVisitor;
import com.amazonaws.kinesisvideo.parser.utilities.OutputSegmentMerger;

import java.io.IOException;
import java.io.InputStream;
Expand Down

0 comments on commit 139fd2b

Please sign in to comment.