homebridge camera ffmpeg
Version 3.1.4
FFMPEGベースのカメラサポートを提供するHomeBridgeプラグイン
このプラグインは、HomebridgeとHoobsの両方でサポートされています。 HomeBridge Config UI XまたはHoobs UIを使用して、このプラグインをインストールおよび構成することを強くお勧めします。
sudo npm install -g homebridge-camera-ffmpeg --unsafe-perm
。config.json
手動で編集して、カメラを追加します。それについての指示については、以下を参照してください。 他のユーザーは、GitHubサイトで機能する構成を共有しています。それをチェックして、他の誰かがカメラのモデルをすでに動作させているかどうかを確認するか、あなたに合った構成セットアップを共有することをお勧めします。
platform
:(必須)は常にCamera-ffmpeg
に設定する必要があります。name
:(必須)ホームアプリに表示されるカメラ名を設定します。source
:(必須) FFMPEGオプションカメラのビデオストリームをデコードする場所とどのようにデコードするか。最も基本的なフォームは-i
に続いてカメラのURLが続きます。stillImageSource
:カメラも静止画像にURLを提供する場合、 source
と同じ構文でここで定義できます。設定されていない場合、プラグインはsource
から1つのフレームをつかみます。 {
"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 TVSにモーションアラートが表示されます。 (デフォルト: false
)manufacturer
:Homeアプリにディスプレイのメーカー名を設定します。 (デフォルト: Homebridge
)model
:ホームアプリに表示するモデルを設定します。 (デフォルト: Camera FFmpeg
)serialNumber
:ホームアプリに表示するシリアル番号を設定します。 (デフォルト: SerialNumber
)firmwareRevision
:Homeアプリに表示するファームウェアリビジョンを設定します。 (デフォルト:現在のプラグインバージョン)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に設定すると、ソースの解像度が使用されます。設定されていない場合は、任意のサイズのホームキットリクエストを使用します。maxHeight
:HomeKitにストリーミングされたビデオに使用される最大高さ。 0に設定すると、ソースの解像度が使用されます。設定されていない場合は、任意のサイズのホームキットリクエストを使用します。maxFPS
:HomeKitにストリーミングされたビデオに使用される最大フレームレート。 0に設定すると、ソースのフレームレートが使用されます。設定されていない場合は、フレームレートホームキットリクエストを使用します。maxBitrate
:Kbit/sのHomeKitにストリーミングされたビデオに使用される最大ビットレート。設定されていない場合は、Bitrate HomeKitリクエストを使用します。forceMax
:設定されている場合、HomeKitが要求する設定は、この構成で定義されている「最大」値でオーバーライドされます。 (デフォルト: false
)vcodec
:HomeKitに送信されたビデオのエンコードに使用されるコーデックの設定は、H.264ベースでなければなりません。このオプションが利用可能な場合は、このオプションを使用して、ハードウェアアクセラル化されたビデオコーデックに変更できます。 (デフォルト: libx264
)audio
:カメラからのオーディオストリーミングを有効にします。 (デフォルト: false
)packetSize
:オーディオまたはビデオが途切れ途切れの場合は、値が小さい場合は、188の倍数に設定する必要があります(デフォルト: 1316
)mapvideo
:ビデオに使用されるストリームを選択します。 (デフォルト:FFMPEGはビデオストリームを自動的に選択します)mapaudio
:オーディオに使用されるストリームを選択します。 (デフォルト:FFMPEGは自動的にオーディオストリームを選択します)videoFilter
:FFMPEGがビデオで実行するための追加のビデオフィルターのComma Delimitedリスト。 「なし」が含まれている場合、デフォルトのビデオフィルターは無効になります。encoderOptions
:ビデオエンコーダーに渡すオプション。 (デフォルト: -preset ultrafast -tune zerolatency
debug
:HomeBridgeログのメイン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ベースの自動化に接続するために、MQTTブローカーのホスト名またはIPを定義します。設定されていない場合、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によって書かれたコードに基づいています。