homebridge camera ffmpeg
Version 3.1.4
Homebridge插件提供基於FFMPEG的相機支持
該插件在Homebridge和Hoobs下都支持。強烈建議您使用Homebridge Config Ui X或Hoobs UI來安裝和配置此插件。
sudo npm install -g homebridge-camera-ffmpeg --unsafe-perm
。config.json
手動添加攝像機。有關此的說明,請參見下文。 其他用戶一直在共享在我們的GitHub網站上適合他們的配置。您可能需要檢查一下,以查看其他任何人是否已獲得您的相機模型,或共享適合您的配置設置。
platform
:(必需)必須始終將其設置為Camera-ffmpeg
。name
:(必需)設置在Home應用中顯示的相機名稱。source
:(必需) FFMPEG選項在哪裡找到以及如何解碼相機的視頻流。最基本的形式是-i
隨後是相機的URL。stillImageSource
:如果您的相機還為靜止圖像提供了一個URL,則可以在此處使用與source
相同的語法定義。如果未設置,則該插件將從source
中獲取一個幀。 {
"platform" : " Camera-ffmpeg " ,
"cameras" : [
{
"name" : " Camera Name " ,
"videoConfig" : {
"source" : " -i rtsp://username:[email protected]:554 " ,
"stillImageSource" : " -i http://example.com/still_image.jpg " ,
"maxStreams" : 2 ,
"maxWidth" : 1280 ,
"maxHeight" : 720 ,
"maxFPS" : 30
}
}
]
}
motion
:揭示此相機的運動傳感器。這可以通過虛擬開關,MQTT消息或通過HTTP觸發,具體取決於配置中啟用了哪些功能。 (默認: false
)doorbell
:露出該相機的門鈴設備。這可以通過虛擬開關,MQTT消息或通過HTTP觸發,具體取決於配置中啟用了哪些功能。 (默認: false
)switches
:如果啟用了兩個,則可以使虛擬開關觸發運動和/或門鈴。啟用後,將有一個額外的開關觸發運動或門鈴事件。有關更多詳細說明,請參見項目網站。 (默認: false
)motionTimeout
:觸發後的秒數以重置運動傳感器。設置為0,以禁用MQTT或HTTP的運動觸發器的重置。 (默認: 1
)motionDoorbell
:激活運動時會響門鈴。這允許運動警報出現在Apple TV上。 (默認: false
)manufacturer
:將製造商名稱設置為“家庭應用”中的顯示。 (默認: Homebridge
)model
:設置在Home應用中顯示的模型。 (默認: Camera FFmpeg
)serialNumber
:將序列號設置為在Home應用中顯示。 (默認: SerialNumber
)firmwareRevision
:將固件修訂設置為在家庭應用中顯示。 (默認:當前插件版本)unbridge
:橋接的攝像機可能會導致整個Homebridge實例的放緩。如果未橋接,則需要手動將相機添加到HomeKit。 (默認: false
) {
"platform" : " Camera-ffmpeg " ,
"cameras" : [
{
"name" : " Camera Name " ,
"manufacturer" : " ACME, Inc. " ,
"model" : " ABC-123 " ,
"serialNumber" : " 1234567890 " ,
"firmwareRevision" : " 1.0 " ,
"videoConfig" : {
"source" : " -i rtsp://username:[email protected]:554 " ,
"stillImageSource" : " -i http://example.com/still_image.jpg " ,
"maxStreams" : 2 ,
"maxWidth" : 1280 ,
"maxHeight" : 720 ,
"maxFPS" : 30
}
}
]
}
returnAudioTarget
:(實驗 - WIP) FFMPEG輸出命令將音頻引導回到雙向相機。此功能仍在開發中,如今可行的配置可能無法正常工作。maxStreams
:將立即允許到此相機的最大流數量。 (默認: 2
)maxWidth
:用於視頻流到HomeKit的最大寬度。如果設置為0,則使用源的分辨率。如果未設置,將使用任何尺寸的HomeKit請求。maxHeight
:視頻流到HomeKit的最大高度。如果設置為0,則使用源的分辨率。如果未設置,將使用任何尺寸的HomeKit請求。maxFPS
:用於視頻流到HomeKit的最大幀速率。如果設置為0,則使用源的幀率。如果未設置,將使用任何幀速率HomeKit請求。maxBitrate
:用於視頻流到HomeKit的最大比特率,以Kbit/s為單位。如果未設置,將使用任何比特率HOMEKIT請求。forceMax
:如果設置,則HomeKit要求的設置將被覆蓋,並在此配置中定義任何“最大”值。 (默認: false
)vcodec
:設置用於編碼發送給HomeKit的視頻的編解碼器,必須基於H.264。如果可以,則可以使用此選項更改為硬件加速視頻編解碼器。 (默認: libx264
)audio
:啟用來自相機的音頻流。 (默認: false
)packetSize
:如果音頻或視頻是斷斷續續的嘗試較小的值,則應將其設置為188的倍數。(默認: 1316
)mapvideo
:選擇用於視頻的流。 (默認:FFMPEG自動選擇視頻流)mapaudio
:選擇用於音頻的流。 (默認:FFMPEG自動選擇音頻流)videoFilter
:逗號限制的其他視頻過濾器列表,供FFMPEG在視頻上運行。如果包括“無”,則禁用默認視頻過濾器。encoderOptions
:要傳遞給視頻編碼器的選項。 (默認值: -preset ultrafast -tune zerolatency
如果使用libx264)debug
:包括從主橋日誌中主要FFMPEG進程的調試輸出。 (默認: false
)debugReturn
:包括從Homebridge日誌中用於返回音頻的FFMPEG的調試輸出。 (默認: false
) {
"platform" : " Camera-ffmpeg " ,
"cameras" : [
{
"name" : " Camera Name " ,
"videoConfig" : {
"source" : " -i rtsp://myfancy_rtsp_stream " ,
"stillImageSource" : " -i http://faster_still_image_grab_url/this_is_optional.jpg " ,
"maxStreams" : 2 ,
"maxWidth" : 1280 ,
"maxHeight" : 720 ,
"maxFPS" : 30 ,
"maxBitrate" : 200 ,
"vcodec" : " h264_omx " ,
"audio" : false ,
"packetSize" : 188 ,
"hflip" : true ,
"additionalCommandline" : " -x264-params intra-refresh=1:bframes=0 " ,
"debug" : true
}
}
]
}
motionTopic
:要關注運動警報的MQTT主題。motionMessage
:要注意的消息觸發運動警報。如果空白,將使用相機的名稱。motionResetTopic
:要注意運動重置的MQTT主題。motionResetMessage
:要注意的消息觸發運動重置。如果空白,將使用相機的名稱。doorbellTopic
:要注意門鈴警報的MQTT主題。doorbellMessage
:要注意的消息觸發門鈴警報。如果空白,將使用相機的名稱。 {
"platform" : " Camera-ffmpeg " ,
"cameras" : [
{
"name" : " Camera Name " ,
"videoConfig" : {
"source" : " -i rtsp://myfancy_rtsp_stream "
},
"mqtt" : {
"motionTopic" : " home/camera " ,
"motionMessage" : " ON " ,
"motionResetTopic" : " home/camera " ,
"motionResetMessage" : " OFF " ,
"doorbellTopic" : " home/doobell " ,
"doorbellMessage" : " ON "
}
}
]
}
mqtt
:定義MQTT代理的主機名或IP,以連接到基於MQTT的自動化。如果未設置,則未啟動MQTT支持。有關使用MQTT的更多信息,請參見項目網站。portmqtt
:MQTT經紀人的端口。 (默認: 1883
)tlsmqtt
:使用TLS連接到MQTT代理。 (默認: false
)usermqtt
:用於連接到MQTT經紀人的用戶名。如果未設置,則不使用身份驗證。passmqtt
:用於連接到MQTT代理的密碼。如果未設置,則不使用身份驗證。porthttp
:聆聽基於HTTP的自動化的端口。如果未設置,則不會啟動HTTP支持。有關使用HTTP的更多信息,請參見項目網站。localhttp
:僅允許Localhost的HTTP調用。如果使用轉化為HTTP的幫助插件,則有用。 (默認: false
) {
"platform" : " Camera-ffmpeg " ,
"mqtt" : " 127.0.0.1 " ,
"porthttp" : " 8080 " ,
"cameras" : []
}
videoProcessor
:定義哪個視頻處理器用於解碼和編碼視頻,必須採用與FFMPEG相同的參數。常見用途將是avconv
或FFMPEG定製版本的路徑。如果未設置,將使用隨附的FFMPEG版本,或系統上安裝的FFMPEG版本,如果沒有隨附的版本可用。 {
"platform" : " Camera-ffmpeg " ,
"videoProcessor" : " /usr/bin/ffmpeg " ,
"cameras" : []
}
Homebridge Camera FFMPEG基於Khaos Tian最初編寫的代碼。