desc:录制去到音频,视频不会特别快了
parent
6eb9d923a5
commit
d5eee6f9db
@ -0,0 +1,83 @@
|
||||
package com.yinuo.library.vlc
|
||||
|
||||
import com.common.commonlib.CommonApplication
|
||||
import com.yinuo.library.vlc.utils.LogUtils
|
||||
import org.easydarwin.push.EasyPusher
|
||||
import org.easydarwin.push.InitCallback
|
||||
import org.easydarwin.push.Pusher
|
||||
|
||||
object PushHelper {
|
||||
|
||||
private val mPusher: EasyPusher by lazy {
|
||||
EasyPusher()
|
||||
}
|
||||
|
||||
private val mApplicationContext = CommonApplication.getContext()
|
||||
|
||||
private var mHeight: Int = 0
|
||||
private var mWidth: Int = 0
|
||||
|
||||
init {
|
||||
setPushUrl("")
|
||||
}
|
||||
|
||||
var callback = InitCallback { code ->
|
||||
var msg = ""
|
||||
when (code) {
|
||||
EasyPusher.OnInitPusherCallback.CODE.EASY_ACTIVATE_INVALID_KEY -> msg = "无效Key"
|
||||
EasyPusher.OnInitPusherCallback.CODE.EASY_ACTIVATE_SUCCESS -> msg = "未开始"
|
||||
EasyPusher.OnInitPusherCallback.CODE.EASY_PUSH_STATE_CONNECTING -> msg = "连接中"
|
||||
EasyPusher.OnInitPusherCallback.CODE.EASY_PUSH_STATE_CONNECTED -> msg = "连接成功"
|
||||
EasyPusher.OnInitPusherCallback.CODE.EASY_PUSH_STATE_CONNECT_FAILED -> msg = "连接失败"
|
||||
EasyPusher.OnInitPusherCallback.CODE.EASY_PUSH_STATE_CONNECT_ABORT -> msg =
|
||||
"连接异常中断"
|
||||
|
||||
EasyPusher.OnInitPusherCallback.CODE.EASY_PUSH_STATE_PUSHING -> msg = "推流中"
|
||||
EasyPusher.OnInitPusherCallback.CODE.EASY_PUSH_STATE_DISCONNECTED -> msg = "断开连接"
|
||||
EasyPusher.OnInitPusherCallback.CODE.EASY_ACTIVATE_PLATFORM_ERR -> msg = "平台不匹配"
|
||||
EasyPusher.OnInitPusherCallback.CODE.EASY_ACTIVATE_COMPANY_ID_LEN_ERR -> msg =
|
||||
"授权使用商不匹配"
|
||||
|
||||
EasyPusher.OnInitPusherCallback.CODE.EASY_ACTIVATE_PROCESS_NAME_LEN_ERR -> msg =
|
||||
"进程名称长度不匹配"
|
||||
}
|
||||
LogUtils.v("PushHelper. InitCallback $msg")
|
||||
}
|
||||
|
||||
fun configSize(width: Int, height: Int) {
|
||||
this.mWidth = width
|
||||
this.mHeight = height
|
||||
}
|
||||
|
||||
fun setPushUrl(url: String) {
|
||||
initHelper("192.168.5.16", "554", "123")
|
||||
}
|
||||
|
||||
fun stop() {
|
||||
mPusher.stop()
|
||||
}
|
||||
|
||||
fun pushData(h264: ByteArray, length: Int, timeStamp: Long) {
|
||||
mPusher.push(h264, 0, length, timeStamp, 1)
|
||||
}
|
||||
|
||||
private fun initHelper(ip: String, port: String, id: String) {
|
||||
mPusher.initPush(mApplicationContext, callback)
|
||||
mPusher.setMediaInfo(
|
||||
Pusher.Codec.EASY_SDK_VIDEO_CODEC_H264,
|
||||
24,
|
||||
Pusher.Codec.EASY_SDK_AUDIO_CODEC_AAC,
|
||||
1,
|
||||
8000,
|
||||
16
|
||||
)
|
||||
mPusher.start(ip, port, String.format("%s.sdp", id), Pusher.TransType.EASY_RTP_OVER_TCP)
|
||||
}
|
||||
|
||||
|
||||
@JvmField
|
||||
var mPpsSps = ByteArray(0)
|
||||
|
||||
@JvmField
|
||||
var h264 = ByteArray(1920 * 1080)
|
||||
}
|
Loading…
Reference in New Issue