com.google.android.exoplayer2.source.smoothstreaming.DefaultSsChunkSource Java Examples
The following examples show how to use
com.google.android.exoplayer2.source.smoothstreaming.DefaultSsChunkSource.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: PlayerActivity.java From leafpicrevived with GNU General Public License v3.0 | 6 votes |
private MediaSource buildMediaSource(Uri uri, String overrideExtension) { int type = Util.inferContentType(!TextUtils.isEmpty(overrideExtension) ? "." + overrideExtension : uri.getLastPathSegment()); switch (type) { case C.TYPE_SS: return new SsMediaSource(uri, buildDataSourceFactory(false), new DefaultSsChunkSource.Factory(mediaDataSourceFactory), mainHandler, null); case C.TYPE_OTHER: return new ExtractorMediaSource(uri, mediaDataSourceFactory, new DefaultExtractorsFactory(), mainHandler, null); case C.TYPE_DASH: return new DashMediaSource(uri, buildDataSourceFactory(false), new DefaultDashChunkSource.Factory(mediaDataSourceFactory), mainHandler, null); // case C.TYPE_HLS:return new HlsMediaSource(uri, mediaDataSourceFactory, mainHandler, null); case C.TYPE_HLS: throw new IllegalStateException("Unsupported type: " + type); default: throw new IllegalStateException("Unsupported type: " + type); } }
Example #2
Source File: VideoPlayer.java From media_player with MIT License | 6 votes |
private MediaSource buildMediaSource(Uri uri, DataSource.Factory mediaDataSourceFactory, Context context) { int type = Util.inferContentType(uri.getLastPathSegment()); switch (type) { case C.TYPE_SS: return new SsMediaSource.Factory(new DefaultSsChunkSource.Factory(mediaDataSourceFactory), new DefaultDataSourceFactory(context, null, mediaDataSourceFactory)).createMediaSource(uri); case C.TYPE_DASH: return new DashMediaSource.Factory(new DefaultDashChunkSource.Factory(mediaDataSourceFactory), new DefaultDataSourceFactory(context, null, mediaDataSourceFactory)).createMediaSource(uri); case C.TYPE_HLS: return new HlsMediaSource.Factory(mediaDataSourceFactory).createMediaSource(uri); case C.TYPE_OTHER: return new ExtractorMediaSource.Factory(mediaDataSourceFactory) .setExtractorsFactory(new DefaultExtractorsFactory()).createMediaSource(uri); default: { throw new IllegalStateException("Unsupported type: " + type); } } }
Example #3
Source File: MediaPlayerFragment.java From PowerFileExplorer with GNU General Public License v3.0 | 6 votes |
private MediaSource buildMediaSource(Uri uri, String overrideExtension) { int type = TextUtils.isEmpty(overrideExtension) ? Util.inferContentType(uri) : Util.inferContentType("." + overrideExtension); switch (type) { case C.TYPE_SS: return new SsMediaSource(uri, buildDataSourceFactory(false), new DefaultSsChunkSource.Factory(mediaDataSourceFactory), mainHandler, eventLogger); case C.TYPE_DASH: return new DashMediaSource(uri, buildDataSourceFactory(false), new DefaultDashChunkSource.Factory(mediaDataSourceFactory), mainHandler, eventLogger); case C.TYPE_HLS: return new HlsMediaSource(uri, mediaDataSourceFactory, mainHandler, eventLogger); case C.TYPE_OTHER: return new ExtractorMediaSource(uri, mediaDataSourceFactory, new DefaultExtractorsFactory(), mainHandler, eventLogger); default: { throw new IllegalStateException("Unsupported type: " + type); } } }
Example #4
Source File: ExoMediaPlayer.java From VideoDemoJava with MIT License | 6 votes |
private MediaSource getMediaSource(Uri uri){ int contentType = Util.inferContentType(uri); DefaultDataSourceFactory dataSourceFactory = new DefaultDataSourceFactory(mAppContext, Util.getUserAgent(mAppContext, mAppContext.getPackageName()), mBandwidthMeter); switch (contentType) { case C.TYPE_DASH: DefaultDashChunkSource.Factory factory = new DefaultDashChunkSource.Factory(dataSourceFactory); return new DashMediaSource(uri, dataSourceFactory, factory, null, null); case C.TYPE_SS: DefaultSsChunkSource.Factory ssFactory = new DefaultSsChunkSource.Factory(dataSourceFactory); return new SsMediaSource(uri, dataSourceFactory, ssFactory, null, null); case C.TYPE_HLS: return new HlsMediaSource(uri, dataSourceFactory, null, null); case C.TYPE_OTHER: default: // This is the MediaSource representing the media to be played. ExtractorsFactory extractorsFactory = new DefaultExtractorsFactory(); return new ExtractorMediaSource(uri, dataSourceFactory, extractorsFactory, null, null); } }
Example #5
Source File: PlayerActivity.java From ExoPlayer-Offline with Apache License 2.0 | 6 votes |
private MediaSource buildMediaSource(Uri uri, String overrideExtension) { int type = Util.inferContentType(!TextUtils.isEmpty(overrideExtension) ? "." + overrideExtension : uri.getLastPathSegment()); switch (type) { case C.TYPE_SS: return new SsMediaSource(uri, buildDataSourceFactory(false), new DefaultSsChunkSource.Factory(mediaDataSourceFactory), mainHandler, eventLogger); case C.TYPE_DASH: return new DashMediaSource(uri, buildDataSourceFactory(false), new DefaultDashChunkSource.Factory(mediaDataSourceFactory), mainHandler, eventLogger); case C.TYPE_HLS: return new HlsMediaSource(uri, mediaDataSourceFactory, mainHandler, eventLogger); case C.TYPE_OTHER: return new ExtractorMediaSource(uri, mediaDataSourceFactory, new DefaultExtractorsFactory(), mainHandler, eventLogger); default: { throw new IllegalStateException("Unsupported type: " + type); } } }
Example #6
Source File: ExoMedia.java From QSVideoPlayer with Apache License 2.0 | 6 votes |
private MediaSource buildMediaSource(Context context, Uri uri) { int type = getUrlType(uri.toString()); switch (type) { case C.TYPE_SS: return new SsMediaSource(uri, new DefaultDataSourceFactory(context, null, new DefaultHttpDataSourceFactory(USER_AGENT, null)), new DefaultSsChunkSource.Factory(new DefaultDataSourceFactory(context, BANDWIDTH_METER, new DefaultHttpDataSourceFactory(USER_AGENT, BANDWIDTH_METER))), mainThreadHandler, null); case C.TYPE_DASH: return new DashMediaSource(uri, new DefaultDataSourceFactory(context, null, new DefaultHttpDataSourceFactory(USER_AGENT, null)), new DefaultDashChunkSource.Factory(new DefaultDataSourceFactory(context, BANDWIDTH_METER, new DefaultHttpDataSourceFactory(USER_AGENT, BANDWIDTH_METER))), mainThreadHandler, null); case C.TYPE_HLS: return new HlsMediaSource(uri, new DefaultDataSourceFactory(context, BANDWIDTH_METER, new DefaultHttpDataSourceFactory(USER_AGENT, BANDWIDTH_METER)), mainThreadHandler, null); case C.TYPE_OTHER: return new ExtractorMediaSource(uri, new DefaultDataSourceFactory(context, BANDWIDTH_METER, new DefaultHttpDataSourceFactory(USER_AGENT, BANDWIDTH_METER)), new DefaultExtractorsFactory(), mainThreadHandler, null); default: { throw new IllegalStateException("Unsupported type: " + type); } } }
Example #7
Source File: LiveVideoPlayerActivity.java From LiveVideoBroadcaster with Apache License 2.0 | 6 votes |
private MediaSource buildMediaSource(Uri uri, String overrideExtension) { int type = TextUtils.isEmpty(overrideExtension) ? Util.inferContentType(uri) : Util.inferContentType("." + overrideExtension); switch (type) { case C.TYPE_SS: return new SsMediaSource(uri, buildDataSourceFactory(false), new DefaultSsChunkSource.Factory(mediaDataSourceFactory), mainHandler, eventLogger); case C.TYPE_DASH: return new DashMediaSource(uri, buildDataSourceFactory(false), new DefaultDashChunkSource.Factory(mediaDataSourceFactory), mainHandler, eventLogger); case C.TYPE_HLS: return new HlsMediaSource(uri, mediaDataSourceFactory, mainHandler, eventLogger); case C.TYPE_OTHER: if (uri.getScheme().equals("rtmp")) { return new ExtractorMediaSource(uri, rtmpDataSourceFactory, new DefaultExtractorsFactoryForFLV(), mainHandler, eventLogger); } else { return new ExtractorMediaSource(uri, mediaDataSourceFactory, new DefaultExtractorsFactory(), mainHandler, eventLogger); } default: { throw new IllegalStateException("Unsupported type: " + type); } } }
Example #8
Source File: VideoExoPlayer.java From TigerVideo with Apache License 2.0 | 6 votes |
private MediaSource buildMediaSource(Uri uri, String overrideExtension) { int type = Util.inferContentType(!TextUtils.isEmpty(overrideExtension) ? "." + overrideExtension : uri.getLastPathSegment()); switch (type) { case C.TYPE_SS: return new SsMediaSource(uri, buildDataSourceFactory(false), new DefaultSsChunkSource.Factory(mMediaDataSourceFactory), mMainHandler, mEventLogger); case C.TYPE_DASH: return new DashMediaSource(uri, buildDataSourceFactory(false), new DefaultDashChunkSource.Factory(mMediaDataSourceFactory), mMainHandler, mEventLogger); case C.TYPE_HLS: return new HlsMediaSource(uri, mMediaDataSourceFactory, mMainHandler, mEventLogger); case C.TYPE_OTHER: return new ExtractorMediaSource(uri, mMediaDataSourceFactory, new DefaultExtractorsFactory(), mMainHandler, mEventLogger); default: { throw new IllegalStateException("Unsupported type: " + type); } } }
Example #9
Source File: KExoMediaPlayer.java From K-Sonic with MIT License | 6 votes |
private MediaSource buildMediaSource(Uri uri, String overrideExtension) { int type = Util.inferContentType(!TextUtils.isEmpty(overrideExtension) ? "." + overrideExtension : uri.getLastPathSegment()); switch (type) { case C.TYPE_SS: return new SsMediaSource(uri, new DefaultDataSourceFactory(context, userAgent), new DefaultSsChunkSource.Factory(mediaDataSourceFactory), mainHandler, eventLogger); case C.TYPE_DASH: return new DashMediaSource(uri, new DefaultDataSourceFactory(context, userAgent), new DefaultDashChunkSource.Factory(mediaDataSourceFactory), mainHandler, eventLogger); case C.TYPE_HLS: return new HlsMediaSource(uri, mediaDataSourceFactory, mainHandler, eventLogger); case C.TYPE_OTHER: return new ExtractorMediaSource(uri, mediaDataSourceFactory, new DefaultExtractorsFactory(), mainHandler, eventLogger); default: { throw new IllegalStateException("Unsupported type: " + type); } } }
Example #10
Source File: SsMediaSourceBuilder.java From ExoMedia with Apache License 2.0 | 5 votes |
@NonNull @Override public MediaSource build(@NonNull Context context, @NonNull Uri uri, @NonNull String userAgent, @NonNull Handler handler, @Nullable TransferListener transferListener) { DataSource.Factory dataSourceFactory = buildDataSourceFactory(context, userAgent, null); DataSource.Factory meteredDataSourceFactory = buildDataSourceFactory(context, userAgent, transferListener); return new SsMediaSource.Factory(new DefaultSsChunkSource.Factory(meteredDataSourceFactory), dataSourceFactory) .createMediaSource(uri); }
Example #11
Source File: MediaSourceFactory.java From CumulusTV with MIT License | 5 votes |
public static MediaSource getMediaSourceFor(Context context, Uri mediaUri, String overrideExtension) { // Measures bandwidth during playback. Can be null if not required. DataSource.Factory mediaDataSourceFactory = buildDataSourceFactory(context, true); int type = Util.inferContentType(!TextUtils.isEmpty(overrideExtension) ? "." + overrideExtension : mediaUri.getLastPathSegment()); Handler mainHandler = new Handler(); switch (type) { case C.TYPE_SS: return new SsMediaSource(mediaUri, buildDataSourceFactory(context, false), new DefaultSsChunkSource.Factory(mediaDataSourceFactory), mainHandler, null); case C.TYPE_DASH: return new DashMediaSource(mediaUri, buildDataSourceFactory(context, false), new DefaultDashChunkSource.Factory(mediaDataSourceFactory), mainHandler, null); case C.TYPE_HLS: return new HlsMediaSource(mediaUri, mediaDataSourceFactory, mainHandler, null); case C.TYPE_OTHER: return new ExtractorMediaSource(mediaUri, mediaDataSourceFactory, new DefaultExtractorsFactory(), mainHandler, null); default: { throw new NotMediaException("Unsupported type: " + type); } } }
Example #12
Source File: ReactExoplayerView.java From react-native-video with MIT License | 5 votes |
private MediaSource buildMediaSource(Uri uri, String overrideExtension) { int type = Util.inferContentType(!TextUtils.isEmpty(overrideExtension) ? "." + overrideExtension : uri.getLastPathSegment()); switch (type) { case C.TYPE_SS: return new SsMediaSource.Factory( new DefaultSsChunkSource.Factory(mediaDataSourceFactory), buildDataSourceFactory(false) ).setLoadErrorHandlingPolicy( config.buildLoadErrorHandlingPolicy(minLoadRetryCount) ).createMediaSource(uri); case C.TYPE_DASH: return new DashMediaSource.Factory( new DefaultDashChunkSource.Factory(mediaDataSourceFactory), buildDataSourceFactory(false) ).setLoadErrorHandlingPolicy( config.buildLoadErrorHandlingPolicy(minLoadRetryCount) ).createMediaSource(uri); case C.TYPE_HLS: return new HlsMediaSource.Factory( mediaDataSourceFactory ).setLoadErrorHandlingPolicy( config.buildLoadErrorHandlingPolicy(minLoadRetryCount) ).createMediaSource(uri); case C.TYPE_OTHER: return new ProgressiveMediaSource.Factory( mediaDataSourceFactory ).setLoadErrorHandlingPolicy( config.buildLoadErrorHandlingPolicy(minLoadRetryCount) ).createMediaSource(uri); default: { throw new IllegalStateException("Unsupported type: " + type); } } }
Example #13
Source File: MediaSourceBuilder.java From ARVI with Apache License 2.0 | 4 votes |
@NonNull @Override public MediaSource buildMediaSource(@NonNull Context context, @NonNull Uri fileUri, @Nullable String fileExtension, @Nullable Handler handler, @NonNull DataSource.Factory manifestDataSourceFactory, @NonNull DataSource.Factory mediaDataSourceFactory, @Nullable MediaSourceEventListener eventListener) { @C.ContentType final int type = TextUtils.isEmpty(fileExtension) ? inferContentType(fileUri) : inferContentType("." + fileExtension); switch(type) { case C.TYPE_SS: final SsMediaSource ssMediaSource = new SsMediaSource.Factory( new DefaultSsChunkSource.Factory(mediaDataSourceFactory), manifestDataSourceFactory ).createMediaSource(fileUri); addEventListenerIfNonNull( ssMediaSource, handler, eventListener ); return ssMediaSource; case C.TYPE_DASH: final DashMediaSource dashMediaSource = new DashMediaSource.Factory( new DefaultDashChunkSource.Factory(mediaDataSourceFactory), manifestDataSourceFactory ).createMediaSource(fileUri); addEventListenerIfNonNull( dashMediaSource, handler, eventListener ); return dashMediaSource; case C.TYPE_HLS: final HlsMediaSource hlsMediaSource = new HlsMediaSource.Factory(mediaDataSourceFactory).createMediaSource(fileUri); addEventListenerIfNonNull( hlsMediaSource, handler, eventListener ); return hlsMediaSource; case C.TYPE_OTHER: final ExtractorMediaSource extractorMediaSource = new ExtractorMediaSource.Factory(mediaDataSourceFactory).createMediaSource(fileUri); addEventListenerIfNonNull( extractorMediaSource, handler, eventListener ); return extractorMediaSource; default: throw new IllegalStateException("Unsupported type: " + type); } }
Example #14
Source File: ExoSourceManager.java From GSYVideoPlayer with Apache License 2.0 | 4 votes |
/** * @param dataSource 链接 * @param preview 是否带上header,默认有header自动设置为true * @param cacheEnable 是否需要缓存 * @param isLooping 是否循环 * @param cacheDir 自定义缓存目录 */ public MediaSource getMediaSource(String dataSource, boolean preview, boolean cacheEnable, boolean isLooping, File cacheDir, @Nullable String overrideExtension) { MediaSource mediaSource = null; if (sExoMediaSourceInterceptListener != null) { mediaSource = sExoMediaSourceInterceptListener.getMediaSource(dataSource, preview, cacheEnable, isLooping, cacheDir); } if (mediaSource != null) { return mediaSource; } mDataSource = dataSource; Uri contentUri = Uri.parse(dataSource); int contentType = inferContentType(dataSource, overrideExtension); String uerAgent = null; if (mMapHeadData != null) { uerAgent = mMapHeadData.get("User-Agent"); } if ("android.resource".equals(contentUri.getScheme())) { DataSpec dataSpec = new DataSpec(contentUri); final RawResourceDataSource rawResourceDataSource = new RawResourceDataSource(mAppContext); try { rawResourceDataSource.open(dataSpec); } catch (RawResourceDataSource.RawResourceDataSourceException e) { e.printStackTrace(); } DataSource.Factory factory = new DataSource.Factory() { @Override public DataSource createDataSource() { return rawResourceDataSource; } }; return new ProgressiveMediaSource.Factory( factory).createMediaSource(contentUri); } switch (contentType) { case C.TYPE_SS: mediaSource = new SsMediaSource.Factory( new DefaultSsChunkSource.Factory(getDataSourceFactoryCache(mAppContext, cacheEnable, preview, cacheDir, uerAgent)), new DefaultDataSourceFactory(mAppContext, null, getHttpDataSourceFactory(mAppContext, preview, uerAgent))).createMediaSource(contentUri); break; case C.TYPE_DASH: mediaSource = new DashMediaSource.Factory(new DefaultDashChunkSource.Factory(getDataSourceFactoryCache(mAppContext, cacheEnable, preview, cacheDir, uerAgent)), new DefaultDataSourceFactory(mAppContext, null, getHttpDataSourceFactory(mAppContext, preview, uerAgent))).createMediaSource(contentUri); break; case C.TYPE_HLS: mediaSource = new HlsMediaSource.Factory(getDataSourceFactoryCache(mAppContext, cacheEnable, preview, cacheDir, uerAgent)).createMediaSource(contentUri); break; case TYPE_RTMP: RtmpDataSourceFactory rtmpDataSourceFactory = new RtmpDataSourceFactory(null); mediaSource = new ProgressiveMediaSource.Factory(rtmpDataSourceFactory, new DefaultExtractorsFactory()) .createMediaSource(contentUri); break; case C.TYPE_OTHER: default: mediaSource = new ProgressiveMediaSource.Factory(getDataSourceFactoryCache(mAppContext, cacheEnable, preview, cacheDir, uerAgent), new DefaultExtractorsFactory()) .createMediaSource(contentUri); break; } if (isLooping) { return new LoopingMediaSource(mediaSource); } return mediaSource; }