当前位置: 首页>>代码示例>>Java>>正文


Java TrackOutput.format方法代码示例

本文整理汇总了Java中com.google.android.exoplayer2.extractor.TrackOutput.format方法的典型用法代码示例。如果您正苦于以下问题:Java TrackOutput.format方法的具体用法?Java TrackOutput.format怎么用?Java TrackOutput.format使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.google.android.exoplayer2.extractor.TrackOutput的用法示例。


在下文中一共展示了TrackOutput.format方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: createTracks

import com.google.android.exoplayer2.extractor.TrackOutput; //导入方法依赖的package包/类
public void createTracks(ExtractorOutput extractorOutput, TrackIdGenerator idGenerator) {
  for (int i = 0; i < outputs.length; i++) {
    idGenerator.generateNewId();
    TrackOutput output = extractorOutput.track(idGenerator.getTrackId(), C.TRACK_TYPE_TEXT);
    Format channelFormat = closedCaptionFormats.get(i);
    String channelMimeType = channelFormat.sampleMimeType;
    Assertions.checkArgument(MimeTypes.APPLICATION_CEA608.equals(channelMimeType)
        || MimeTypes.APPLICATION_CEA708.equals(channelMimeType),
        "Invalid closed caption mime type provided: " + channelMimeType);
    String formatId = channelFormat.id != null ? channelFormat.id : idGenerator.getFormatId();
    output.format(Format.createTextSampleFormat(formatId, channelMimeType, null, Format.NO_VALUE,
        channelFormat.selectionFlags, channelFormat.language, channelFormat.accessibilityChannel,
        null));
    outputs[i] = output;
  }
}
 
开发者ID:y20k,项目名称:transistor,代码行数:17,代码来源:SeiReader.java

示例2: buildTrackOutput

import com.google.android.exoplayer2.extractor.TrackOutput; //导入方法依赖的package包/类
private TrackOutput buildTrackOutput(long subsampleOffsetUs) {
  TrackOutput trackOutput = output.track(0, C.TRACK_TYPE_TEXT);
  trackOutput.format(Format.createTextSampleFormat(null, MimeTypes.TEXT_VTT, null,
      Format.NO_VALUE, 0, language, null, subsampleOffsetUs));
  output.endTracks();
  return trackOutput;
}
 
开发者ID:sanjaysingh1990,项目名称:Exoplayer2Radio,代码行数:8,代码来源:WebvttExtractor.java

示例3: createTracks

import com.google.android.exoplayer2.extractor.TrackOutput; //导入方法依赖的package包/类
public void createTracks(ExtractorOutput extractorOutput, TrackIdGenerator idGenerator) {
  for (int i = 0; i < outputs.length; i++) {
    idGenerator.generateNewId();
    TrackOutput output = extractorOutput.track(idGenerator.getTrackId(), C.TRACK_TYPE_TEXT);
    Format channelFormat = closedCaptionFormats.get(i);
    String channelMimeType = channelFormat.sampleMimeType;
    Assertions.checkArgument(MimeTypes.APPLICATION_CEA608.equals(channelMimeType)
        || MimeTypes.APPLICATION_CEA708.equals(channelMimeType),
        "Invalid closed caption mime type provided: " + channelMimeType);
    output.format(Format.createTextSampleFormat(idGenerator.getFormatId(), channelMimeType, null,
        Format.NO_VALUE, channelFormat.selectionFlags, channelFormat.language,
        channelFormat.accessibilityChannel, null));
    outputs[i] = output;
  }
}
 
开发者ID:sanjaysingh1990,项目名称:Exoplayer2Radio,代码行数:16,代码来源:SeiReader.java

示例4: createTracks

import com.google.android.exoplayer2.extractor.TrackOutput; //导入方法依赖的package包/类
@Override
public void createTracks(ExtractorOutput extractorOutput, TrackIdGenerator idGenerator) {
  for (int i = 0; i < outputs.length; i++) {
    DvbSubtitleInfo subtitleInfo = subtitleInfos.get(i);
    idGenerator.generateNewId();
    TrackOutput output = extractorOutput.track(idGenerator.getTrackId(), C.TRACK_TYPE_TEXT);
    output.format(Format.createImageSampleFormat(idGenerator.getFormatId(),
        MimeTypes.APPLICATION_DVBSUBS, null, Format.NO_VALUE,
        Collections.singletonList(subtitleInfo.initializationData), subtitleInfo.language, null));
    outputs[i] = output;
  }
}
 
开发者ID:sanjaysingh1990,项目名称:Exoplayer2Radio,代码行数:13,代码来源:DvbSubtitleReader.java

示例5: maybeInitExtraTracks

import com.google.android.exoplayer2.extractor.TrackOutput; //导入方法依赖的package包/类
private void maybeInitExtraTracks() {
  if ((flags & FLAG_ENABLE_EMSG_TRACK) != 0 && eventMessageTrackOutput == null) {
    eventMessageTrackOutput = extractorOutput.track(trackBundles.size(), C.TRACK_TYPE_METADATA);
    eventMessageTrackOutput.format(Format.createSampleFormat(null, MimeTypes.APPLICATION_EMSG,
        Format.OFFSET_SAMPLE_RELATIVE));
  }
  if ((flags & FLAG_ENABLE_CEA608_TRACK) != 0 && cea608TrackOutputs == null) {
    TrackOutput cea608TrackOutput = extractorOutput.track(trackBundles.size() + 1,
        C.TRACK_TYPE_TEXT);
    cea608TrackOutput.format(Format.createTextSampleFormat(null, MimeTypes.APPLICATION_CEA608,
        null, Format.NO_VALUE, 0, null, null));
    cea608TrackOutputs = new TrackOutput[] {cea608TrackOutput};
  }
}
 
开发者ID:sanjaysingh1990,项目名称:Exoplayer2Radio,代码行数:15,代码来源:FragmentedMp4Extractor.java

示例6: load

import com.google.android.exoplayer2.extractor.TrackOutput; //导入方法依赖的package包/类
@SuppressWarnings("NonAtomicVolatileUpdate")
@Override
public void load() throws IOException, InterruptedException {
  DataSpec loadDataSpec = Util.getRemainderDataSpec(dataSpec, bytesLoaded);
  try {
    // Create and open the input.
    long length = dataSource.open(loadDataSpec);
    if (length != C.LENGTH_UNSET) {
      length += bytesLoaded;
    }
    ExtractorInput extractorInput = new DefaultExtractorInput(dataSource, bytesLoaded, length);
    BaseMediaChunkOutput output = getOutput();
    output.setSampleOffsetUs(0);
    TrackOutput trackOutput = output.track(0, trackType);
    trackOutput.format(sampleFormat);
    // Load the sample data.
    int result = 0;
    while (result != C.RESULT_END_OF_INPUT) {
      bytesLoaded += result;
      result = trackOutput.sampleData(extractorInput, Integer.MAX_VALUE, true);
    }
    int sampleSize = bytesLoaded;
    trackOutput.sampleMetadata(startTimeUs, C.BUFFER_FLAG_KEY_FRAME, sampleSize, 0, null);
  } finally {
    Util.closeQuietly(dataSource);
  }
  loadCompleted = true;
}
 
开发者ID:sanjaysingh1990,项目名称:Exoplayer2Radio,代码行数:29,代码来源:SingleSampleMediaChunk.java

示例7: buildTrackOutput

import com.google.android.exoplayer2.extractor.TrackOutput; //导入方法依赖的package包/类
private TrackOutput buildTrackOutput(long subsampleOffsetUs) {
  TrackOutput trackOutput = output.track(0);
  trackOutput.format(Format.createTextSampleFormat(null, MimeTypes.TEXT_VTT, null,
      Format.NO_VALUE, 0, language, null, subsampleOffsetUs));
  output.endTracks();
  return trackOutput;
}
 
开发者ID:zhanglibin123488,项目名称:videoPickPlayer,代码行数:8,代码来源:WebvttExtractor.java

示例8: init

import com.google.android.exoplayer2.extractor.TrackOutput; //导入方法依赖的package包/类
/**
 * Initializes the extractor to output to the provided {@link SingleTrackMetadataOutput} and
 * {@link TrackOutput} instances, and configures it to receive data from a new chunk.
 *
 * @param metadataOutput The {@link SingleTrackMetadataOutput} that will receive metadata.
 * @param trackOutput The {@link TrackOutput} that will receive sample data.
 */
public void init(SingleTrackMetadataOutput metadataOutput, TrackOutput trackOutput) {
  this.metadataOutput = metadataOutput;
  this.trackOutput = trackOutput;
  if (!extractorInitialized) {
    extractor.init(this);
    extractorInitialized = true;
  } else {
    extractor.seek(0);
    if (resendFormatOnInit && sentFormat != null) {
      trackOutput.format(sentFormat);
    }
  }
}
 
开发者ID:zhanglibin123488,项目名称:videoPickPlayer,代码行数:21,代码来源:ChunkExtractorWrapper.java

示例9: maybeInitExtraTracks

import com.google.android.exoplayer2.extractor.TrackOutput; //导入方法依赖的package包/类
private void maybeInitExtraTracks() {
  if ((flags & FLAG_ENABLE_EMSG_TRACK) != 0 && eventMessageTrackOutput == null) {
    eventMessageTrackOutput = extractorOutput.track(trackBundles.size(), C.TRACK_TYPE_METADATA);
    eventMessageTrackOutput.format(Format.createSampleFormat(null, MimeTypes.APPLICATION_EMSG,
        Format.OFFSET_SAMPLE_RELATIVE));
  }
  if (cea608TrackOutputs == null) {
    cea608TrackOutputs = new TrackOutput[closedCaptionFormats.size()];
    for (int i = 0; i < cea608TrackOutputs.length; i++) {
      TrackOutput output = extractorOutput.track(trackBundles.size() + 1 + i, C.TRACK_TYPE_TEXT);
      output.format(closedCaptionFormats.get(i));
      cea608TrackOutputs[i] = output;
    }
  }
}
 
开发者ID:y20k,项目名称:transistor,代码行数:16,代码来源:FragmentedMp4Extractor.java

示例10: load

import com.google.android.exoplayer2.extractor.TrackOutput; //导入方法依赖的package包/类
@SuppressWarnings("NonAtomicVolatileUpdate")
@Override
public void load() throws IOException, InterruptedException {
  DataSpec loadDataSpec = dataSpec.subrange(bytesLoaded);
  try {
    // Create and open the input.
    long length = dataSource.open(loadDataSpec);
    if (length != C.LENGTH_UNSET) {
      length += bytesLoaded;
    }
    ExtractorInput extractorInput = new DefaultExtractorInput(dataSource, bytesLoaded, length);
    BaseMediaChunkOutput output = getOutput();
    output.setSampleOffsetUs(0);
    TrackOutput trackOutput = output.track(0, trackType);
    trackOutput.format(sampleFormat);
    // Load the sample data.
    int result = 0;
    while (result != C.RESULT_END_OF_INPUT) {
      bytesLoaded += result;
      result = trackOutput.sampleData(extractorInput, Integer.MAX_VALUE, true);
    }
    int sampleSize = bytesLoaded;
    trackOutput.sampleMetadata(startTimeUs, C.BUFFER_FLAG_KEY_FRAME, sampleSize, 0, null);
  } finally {
    Util.closeQuietly(dataSource);
  }
  loadCompleted = true;
}
 
开发者ID:y20k,项目名称:transistor,代码行数:29,代码来源:SingleSampleMediaChunk.java

示例11: SeiReader

import com.google.android.exoplayer2.extractor.TrackOutput; //导入方法依赖的package包/类
public SeiReader(TrackOutput output) {
  this.output = output;
  output.format(Format.createTextSampleFormat(null, MimeTypes.APPLICATION_CEA608, null,
      Format.NO_VALUE, 0, null, null));
}
 
开发者ID:zhanglibin123488,项目名称:videoPickPlayer,代码行数:6,代码来源:SeiReader.java


注:本文中的com.google.android.exoplayer2.extractor.TrackOutput.format方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。