IStream stream = containerVideo.getStream(i); IStreamCoder code = stream.getStreamCoder(); IStream stream = containerAudio.getStream(i); IStreamCoder code = stream.getStreamCoder(); IPacket packetvideo = IPacket.make(); IStreamCoder audioCoder = containerAudio.getStream(audiostreamt).getStreamCoder();
/** * Returns the duration of the video in seconds. * * @return The duration of the video in seconds. */ public synchronized long getDuration() { final long duration = (this.reader.getContainer().getStream(this.streamIndex).getDuration()); final double timebase = this.reader.getContainer().getStream(this.streamIndex).getTimeBase().getDouble(); return Math.round(duration * timebase); }
/** * Returns the duration of the video in seconds. * * @return The duration of the video in seconds. */ public synchronized long getDuration() { final long duration = (this.reader.getContainer().getStream(this.streamIndex).getDuration()); final double timebase = this.reader.getContainer().getStream(this.streamIndex).getTimeBase().getDouble(); return Math.round(duration * timebase); }
for (int i = 0; i < numStreams; i++) { IStream stream = container.getStream(i);
double timeBase = 0; int videoStreamId = -1; private void seekToMs(IContainer container, long timeMs) { if(videoStreamId == -1) { for(int i = 0; i < container.getNumStreams(); i++) { IStream stream = container.getStream(i); IStreamCoder coder = stream.getStreamCoder(); if (coder.getCodecType() == ICodec.Type.CODEC_TYPE_VIDEO) { videoStreamId = i; timeBase = stream.getTimeBase().getDouble(); break; } } } long seekTo = (long) (timeMs/1000.0/timeBase); container.seekKeyFrame(videoStreamId, seekTo, IContainer.SEEK_FLAG_BACKWARDS); }
// create a Xuggler container object IContainer container = IContainer.make(); if(container.open(file.getPath(),IContainer.Type.READ,null) < 0) { return false; } // query how many streams the call to open found boolean isH264 = false; boolean isAAC = false; int numStreams = container.getNumStreams(); for(int i = 0; i < numStreams; i++) { // find the stream object IStream stream = container.getStream(i); // get the pre-configured decoder that can decode this stream; IStreamCoder coder = stream.getStreamCoder(); if (coder.getCodecID() == ID.CODEC_ID_H264) { isH264 = true; } if (coder.getCodecID() == ID.CODEC_ID_AAC) { isAAC = true; } } if (container !=null) { container.close(); container = null; } return isH264 && isAAC;
final double timebase = this.reader.getContainer().getStream( this.streamIndex).getTimeBase().getDouble(); final long position = (long) (timestamp / timebase);
final double timebase = this.reader.getContainer().getStream( this.streamIndex).getTimeBase().getDouble(); final long position = (long) (timestamp / timebase);
final double timebase = this.reader.getContainer().getStream( this.streamIndex).getTimeBase().getDouble(); final long position = (long) (timestamp / timebase);
final double timebase = this.reader.getContainer().getStream( this.streamIndex).getTimeBase().getDouble(); final long position = (long) (timestamp / timebase);
IStream stream = containerVideo.getStream(i); IStreamCoder code = stream.getStreamCoder(); IStream stream = containerAudio.getStream(i); IStreamCoder code = stream.getStreamCoder(); IPacket packetvideo = IPacket.make(); IStreamCoder audioCoder = containerAudio.getStream(audiostreamt).getStreamCoder();
IStream stream = containerVideo.getStream(i); IStreamCoder code = stream.getStreamCoder(); IStream stream = containerAudio.getStream(i); IStreamCoder code = stream.getStreamCoder(); IPacket packetvideo = IPacket.make(); IStreamCoder audioCoder = containerAudio.getStream(audiostreamt).getStreamCoder();
IStreamCoder audioCoder = null; for (int i = 0; i < numStreams; i++) { IStream stream = container.getStream(i); IStreamCoder coder = stream.getStreamCoder(); if (coder.getCodecType() == ICodec.Type.CODEC_TYPE_AUDIO) {
IStream stream = container.getStream(i); IStreamCoder coder = stream.getStreamCoder(); if (coder.getCodecType() == ICodec.Type.CODEC_TYPE_VIDEO) {
IStreamCoder coderVideo = containerVideo.getStream(0).getStreamCoder(); if (coderVideo.open(null, null) < 0) throw new RuntimeException("Cant open video coder"); IStreamCoder coderAudio = containerAudio.getStream(0).getStreamCoder(); if (coderAudio.open(null, null) < 0) throw new RuntimeException("Cant open audio coder");
public VideoListener(IMediaReader reader, int width, int height) { this.reader = reader; IContainer container = reader.getContainer(); int numStreams = container.getNumStreams(); for (int i = 0; i < numStreams; i++) { IStream stream = container.getStream(i); IStreamCoder coder = stream.getStreamCoder(); if (coder.getCodecType() == ICodec.Type.CODEC_TYPE_VIDEO) { videoStream = i; videoCoder = coder; } } if (videoCoder != null) { videoConverter = ConverterFactory.createConverter(ConverterFactory.XUGGLER_BGR_24, videoCoder.getPixelType(), videoCoder.getWidth(), videoCoder.getHeight()); videoPicture = IVideoPicture.make(videoCoder.getPixelType(), width, height); videoResampler = IVideoResampler.make(width, height, videoCoder.getPixelType(), videoCoder.getWidth(), videoCoder.getHeight(), videoCoder.getPixelType()); } videoReaderThread = new VideoReaderThread(reader); videoReaderThread.setName("Video Reader Thread"); videoReaderThread.setDaemon(true); videoReaderThread.start(); }
int i = 0; while (i < container.getNumStreams()) { s = container.getStream(i); if (s != null && s.getStreamCoder().getCodecType() == ICodec.Type.CODEC_TYPE_VIDEO) {
int i = 0; while (i < container.getNumStreams()) { s = container.getStream(i); if (s != null && s.getStreamCoder().getCodecType() == ICodec.Type.CODEC_TYPE_VIDEO) {