public static void main(String[] args) {
    final ArrayList<MP4VideoDemuxer> demuxers = new ArrayList<>();

    for (i = 0; i < 1000; i++) {
      ThreadTools.executeWithTimeout(
          "demuxer" + i,
          new Runnable() {
            @Override
            public void run() {
              MP4VideoDemuxer demuxer;
              try {
                System.out.println("i = " + i);
                demuxer =
                    new MP4VideoDemuxer(
                        Paths.get(
                                "20150920_0009_Atlas_DRCPushRecoveryMultiStepTest.testMultiStepForwardAndContinueWalking.mp4")
                            .toFile());

                for (int j = 0; j < 5; j++) {
                  demuxer.getNextFrame();
                }
                demuxer.delete();
                demuxers.add(demuxer);
              } catch (IOException e) {
                e.printStackTrace();
              }
            }
          },
          500,
          TimeUnit.MILLISECONDS);
    }

    System.gc();

    ThreadTools.sleepSeconds(10.0);
  }