本文整理汇总了Java中com.google.android.gms.cast.MediaTrack.TYPE_TEXT属性的典型用法代码示例。如果您正苦于以下问题:Java MediaTrack.TYPE_TEXT属性的具体用法?Java MediaTrack.TYPE_TEXT怎么用?Java MediaTrack.TYPE_TEXT使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类com.google.android.gms.cast.MediaTrack
的用法示例。
在下文中一共展示了MediaTrack.TYPE_TEXT属性的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: buildTrack
private static MediaTrack buildTrack(long id, String type, String subType, String contentId,
String name, String language) {
int trackType = MediaTrack.TYPE_UNKNOWN;
if ("text".equals(type)) {
trackType = MediaTrack.TYPE_TEXT;
} else if ("video".equals(type)) {
trackType = MediaTrack.TYPE_VIDEO;
} else if ("audio".equals(type)) {
trackType = MediaTrack.TYPE_AUDIO;
}
int trackSubType = MediaTrack.SUBTYPE_NONE;
if (subType != null) {
if ("captions".equals(type)) {
trackSubType = MediaTrack.SUBTYPE_CAPTIONS;
} else if ("subtitle".equals(type)) {
trackSubType = MediaTrack.SUBTYPE_SUBTITLES;
}
}
return new MediaTrack.Builder(id, trackType)
.setName(name)
.setSubtype(trackSubType)
.setContentId(contentId)
.setLanguage(language).build();
}
示例2: buildTrack
private static MediaTrack buildTrack(long id, String type, String subType, String contentId,
String name, String language) {
int trackType = MediaTrack.TYPE_UNKNOWN;
if ("text".equals(type)) {
trackType = MediaTrack.TYPE_TEXT;
} else if ("video".equals(type)) {
trackType = MediaTrack.TYPE_VIDEO;
} else if ("audio".equals(type)) {
trackType = MediaTrack.TYPE_AUDIO;
}
int trackSubType = MediaTrack.SUBTYPE_NONE;
if (subType != null) {
if ("captions".equals(type)) {
trackSubType = MediaTrack.SUBTYPE_CAPTIONS;
} else if ("subtitle".equals(type)) {
trackSubType = MediaTrack.SUBTYPE_SUBTITLES;
}
}
return new MediaTrack.Builder(id, trackType)
.setName(name)
.setSubtype(trackSubType)
.setContentId(contentId)
.setLanguage(language).build();
}
示例3: buildTrack
private static MediaTrack buildTrack(long id, String type, String subType, String contentId,
String name, String language) {
int trackType = MediaTrack.TYPE_UNKNOWN;
if ("text".equals(type)) {
trackType = MediaTrack.TYPE_TEXT;
} else if ("video".equals(type)) {
trackType = MediaTrack.TYPE_VIDEO;
} else if ("audio".equals(type)) {
trackType = MediaTrack.TYPE_AUDIO;
}
int trackSubType = MediaTrack.SUBTYPE_NONE;
if (subType != null) {
if ("captions".equals(type)) {
trackSubType = MediaTrack.SUBTYPE_CAPTIONS;
} else if ("subtitle".equals(type)) {
trackSubType = MediaTrack.SUBTYPE_SUBTITLES;
}
}
return new MediaTrack.Builder(id, trackType)
.setName(name)
.setSubtype(trackSubType)
.setContentId(contentId)
.setLanguage(language).build();
}
示例4: clearSubtitleTracks
public void clearSubtitleTracks() {
List<MediaTrack> mediaTracks = new ArrayList<>(mMediaInfo.getMediaTracks());
for(MediaTrack mediaTrack : mediaTracks){
if(mediaTrack.getType()==MediaTrack.TYPE_TEXT){
mMediaInfo.getMediaTracks().remove(mediaTrack);
}
}
}
示例5: hasAudioOrTextTrack
/**
* Returns {@code true} if and only if the {@code tracks} include at least one audio or text
* track.
*/
public static boolean hasAudioOrTextTrack(List<MediaTrack> tracks) {
if (tracks == null || tracks.isEmpty()) {
return false;
}
for (MediaTrack track : tracks) {
if (track.getType() == MediaTrack.TYPE_AUDIO
|| track.getType() == MediaTrack.TYPE_TEXT) {
return true;
}
}
return false;
}
示例6: partitionTracks
private void partitionTracks() {
List<MediaTrack> allTracks = mMediaInfo.getMediaTracks();
mAudioVideoTracks.clear();
mTextTracks.clear();
mTextTracks.add(TEXT_TRACK_NONE);
mSelectedTextPosition = 0;
mSelectedAudioPosition = -1;
if (allTracks != null) {
int textPosition = 1; /* start from 1 since we have a NONE selection at the beginning */
int audioPosition = 0;
for (MediaTrack track : allTracks) {
switch (track.getType()) {
case MediaTrack.TYPE_TEXT:
mTextTracks.add(track);
if (mActiveTracks != null) {
for(int i=0; i < mActiveTracks.length; i++) {
if (mActiveTracks[i] == track.getId()) {
mSelectedTextPosition = textPosition;
}
}
}
textPosition++;
break;
case MediaTrack.TYPE_AUDIO:
case MediaTrack.TYPE_VIDEO:
mAudioVideoTracks.add(track);
if (mActiveTracks != null) {
for(int i=0; i < mActiveTracks.length; i++) {
if (mActiveTracks[i] == track.getId()) {
mSelectedAudioPosition = audioPosition;
}
}
}
audioPosition++;
break;
}
}
}
}
示例7: setSelectedTracks
public synchronized void setSelectedTracks(List<MediaTrack> tracks) {
int selectedAudio = 0;
int selectedSub = 1;
long[] tracksArray;
if (tracks.isEmpty()) {
tracksArray = new long[]{};
} else {
tracksArray = new long[tracks.size()];
for (int i = 0; i < tracks.size(); i++) {
tracksArray[i] = tracks.get(i).getId();
try {
if (tracks.get(i).getType() == MediaTrack.TYPE_TEXT)
selectedSub = Integer.valueOf(tracks.get(i).getContentId());
else if (tracks.get(i).getType() == MediaTrack.TYPE_AUDIO)
selectedAudio = Integer.valueOf(tracks.get(i).getContentId());
}catch (NumberFormatException e) {
}
}
}
if(mIsRemoteDisplayConnected){
VideoDbInfo videoInfo = PlayerService.sPlayerService.getVideoInfo();
if (selectedSub != videoInfo.subtitleTrack) {
if (Player.sPlayer.setSubtitleTrack(selectedSub)) {
videoInfo.subtitleTrack = selectedSub;
}
}
if (selectedAudio != videoInfo.audioTrack) {
if (Player.sPlayer.setAudioTrack(selectedAudio)) {
videoInfo.audioTrack = selectedAudio;
}
}
}else if(mCastManager.isConnected())
mCastManager.setActiveTrackIds(tracksArray);
//be aware that getSelectedTracks won't return mSelectedTracks but will select tracks selected by playerservice
mSelectedTracks = tracksArray;
}