Closed ifnk closed 9 months ago
Option ijkapplication not found. 不是错误,可以配置下文档的 tcp 看看
Option ijkapplication not found. 不是错误,可以配置下文档的 tcp 看看
哇, 可以 了, 现在能播了, 谢谢作者 这是我的 mainActivity代码
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.viewinterop.AndroidView
import com.example.myapplication.ui.theme.MyApplicationTheme
import com.shuyu.gsyvideoplayer.GSYVideoManager
import com.shuyu.gsyvideoplayer.model.VideoOptionModel
import com.shuyu.gsyvideoplayer.video.StandardGSYVideoPlayer
import tv.danmaku.ijk.media.player.IjkMediaPlayer
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
MyApplicationTheme {
// A surface container using the 'background' color from the theme
Surface(
modifier = Modifier.fillMaxSize(),
color = MaterialTheme.colorScheme.background
) {
GSYVideoPlayerView(
Modifier.fillMaxSize(),
"rtsp://admin:admin123456@192.168.1.69:554/Streaming/Channels/101"
)
}
}
}
}
}
@Composable
fun GSYVideoPlayerView(modifier: Modifier = Modifier, videoUrl: String) {
AndroidView(
modifier = modifier,
factory = { context ->
val videoOptionModel =
VideoOptionModel(IjkMediaPlayer.OPT_CATEGORY_FORMAT, "rtsp_transport", "tcp")
val list: MutableList<VideoOptionModel> = ArrayList()
list.add(videoOptionModel)
GSYVideoManager.instance().optionModelList = list;
StandardGSYVideoPlayer(context).apply {
setUp(videoUrl, true, "测试视频")
startPlayLogic()
}
},
update = { player ->
player.setUp(videoUrl, true, "测试视频")
player.startPlayLogic()
}
)
}
是加了这几行 就可以 了
val videoOptionModel =
VideoOptionModel(IjkMediaPlayer.OPT_CATEGORY_FORMAT, "rtsp_transport", "tcp")
val list: MutableList<VideoOptionModel> = ArrayList()
list.add(videoOptionModel)
GSYVideoManager.instance().optionModelList = list;
参考文档是这个 https://github.com/CarGuo/GSYVideoPlayer/blob/master/doc/QUESTION.md 第17 条
(!!!!请务必务必按照issue模板,修改 后提交问题!!!!,不按模板提Isuue删除处理)
(ps 首页问题集锦和demo请先了解一下!)
⚠️提问前建议先看看: https://mp.weixin.qq.com/s/HjSdmAsHuvixCH_EWdvk3Q
问题描述:
⚠️vlc 可以播放 流地址 ,但是我 用 gsyVideoPlayer 播放 报错 Option ijkapplication not found.
出现问题的视频流
我用的局域网的海康摄像头 rtsp://admin:admin123456@192.168.1.69:554/Streaming/Channels/101
问题机型/系统:
安卓 studio 的 安卓虚拟机 pixel 3a api 34 exensions level 7 x86 64
GSY依赖版本
Demo中的复现步骤
我是自己新开的 empty activity
问题代码:(如果有)
MainActivity.kt
build.gradle : app
settings.gradle
build.gradle
AndroidManifest.xml
问题log(如果有)
看起来 rtsp流是能解析的, 但是 就是报错 Option ijkapplication not found. 导致无法播放 ,我按照 文档 已经配置了