mirror of
https://github.com/ZLMediaKit/ZLMediaKit.git
synced 2024-11-25 20:27:34 +08:00
FFmpeg超时时间与hook超时时间关联
This commit is contained in:
parent
276aa1a497
commit
99dda48bf7
@ -44,6 +44,7 @@
|
||||
#include "Player/PlayerProxy.h"
|
||||
#include "Util/MD5.h"
|
||||
#include "WebApi.h"
|
||||
#include "WebHook.h"
|
||||
|
||||
#if !defined(_WIN32)
|
||||
#include "FFmpegSource.h"
|
||||
@ -88,8 +89,8 @@ typedef enum {
|
||||
} ApiErr;
|
||||
|
||||
#define API_FIELD "api."
|
||||
const char kApiDebug[] = API_FIELD"apiDebug";
|
||||
const char kSecret[] = API_FIELD"secret";
|
||||
const string kApiDebug = API_FIELD"apiDebug";
|
||||
const string kSecret = API_FIELD"secret";
|
||||
|
||||
static onceToken token([]() {
|
||||
mINI::Instance()[kApiDebug] = "1";
|
||||
@ -617,6 +618,8 @@ void installWebApi() {
|
||||
CHECK_ARGS("vhost","app","stream");
|
||||
//通过FFmpeg按需拉流
|
||||
GET_CONFIG(int,rtmp_port,Rtmp::kPort);
|
||||
GET_CONFIG(int,timeout_sec,Hook::kTimeoutSec);
|
||||
|
||||
string dst_url = StrPrinter
|
||||
<< "rtmp://127.0.0.1:"
|
||||
<< rtmp_port << "/"
|
||||
@ -626,7 +629,7 @@ void installWebApi() {
|
||||
|
||||
addFFmepgSource("http://live.hkstv.hk.lxdns.com/live/hks2/playlist.m3u8",/** ffmpeg拉流支持任意编码格式任意协议 **/
|
||||
dst_url,
|
||||
10000,
|
||||
(1000 * timeout_sec) - 500,
|
||||
[invoker,val,headerOut](const SockException &ex,const string &key){
|
||||
if(ex){
|
||||
const_cast<Value &>(val)["code"] = API::OtherFailed;
|
||||
|
@ -38,6 +38,7 @@
|
||||
#include "Network/TcpSession.h"
|
||||
#include "Rtsp/RtspSession.h"
|
||||
#include "Http/HttpSession.h"
|
||||
#include "WebHook.h"
|
||||
|
||||
using namespace Json;
|
||||
using namespace toolkit;
|
||||
@ -57,20 +58,20 @@ typedef HttpArgs ArgsType;
|
||||
namespace Hook {
|
||||
#define HOOK_FIELD "hook."
|
||||
|
||||
const char kEnable[] = HOOK_FIELD"enable";
|
||||
const char kTimeoutSec[] = HOOK_FIELD"timeoutSec";
|
||||
const char kOnPublish[] = HOOK_FIELD"on_publish";
|
||||
const char kOnPlay[] = HOOK_FIELD"on_play";
|
||||
const char kOnFlowReport[] = HOOK_FIELD"on_flow_report";
|
||||
const char kOnRtspRealm[] = HOOK_FIELD"on_rtsp_realm";
|
||||
const char kOnRtspAuth[] = HOOK_FIELD"on_rtsp_auth";
|
||||
const char kOnStreamChanged[] = HOOK_FIELD"on_stream_changed";
|
||||
const char kOnStreamNotFound[] = HOOK_FIELD"on_stream_not_found";
|
||||
const char kOnRecordMp4[] = HOOK_FIELD"on_record_mp4";
|
||||
const char kOnShellLogin[] = HOOK_FIELD"on_shell_login";
|
||||
const char kOnStreamNoneReader[] = HOOK_FIELD"on_stream_none_reader";
|
||||
const char kOnHttpAccess[] = HOOK_FIELD"on_http_access";
|
||||
const char kAdminParams[] = HOOK_FIELD"admin_params";
|
||||
const string kEnable = HOOK_FIELD"enable";
|
||||
const string kTimeoutSec = HOOK_FIELD"timeoutSec";
|
||||
const string kOnPublish = HOOK_FIELD"on_publish";
|
||||
const string kOnPlay = HOOK_FIELD"on_play";
|
||||
const string kOnFlowReport = HOOK_FIELD"on_flow_report";
|
||||
const string kOnRtspRealm = HOOK_FIELD"on_rtsp_realm";
|
||||
const string kOnRtspAuth = HOOK_FIELD"on_rtsp_auth";
|
||||
const string kOnStreamChanged = HOOK_FIELD"on_stream_changed";
|
||||
const string kOnStreamNotFound = HOOK_FIELD"on_stream_not_found";
|
||||
const string kOnRecordMp4 = HOOK_FIELD"on_record_mp4";
|
||||
const string kOnShellLogin = HOOK_FIELD"on_shell_login";
|
||||
const string kOnStreamNoneReader = HOOK_FIELD"on_stream_none_reader";
|
||||
const string kOnHttpAccess = HOOK_FIELD"on_http_access";
|
||||
const string kAdminParams = HOOK_FIELD"admin_params";
|
||||
|
||||
onceToken token([](){
|
||||
mINI::Instance()[kEnable] = true;
|
||||
|
Loading…
Reference in New Issue
Block a user