Examples of MediaWriter


Examples of com.xuggle.mediatool.MediaWriter

  }
 
  @Test
  public void testTimebaseGuessingWhenCodecSpecifiedAllowed()
  {
    IMediaWriter writer = new MediaWriter(PREFIX+
        "testTimebaseGuessingWhenCodecSpecifiedAllowed1.mpg");
    try {
      writer.addVideoStream(0,
          0,
          IRational.make(27,1),
          100, 100);
      fail("shouldn't get here");
    } catch (UnsupportedOperationException e) {}
    writer = new MediaWriter(PREFIX+
      "testTimebaseGuessingWhenCodecSpecifiedAllowed2.mpg");
    writer.addVideoStream(0,
        0,
        100, 100);
    IStreamCoder coder = writer.getContainer().getStream(0).getStreamCoder();
    // should have set the highest possible
    assertEquals(1, coder.getTimeBase().getNumerator());
    assertEquals(60, coder.getTimeBase().getDenominator());
  }
View Full Code Here

Examples of com.xuggle.mediatool.MediaWriter

  {
    JNIMemoryManager.setMemoryModel(model);
    for(int i = 0; i < numIterations; i++)
    {
      MediaReader reader = new MediaReader(url);
      MediaWriter writer = null;
      assertNotNull(reader);
      if (doWrite) {
        String outURL =
          MediaToolExhaustiveTest.class.getName()+"_"+
          model + "_" +
          i + ".mov";
        // adds itself to the reader
        writer = new MediaWriter(outURL, reader);
        reader.addListener(writer);
      }
      if (doViewer)
      {
        MediaViewer viewer = new MediaViewer(viewerMode,
View Full Code Here

Examples of com.xuggle.mediatool.MediaWriter

  {
    File file = new File(PREFIX + "should-not-be-created.flv");
    file.delete();
    assert(!file.exists());
    mReader.setAddDynamicStreams(true);
    mReader.addListener(new MediaWriter(file.toString(), mReader));
    assert(!file.exists());
  }
View Full Code Here

Examples of com.xuggle.mediatool.MediaWriter

    public void improperUrlTest()
  {
    File file = new File("/tmp/foo/bar/baz/should-not-be-created.flv");
    file.delete();
    assert(!file.exists());
    mReader.addListener(new MediaWriter(file.toString(), mReader));
   
    mReader.readPacket();
    assert(!file.exists());
  }
View Full Code Here

Examples of com.xuggle.mediatool.MediaWriter

  @Test(expected=IllegalArgumentException.class)
    public void improperInputContainerTypeTest()
  {
    File file = new File(PREFIX + "should-not-be-created.flv");
    MediaWriter writer = new MediaWriter(file.toString(), mReader);
    mReader.addListener(writer);
    mReader.readPacket();
    file.delete();
    new MediaWriter(file.toString(), writer.getContainer());
  }
View Full Code Here

Examples of com.xuggle.mediatool.MediaWriter

        IVideoResampler.Feature.FEATURE_COLORSPACECONVERSION))
      return;
    File file = new File(PREFIX + "transcode-to-flv.flv");
    file.delete();
    assert(!file.exists());
    MediaWriter writer = new MediaWriter(file.toString(), mReader);
    writer.addListener(new MediaViewer(mViewerMode, true));
    mReader.addListener(writer);
    while (mReader.readPacket() == null)
      ;
    assert(file.exists());
    assertEquals(1062946, file.length(), 300);
View Full Code Here

Examples of com.xuggle.mediatool.MediaWriter

        IVideoResampler.Feature.FEATURE_COLORSPACECONVERSION))
      return;
    File file = new File(PREFIX + "transcode-to-mov.mov");
    file.delete();
    assert(!file.exists());
    MediaWriter writer = new MediaWriter(file.toString(), mReader);
    writer.addListener(new MediaViewer(mViewerMode, true));
    mReader.addListener(writer);
    while (mReader.readPacket() == null)
      ;
    assert(file.exists());
    // allow 100k difference for debug builds
View Full Code Here

Examples of com.xuggle.mediatool.MediaWriter

        IVideoResampler.Feature.FEATURE_COLORSPACECONVERSION))
      return;
    File file = new File(PREFIX + "transcode-container.mov");
    file.delete();
    assert(!file.exists());
    MediaWriter writer = new MediaWriter(file.toString(),
      mReader.getContainer());
    writer.addListener(new MediaViewer(mViewerMode, true));
    mReader.addListener(writer);
    while (mReader.readPacket() == null)
      ;
    assert(file.exists());
    // allow 100k difference for debug builds
View Full Code Here

Examples of com.xuggle.mediatool.MediaWriter

    int w = 200;
    int h = 200;

    // create the writer
   
    MediaWriter writer = new MediaWriter(file.toString());
    writer.addListener(new MediaViewer(mViewerMode, true));

    // add the video stream

    ICodec codec = ICodec.findEncodingCodec(ICodec.ID.CODEC_ID_FLV1);
    writer.addVideoStream(videoStreamIndex, videoStreamId, codec, w, h);

    // create a place for video pictures

    IVideoPicture picture = IVideoPicture.make(IPixelFormat.Type.YUV420P, w, h);

    // make some pictures

    double deltaTheta = (Math.PI * 2) / 200;
    for (double theta = 0; theta < Math.PI * 2; theta += deltaTheta)
    {
      BufferedImage image = new BufferedImage(w, h,
        BufferedImage.TYPE_3BYTE_BGR);
     
      Graphics2D g = image.createGraphics();
      g.setRenderingHint(
        RenderingHints.KEY_ANTIALIASING,
        RenderingHints.VALUE_ANTIALIAS_ON);
     
      g.setColor(Color.RED);
      g.rotate(theta, w / 2, h / 2);
     
      g.fillRect(50, 50, 100, 100);

      picture.setPts(time);
      writer.encodeVideo(videoStreamIndex, image,
          time, Global.DEFAULT_TIME_UNIT);
     
      time += deltaTime;
    }

    // close the writer

    writer.close();

    assert(file.exists());
    assertEquals(file.length(), 291186, 60000);
    log.debug("manually check: " + file);
  }
View Full Code Here

Examples of com.xuggle.mediatool.MediaWriter

    int sampleRate = 44100;
    int totalSeconds = 5;

    // create the writer
   
    IMediaWriter writer = new MediaWriter(file.toString());

    // add the audio stream

    ICodec codec = ICodec.findEncodingCodec(ICodec.ID.CODEC_ID_MP3);
    IContainer container = writer.getContainer();
    IStream stream = container.getStream(
        writer.addAudioStream(audioStreamIndex, audioStreamId,
            codec, channelCount, sampleRate));
    int sampleCount = stream.getStreamCoder().getDefaultAudioFrameSize();

    // create a place for audio samples

    IAudioSamples samples = IAudioSamples.make(sampleCount, channelCount);

    // create the tone generator

    TestAudioSamplesGenerator generator = new TestAudioSamplesGenerator();
    generator.prepare(channelCount, sampleRate);

    // let's make some noise!

    int totalSamples = 0;
    while (totalSamples < sampleRate * totalSeconds)
    {
      generator.fillNextSamples(samples, sampleCount);
      writer.encodeAudio(audioStreamIndex, samples);
      totalSamples += samples.getNumSamples();
    }

    // close the writer

    writer.close();

    assert(file.exists());
    assertEquals(file.length(), 40365, 100);
    log.debug("manually check: " + file);
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.