public final class

SeekPoint

extends java.lang.Object

 java.lang.Object

↳androidx.media3.extractor.SeekPoint

Gradle dependencies

compile group: 'androidx.media3', name: 'media3-extractor', version: '1.5.0-alpha01'

  • groupId: androidx.media3
  • artifactId: media3-extractor
  • version: 1.5.0-alpha01

Artifact androidx.media3:media3-extractor:1.5.0-alpha01 it located at Google repository (https://maven.google.com/)

Overview

Defines a seek point in a media stream.

Summary

Fields
public final longposition

The byte offset of the seek point.

public static final SeekPointSTART

A SeekPoint whose time and byte offset are both set to 0.

public final longtimeUs

The time of the seek point, in microseconds.

Constructors
publicSeekPoint(long timeUs, long position)

Methods
public booleanequals(java.lang.Object obj)

public inthashCode()

public java.lang.StringtoString()

from java.lang.Objectclone, finalize, getClass, notify, notifyAll, wait, wait, wait

Fields

public static final SeekPoint START

A SeekPoint whose time and byte offset are both set to 0.

public final long timeUs

The time of the seek point, in microseconds.

public final long position

The byte offset of the seek point.

Constructors

public SeekPoint(long timeUs, long position)

Parameters:

timeUs: The time of the seek point, in microseconds.
position: The byte offset of the seek point.

Methods

public java.lang.String toString()

public boolean equals(java.lang.Object obj)

public int hashCode()

Source

/*
 * Copyright (C) 2017 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package androidx.media3.extractor;

import androidx.annotation.Nullable;
import androidx.media3.common.util.UnstableApi;

/** Defines a seek point in a media stream. */
@UnstableApi
public final class SeekPoint {

  /** A {@link SeekPoint} whose time and byte offset are both set to 0. */
  public static final SeekPoint START = new SeekPoint(0, 0);

  /** The time of the seek point, in microseconds. */
  public final long timeUs;

  /** The byte offset of the seek point. */
  public final long position;

  /**
   * @param timeUs The time of the seek point, in microseconds.
   * @param position The byte offset of the seek point.
   */
  public SeekPoint(long timeUs, long position) {
    this.timeUs = timeUs;
    this.position = position;
  }

  @Override
  public String toString() {
    return "[timeUs=" + timeUs + ", position=" + position + "]";
  }

  @Override
  public boolean equals(@Nullable Object obj) {
    if (this == obj) {
      return true;
    }
    if (obj == null || getClass() != obj.getClass()) {
      return false;
    }
    SeekPoint other = (SeekPoint) obj;
    return timeUs == other.timeUs && position == other.position;
  }

  @Override
  public int hashCode() {
    int result = (int) timeUs;
    result = 31 * result + (int) position;
    return result;
  }
}