|  |  |  | @ -147,7 +147,6 @@ public class IjkVideoView extends FrameLayout implements MediaController.MediaPl | 
		
	
		
			
				|  |  |  |  |         mAppContext = context.getApplicationContext(); | 
		
	
		
			
				|  |  |  |  |         mSettings = new Settings(mAppContext); | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |         initBackground(); | 
		
	
		
			
				|  |  |  |  |         initRenders(); | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |         mVideoWidth = 0; | 
		
	
	
		
			
				
					|  |  |  | @ -940,75 +939,10 @@ public class IjkVideoView extends FrameLayout implements MediaController.MediaPl | 
		
	
		
			
				|  |  |  |  |         setRender(mCurrentRender); | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     public int toggleRender() { | 
		
	
		
			
				|  |  |  |  |         mCurrentRenderIndex++; | 
		
	
		
			
				|  |  |  |  |         mCurrentRenderIndex %= mAllRenders.size(); | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |         mCurrentRender = mAllRenders.get(mCurrentRenderIndex); | 
		
	
		
			
				|  |  |  |  |         setRender(mCurrentRender); | 
		
	
		
			
				|  |  |  |  |         return mCurrentRender; | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     public static String getRenderText(Context context, int render) { | 
		
	
		
			
				|  |  |  |  |         String text; | 
		
	
		
			
				|  |  |  |  | //        switch (render) {
 | 
		
	
		
			
				|  |  |  |  | //            case RENDER_NONE:
 | 
		
	
		
			
				|  |  |  |  | //                text = context.getString(R.string.VideoView_render_none);
 | 
		
	
		
			
				|  |  |  |  | //                break;
 | 
		
	
		
			
				|  |  |  |  | //            case RENDER_SURFACE_VIEW:
 | 
		
	
		
			
				|  |  |  |  | //                text = context.getString(R.string.VideoView_render_surface_view);
 | 
		
	
		
			
				|  |  |  |  | //                break;
 | 
		
	
		
			
				|  |  |  |  | //            case RENDER_TEXTURE_VIEW:
 | 
		
	
		
			
				|  |  |  |  | //                text = context.getString(R.string.VideoView_render_texture_view);
 | 
		
	
		
			
				|  |  |  |  | //                break;
 | 
		
	
		
			
				|  |  |  |  | //            default:
 | 
		
	
		
			
				|  |  |  |  | //                text = context.getString(R.string.N_A);
 | 
		
	
		
			
				|  |  |  |  | //                break;
 | 
		
	
		
			
				|  |  |  |  | //        }
 | 
		
	
		
			
				|  |  |  |  |         return "getRenderText"; | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     //-------------------------
 | 
		
	
		
			
				|  |  |  |  |     // Extend: Player
 | 
		
	
		
			
				|  |  |  |  |     //-------------------------
 | 
		
	
		
			
				|  |  |  |  |     public int togglePlayer() { | 
		
	
		
			
				|  |  |  |  |         if (mMediaPlayer != null) | 
		
	
		
			
				|  |  |  |  |             mMediaPlayer.release(); | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |         if (mRenderView != null) | 
		
	
		
			
				|  |  |  |  |             mRenderView.getView().invalidate(); | 
		
	
		
			
				|  |  |  |  |         openVideo(); | 
		
	
		
			
				|  |  |  |  |         return mSettings.getPlayer(); | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     public static String getPlayerText(Context context, int player) { | 
		
	
		
			
				|  |  |  |  | //        String text;
 | 
		
	
		
			
				|  |  |  |  | //        switch (player) {
 | 
		
	
		
			
				|  |  |  |  | //            case Settings.PV_PLAYER__AndroidMediaPlayer:
 | 
		
	
		
			
				|  |  |  |  | //                text = context.getString(R.string.VideoView_player_AndroidMediaPlayer);
 | 
		
	
		
			
				|  |  |  |  | //                break;
 | 
		
	
		
			
				|  |  |  |  | //            case Settings.PV_PLAYER__IjkMediaPlayer:
 | 
		
	
		
			
				|  |  |  |  | //                text = context.getString(R.string.VideoView_player_IjkMediaPlayer);
 | 
		
	
		
			
				|  |  |  |  | //                break;
 | 
		
	
		
			
				|  |  |  |  | //            case Settings.PV_PLAYER__IjkExoMediaPlayer:
 | 
		
	
		
			
				|  |  |  |  | //                text = context.getString(R.string.VideoView_player_IjkExoMediaPlayer);
 | 
		
	
		
			
				|  |  |  |  | //                break;
 | 
		
	
		
			
				|  |  |  |  | //            default:
 | 
		
	
		
			
				|  |  |  |  | //                text = context.getString(R.string.N_A);
 | 
		
	
		
			
				|  |  |  |  | //                break;
 | 
		
	
		
			
				|  |  |  |  | //        }
 | 
		
	
		
			
				|  |  |  |  |         return "getPlayerText"; | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     public IMediaPlayer createPlayer(int playerType) { | 
		
	
		
			
				|  |  |  |  |         IMediaPlayer mediaPlayer = null; | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |         switch (playerType) { | 
		
	
		
			
				|  |  |  |  | //            case Settings.PV_PLAYER__IjkExoMediaPlayer: {
 | 
		
	
		
			
				|  |  |  |  | //                IjkExoMediaPlayer IjkExoMediaPlayer = new IjkExoMediaPlayer(mAppContext);
 | 
		
	
		
			
				|  |  |  |  | //                mediaPlayer = IjkExoMediaPlayer;
 | 
		
	
		
			
				|  |  |  |  | //            }
 | 
		
	
		
			
				|  |  |  |  | //            break;
 | 
		
	
		
			
				|  |  |  |  |             case Settings.PV_PLAYER__AndroidMediaPlayer: { | 
		
	
		
			
				|  |  |  |  |                 AndroidMediaPlayer androidMediaPlayer = new AndroidMediaPlayer(); | 
		
	
		
			
				|  |  |  |  |                 mediaPlayer = androidMediaPlayer; | 
		
	
	
		
			
				
					|  |  |  | @ -1072,180 +1006,4 @@ public class IjkVideoView extends FrameLayout implements MediaController.MediaPl | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |         return mediaPlayer; | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     //-------------------------
 | 
		
	
		
			
				|  |  |  |  |     // Extend: Background
 | 
		
	
		
			
				|  |  |  |  |     //-------------------------
 | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     private boolean mEnableBackgroundPlay = false; | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     private void initBackground() { | 
		
	
		
			
				|  |  |  |  | //        mEnableBackgroundPlay = mSettings.getEnableBackgroundPlay();
 | 
		
	
		
			
				|  |  |  |  | //        if (mEnableBackgroundPlay) {
 | 
		
	
		
			
				|  |  |  |  | //            MediaPlayerService.intentToStart(getContext());
 | 
		
	
		
			
				|  |  |  |  | //            mMediaPlayer = MediaPlayerService.getMediaPlayer();
 | 
		
	
		
			
				|  |  |  |  | //            if (mHudViewHolder != null)
 | 
		
	
		
			
				|  |  |  |  | //                mHudViewHolder.setMediaPlayer(mMediaPlayer);
 | 
		
	
		
			
				|  |  |  |  | //        }
 | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     public boolean isBackgroundPlayEnabled() { | 
		
	
		
			
				|  |  |  |  |         return mEnableBackgroundPlay; | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | //    public void enterBackground() {
 | 
		
	
		
			
				|  |  |  |  | //        MediaPlayerService.setMediaPlayer(mMediaPlayer);
 | 
		
	
		
			
				|  |  |  |  | //    }
 | 
		
	
		
			
				|  |  |  |  | //
 | 
		
	
		
			
				|  |  |  |  | //    public void stopBackgroundPlay() {
 | 
		
	
		
			
				|  |  |  |  | //        MediaPlayerService.setMediaPlayer(null);
 | 
		
	
		
			
				|  |  |  |  | //    }
 | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     //-------------------------
 | 
		
	
		
			
				|  |  |  |  |     // Extend: Background
 | 
		
	
		
			
				|  |  |  |  |     //-------------------------
 | 
		
	
		
			
				|  |  |  |  | //    public void showMediaInfo() {
 | 
		
	
		
			
				|  |  |  |  | //        if (mMediaPlayer == null)
 | 
		
	
		
			
				|  |  |  |  | //            return;
 | 
		
	
		
			
				|  |  |  |  | //
 | 
		
	
		
			
				|  |  |  |  | //        int selectedVideoTrack = MediaPlayerCompat.getSelectedTrack(mMediaPlayer, ITrackInfo.MEDIA_TRACK_TYPE_VIDEO);
 | 
		
	
		
			
				|  |  |  |  | //        int selectedAudioTrack = MediaPlayerCompat.getSelectedTrack(mMediaPlayer, ITrackInfo.MEDIA_TRACK_TYPE_AUDIO);
 | 
		
	
		
			
				|  |  |  |  | //        int selectedSubtitleTrack = MediaPlayerCompat.getSelectedTrack(mMediaPlayer, ITrackInfo.MEDIA_TRACK_TYPE_TIMEDTEXT);
 | 
		
	
		
			
				|  |  |  |  | //
 | 
		
	
		
			
				|  |  |  |  | //        TableLayoutBinder builder = new TableLayoutBinder(getContext());
 | 
		
	
		
			
				|  |  |  |  | //        builder.appendSection(R.string.mi_player);
 | 
		
	
		
			
				|  |  |  |  | //        builder.appendRow2(R.string.mi_player, MediaPlayerCompat.getName(mMediaPlayer));
 | 
		
	
		
			
				|  |  |  |  | //        builder.appendSection(R.string.mi_media);
 | 
		
	
		
			
				|  |  |  |  | //        builder.appendRow2(R.string.mi_resolution, buildResolution(mVideoWidth, mVideoHeight, mVideoSarNum, mVideoSarDen));
 | 
		
	
		
			
				|  |  |  |  | //        builder.appendRow2(R.string.mi_length, buildTimeMilli(mMediaPlayer.getDuration()));
 | 
		
	
		
			
				|  |  |  |  | //
 | 
		
	
		
			
				|  |  |  |  | //        ITrackInfo trackInfos[] = mMediaPlayer.getTrackInfo();
 | 
		
	
		
			
				|  |  |  |  | //        if (trackInfos != null) {
 | 
		
	
		
			
				|  |  |  |  | //            int index = -1;
 | 
		
	
		
			
				|  |  |  |  | //            for (ITrackInfo trackInfo : trackInfos) {
 | 
		
	
		
			
				|  |  |  |  | //                index++;
 | 
		
	
		
			
				|  |  |  |  | //
 | 
		
	
		
			
				|  |  |  |  | //                int trackType = trackInfo.getTrackType();
 | 
		
	
		
			
				|  |  |  |  | //                if (index == selectedVideoTrack) {
 | 
		
	
		
			
				|  |  |  |  | //                    builder.appendSection(getContext().getString(R.string.mi_stream_fmt1, index) + " " + getContext().getString(R.string.mi__selected_video_track));
 | 
		
	
		
			
				|  |  |  |  | //                } else if (index == selectedAudioTrack) {
 | 
		
	
		
			
				|  |  |  |  | //                    builder.appendSection(getContext().getString(R.string.mi_stream_fmt1, index) + " " + getContext().getString(R.string.mi__selected_audio_track));
 | 
		
	
		
			
				|  |  |  |  | //                } else if (index == selectedSubtitleTrack) {
 | 
		
	
		
			
				|  |  |  |  | //                    builder.appendSection(getContext().getString(R.string.mi_stream_fmt1, index) + " " + getContext().getString(R.string.mi__selected_subtitle_track));
 | 
		
	
		
			
				|  |  |  |  | //                } else {
 | 
		
	
		
			
				|  |  |  |  | //                    builder.appendSection(getContext().getString(R.string.mi_stream_fmt1, index));
 | 
		
	
		
			
				|  |  |  |  | //                }
 | 
		
	
		
			
				|  |  |  |  | //                builder.appendRow2(R.string.mi_type, buildTrackType(trackType));
 | 
		
	
		
			
				|  |  |  |  | //                builder.appendRow2(R.string.mi_language, buildLanguage(trackInfo.getLanguage()));
 | 
		
	
		
			
				|  |  |  |  | //
 | 
		
	
		
			
				|  |  |  |  | //                IMediaFormat mediaFormat = trackInfo.getFormat();
 | 
		
	
		
			
				|  |  |  |  | //                if (mediaFormat == null) {
 | 
		
	
		
			
				|  |  |  |  | //                } else if (mediaFormat instanceof IjkMediaFormat) {
 | 
		
	
		
			
				|  |  |  |  | //                    switch (trackType) {
 | 
		
	
		
			
				|  |  |  |  | //                        case ITrackInfo.MEDIA_TRACK_TYPE_VIDEO:
 | 
		
	
		
			
				|  |  |  |  | //                            builder.appendRow2(R.string.mi_codec, mediaFormat.getString(IjkMediaFormat.KEY_IJK_CODEC_LONG_NAME_UI));
 | 
		
	
		
			
				|  |  |  |  | //                            builder.appendRow2(R.string.mi_profile_level, mediaFormat.getString(IjkMediaFormat.KEY_IJK_CODEC_PROFILE_LEVEL_UI));
 | 
		
	
		
			
				|  |  |  |  | //                            builder.appendRow2(R.string.mi_pixel_format, mediaFormat.getString(IjkMediaFormat.KEY_IJK_CODEC_PIXEL_FORMAT_UI));
 | 
		
	
		
			
				|  |  |  |  | //                            builder.appendRow2(R.string.mi_resolution, mediaFormat.getString(IjkMediaFormat.KEY_IJK_RESOLUTION_UI));
 | 
		
	
		
			
				|  |  |  |  | //                            builder.appendRow2(R.string.mi_frame_rate, mediaFormat.getString(IjkMediaFormat.KEY_IJK_FRAME_RATE_UI));
 | 
		
	
		
			
				|  |  |  |  | //                            builder.appendRow2(R.string.mi_bit_rate, mediaFormat.getString(IjkMediaFormat.KEY_IJK_BIT_RATE_UI));
 | 
		
	
		
			
				|  |  |  |  | //                            break;
 | 
		
	
		
			
				|  |  |  |  | //                        case ITrackInfo.MEDIA_TRACK_TYPE_AUDIO:
 | 
		
	
		
			
				|  |  |  |  | //                            builder.appendRow2(R.string.mi_codec, mediaFormat.getString(IjkMediaFormat.KEY_IJK_CODEC_LONG_NAME_UI));
 | 
		
	
		
			
				|  |  |  |  | //                            builder.appendRow2(R.string.mi_profile_level, mediaFormat.getString(IjkMediaFormat.KEY_IJK_CODEC_PROFILE_LEVEL_UI));
 | 
		
	
		
			
				|  |  |  |  | //                            builder.appendRow2(R.string.mi_sample_rate, mediaFormat.getString(IjkMediaFormat.KEY_IJK_SAMPLE_RATE_UI));
 | 
		
	
		
			
				|  |  |  |  | //                            builder.appendRow2(R.string.mi_channels, mediaFormat.getString(IjkMediaFormat.KEY_IJK_CHANNEL_UI));
 | 
		
	
		
			
				|  |  |  |  | //                            builder.appendRow2(R.string.mi_bit_rate, mediaFormat.getString(IjkMediaFormat.KEY_IJK_BIT_RATE_UI));
 | 
		
	
		
			
				|  |  |  |  | //                            break;
 | 
		
	
		
			
				|  |  |  |  | //                        default:
 | 
		
	
		
			
				|  |  |  |  | //                            break;
 | 
		
	
		
			
				|  |  |  |  | //                    }
 | 
		
	
		
			
				|  |  |  |  | //                }
 | 
		
	
		
			
				|  |  |  |  | //            }
 | 
		
	
		
			
				|  |  |  |  | //        }
 | 
		
	
		
			
				|  |  |  |  | //
 | 
		
	
		
			
				|  |  |  |  | //        AlertDialog.Builder adBuilder = builder.buildAlertDialogBuilder();
 | 
		
	
		
			
				|  |  |  |  | //        adBuilder.setTitle(R.string.media_information);
 | 
		
	
		
			
				|  |  |  |  | //        adBuilder.setNegativeButton(R.string.close, null);
 | 
		
	
		
			
				|  |  |  |  | //        adBuilder.show();
 | 
		
	
		
			
				|  |  |  |  | //    }
 | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     private String buildResolution(int width, int height, int sarNum, int sarDen) { | 
		
	
		
			
				|  |  |  |  |         StringBuilder sb = new StringBuilder(); | 
		
	
		
			
				|  |  |  |  |         sb.append(width); | 
		
	
		
			
				|  |  |  |  |         sb.append(" x "); | 
		
	
		
			
				|  |  |  |  |         sb.append(height); | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |         if (sarNum > 1 || sarDen > 1) { | 
		
	
		
			
				|  |  |  |  |             sb.append("["); | 
		
	
		
			
				|  |  |  |  |             sb.append(sarNum); | 
		
	
		
			
				|  |  |  |  |             sb.append(":"); | 
		
	
		
			
				|  |  |  |  |             sb.append(sarDen); | 
		
	
		
			
				|  |  |  |  |             sb.append("]"); | 
		
	
		
			
				|  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |         return sb.toString(); | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     private String buildTimeMilli(long duration) { | 
		
	
		
			
				|  |  |  |  |         long total_seconds = duration / 1000; | 
		
	
		
			
				|  |  |  |  |         long hours = total_seconds / 3600; | 
		
	
		
			
				|  |  |  |  |         long minutes = (total_seconds % 3600) / 60; | 
		
	
		
			
				|  |  |  |  |         long seconds = total_seconds % 60; | 
		
	
		
			
				|  |  |  |  |         if (duration <= 0) { | 
		
	
		
			
				|  |  |  |  |             return "--:--"; | 
		
	
		
			
				|  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |         if (hours >= 100) { | 
		
	
		
			
				|  |  |  |  |             return String.format(Locale.US, "%d:%02d:%02d", hours, minutes, seconds); | 
		
	
		
			
				|  |  |  |  |         } else if (hours > 0) { | 
		
	
		
			
				|  |  |  |  |             return String.format(Locale.US, "%02d:%02d:%02d", hours, minutes, seconds); | 
		
	
		
			
				|  |  |  |  |         } else { | 
		
	
		
			
				|  |  |  |  |             return String.format(Locale.US, "%02d:%02d", minutes, seconds); | 
		
	
		
			
				|  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     private String buildTrackType(int type) { | 
		
	
		
			
				|  |  |  |  | //        Context context = getContext();
 | 
		
	
		
			
				|  |  |  |  | //        switch (type) {
 | 
		
	
		
			
				|  |  |  |  | //            case ITrackInfo.MEDIA_TRACK_TYPE_VIDEO:
 | 
		
	
		
			
				|  |  |  |  | //                return context.getString(R.string.TrackType_video);
 | 
		
	
		
			
				|  |  |  |  | //            case ITrackInfo.MEDIA_TRACK_TYPE_AUDIO:
 | 
		
	
		
			
				|  |  |  |  | //                return context.getString(R.string.TrackType_audio);
 | 
		
	
		
			
				|  |  |  |  | //            case ITrackInfo.MEDIA_TRACK_TYPE_SUBTITLE:
 | 
		
	
		
			
				|  |  |  |  | //                return context.getString(R.string.TrackType_subtitle);
 | 
		
	
		
			
				|  |  |  |  | //            case ITrackInfo.MEDIA_TRACK_TYPE_TIMEDTEXT:
 | 
		
	
		
			
				|  |  |  |  | //                return context.getString(R.string.TrackType_timedtext);
 | 
		
	
		
			
				|  |  |  |  | //            case ITrackInfo.MEDIA_TRACK_TYPE_METADATA:
 | 
		
	
		
			
				|  |  |  |  | //                return context.getString(R.string.TrackType_metadata);
 | 
		
	
		
			
				|  |  |  |  | //            case ITrackInfo.MEDIA_TRACK_TYPE_UNKNOWN:
 | 
		
	
		
			
				|  |  |  |  | //            default:
 | 
		
	
		
			
				|  |  |  |  | //                return context.getString(R.string.TrackType_unknown);
 | 
		
	
		
			
				|  |  |  |  | //        }
 | 
		
	
		
			
				|  |  |  |  |         return "buildTrackType"; | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     private String buildLanguage(String language) { | 
		
	
		
			
				|  |  |  |  |         if (TextUtils.isEmpty(language)) | 
		
	
		
			
				|  |  |  |  |             return "und"; | 
		
	
		
			
				|  |  |  |  |         return language; | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     public ITrackInfo[] getTrackInfo() { | 
		
	
		
			
				|  |  |  |  |         if (mMediaPlayer == null) | 
		
	
		
			
				|  |  |  |  |             return null; | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |         return mMediaPlayer.getTrackInfo(); | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     public void selectTrack(int stream) { | 
		
	
		
			
				|  |  |  |  |         MediaPlayerCompat.selectTrack(mMediaPlayer, stream); | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     public void deselectTrack(int stream) { | 
		
	
		
			
				|  |  |  |  |         MediaPlayerCompat.deselectTrack(mMediaPlayer, stream); | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     public int getSelectedTrack(int trackType) { | 
		
	
		
			
				|  |  |  |  |         return MediaPlayerCompat.getSelectedTrack(mMediaPlayer, trackType); | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | } | 
		
	
	
		
			
				
					|  |  |  | 
 |