flv和hls拉流无法播放
coolmian opened this issue · comments
测试版本:github上已经编译好的二进制文件lal_v0.29.1_windows
主要问题:
使用OBS rtmp推流测试,不管推流地址写成
rtmp://127.0.0.1:1935/live/test110
rtmp://127.0.0.1:1935/test110
rtmp://127.0.0.1:1935/live/test110/test110
都能推,而且ts文件只会保存到lal_record\hls 目录下,不会再根据{streamName}新建目录
拉流时使用http://127.0.0.1:8080/test110.flv ,日志不报错
但是mpegts.js和PotPlayer播放器都一直加载无法播放
如果使用http://127.0.0.1:8080/hls/test110.m3u8拉流,日志显示报错
request={StreamName:test110 FileNameWithPath:lal_record\hls\test110\playlist.m3u8}, err=open lal_record\hls\test110\playlist.m3u8: The system cannot find the path specified. - server_handler.go:56
我看了下,确实test110文件夹就没被创建出来
感觉完全不会根据配置说明里的这种路径生成文件
// - `/hls/{streamName}.m3u8`
// - `/hls/{streamName}/playlist.m3u8`
// - `/hls/{streamName}/record.m3u8`**
我的配置文件
{
"# doc of config": "https://pengrl.com/lal/#/ConfigBrief",
"conf_version": "v0.2.9",
"rtmp": {
"enable": true,
"addr": ":1935",
"gop_num": 1,
"merge_write_size": 0,
"add_dummy_audio_enable": true,
"add_dummy_audio_wait_audio_ms": 150
},
"default_http": {
"http_listen_addr": ":8080",
"https_listen_addr": ":4433",
"https_cert_file": "./conf/cert.pem",
"https_key_file": "./conf/key.pem"
},
"httpflv": {
"enable": true,
"enable_https": true,
"url_pattern": "/",
"gop_num": 1
},
"hls": {
"enable": true,
"enable_https": true,
"url_pattern": "/hls/",
"out_path": "./lal_record/hls/",
"fragment_duration_ms": 3000,
"fragment_num": 6,
"delete_threshold": 6,
"cleanup_mode": 1,
"use_memory_as_disk_flag": false
},
"httpts": {
"enable": true,
"enable_https": true,
"url_pattern": "/",
"gop_num": 0
},
"rtsp": {
"enable": true,
"addr": ":5544",
"out_wait_key_frame_flag": true
},
"record": {
"enable_flv": true,
"flv_out_path": "./lal_record/flv/",
"enable_mpegts": false,
"mpegts_out_path": "./lal_record/mpegts"
},
"relay_push": {
"enable": false,
"addr_list":[
]
},
"relay_pull": {
"enable": false,
"addr": ""
},
"http_api": {
"enable": true,
"addr": ":8083"
},
"server_id": "1",
"http_notify": {
"enable": false,
"update_interval_sec": 5,
"on_server_start": "http://127.0.0.1:10101/on_server_start",
"on_update": "http://127.0.0.1:10101/on_update",
"on_pub_start": "http://127.0.0.1:10101/on_pub_start",
"on_pub_stop": "http://127.0.0.1:10101/on_pub_stop",
"on_sub_start": "http://127.0.0.1:10101/on_sub_start",
"on_sub_stop": "http://127.0.0.1:10101/on_sub_stop",
"on_rtmp_connect": "http://127.0.0.1:10101/on_rtmp_connect"
},
"simple_auth": {
"key": "q191201771",
"dangerous_lal_secret": "pengrl",
"pub_rtmp_enable": false,
"sub_rtmp_enable": false,
"sub_httpflv_enable": false,
"sub_httpts_enable": false,
"pub_rtsp_enable": false,
"sub_rtsp_enable": false,
"hls_m3u8_enable": false
},
"pprof": {
"enable": true,
"addr": ":8084"
},
"log": {
"level": 1,
"filename": "./logs/lalserver.log",
"is_to_stdout": true,
"is_rotate_daily": true,
"short_file_flag": true,
"timestamp_flag": true,
"timestamp_with_ms_flag": true,
"level_flag": true,
"assert_behavior": 1
},
"debug": {
"log_group_interval_sec": 30,
"log_group_max_group_num": 10,
"log_group_max_sub_num_per_group": 10
}
}
没事了,OBS推流时需要把{streamName}当成串流密钥填写
具体填写如下:
服务器:rtmp://127.0.0.1:1935/live
串流密钥:test110