theboundaryforever / wlmedia

android 音视频播放SDK,几句代码即可实现音视频播放功能~

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

wlmedia

android 音视频播放SDK,几句代码即可实现音视频播放功能~

1、Usage

Gradle: Download

implementation 'ywl.ywl5320:wlmedia:1.0.0-beta17'

2、实例图片

播放视频

播放byte[](如:标准的h264 h265等)

播放音乐

竖屏播放(自动保持宽高比)

横屏播放(自动保持宽高比)

3、调用方式

配置NDK编译平台:

defaultConfig {
	...
	ndk {
	    abiFilter("arm64-v8a")
	    abiFilter("armeabi-v7a")
	    abiFilter("x86")
	    abiFilter("x86_64")
	}
	...
}

基本权限

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

接入代码(SDK API level:28)

// WlSurfaceView 一般播放使用
<com.ywl5320.wlmedia.widget.WlSurfaceView
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

// WlTextureView 需要做透明、移动、旋转等使用
<com.ywl5320.wlmedia.widget.WlTextureView
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

WlMedia wlMedia = new WlMedia();// 可支持多实例播放(主要对于音频,视频实际验证效果不佳)
wlMedia.setPlayModel(WlPlayModel.PLAYMODEL_AUDIO_VIDEO);//声音视频都播放
wlMedia.setCodecType(WlCodecType.CODEC_MEDIACODEC);//优先使用硬解码
wlMedia.setMute(WlMute.MUTE_CENTER);//立体声
wlMedia.setVolume(80);//80%音量
wlMedia.setPlayPitch(1.0f);//正常速度
wlMedia.setPlaySpeed(1.0f);//正常音调
wlMedia.setRtspTimeOut(30);//网络流超时时间
wlMedia.setShowPcmData(true);//回调返回音频pcm数据
wlMedia.setSampleRate(WlSampleRate.RATE_44100);//设置音频采样率为指定值(返回的PCM就是这个采样率)
wlSurfaceView.setWlMedia(wlMedia);//给视频surface设置播放器

//异步准备完成后开始播放
wlMedia.setOnPreparedListener(new WlOnPreparedListener() {
        @Override
        public void onPrepared() {
    	// wlMedia.setVideoScale(WlScaleType.SCALE_16_9);//设置16:9的视频比例
            wlMedia.start();//开始播放
            double duration = wlMedia.getDuration();//获取时长
        }
    });

//设置url源
wlMedia.setSource("/storage/sdcard1/精灵宝可梦:就决定是你了.720p.国日粤三语.BD中字[最新电影www.66ys.tv].mp4");
wlMedia.prepared();//异步准备

4、其他API 可看类:WlMedia.java

create By:ywl5320 2019-01-01

About

android 音视频播放SDK,几句代码即可实现音视频播放功能~

License:Apache License 2.0


Languages

Language:Java 100.0%