123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- /*
- * Copyright (C) 2015 Bilibili
- * Copyright (C) 2015 Zhang Rui <bbcallen@gmail.com>
- *
- * 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 com.edufound.mobile.ijkplayer.media;
- import android.graphics.SurfaceTexture;
- import android.support.annotation.NonNull;
- import android.support.annotation.Nullable;
- import android.view.Surface;
- import android.view.SurfaceHolder;
- import android.view.View;
- import tv.danmaku.ijk.media.player.IMediaPlayer;
- public interface IRenderView {
- int AR_ASPECT_FIT_PARENT = 0; // without clip
- int AR_ASPECT_FILL_PARENT = 1; // may clip
- int AR_ASPECT_WRAP_CONTENT = 2;
- int AR_MATCH_PARENT = 3;
- int AR_16_9_FIT_PARENT = 4;
- int AR_4_3_FIT_PARENT = 5;
- View getView();
- boolean shouldWaitForResize();
- void setVideoSize(int videoWidth, int videoHeight);
- void setVideoSampleAspectRatio(int videoSarNum, int videoSarDen);
- void setVideoRotation(int degree);
- void setAspectRatio(int aspectRatio);
- void addRenderCallback(@NonNull IRenderCallback callback);
- void removeRenderCallback(@NonNull IRenderCallback callback);
- interface ISurfaceHolder {
- void bindToMediaPlayer(IMediaPlayer mp);
- @NonNull
- IRenderView getRenderView();
- @Nullable
- SurfaceHolder getSurfaceHolder();
- @Nullable
- Surface openSurface();
- @Nullable
- SurfaceTexture getSurfaceTexture();
- }
- interface IRenderCallback {
- /**
- * @param holder
- * @param width could be 0
- * @param height could be 0
- */
- void onSurfaceCreated(@NonNull ISurfaceHolder holder, int width, int height);
- /**
- * @param holder
- * @param format could be 0
- * @param width
- * @param height
- */
- void onSurfaceChanged(@NonNull ISurfaceHolder holder, int format, int width, int height);
- void onSurfaceDestroyed(@NonNull ISurfaceHolder holder);
- }
- }
|