いくつかの SerComm IP カメラ (RC8221、RC8230、OC821D) があります。3 つすべてにスピーカーが組み込まれており、API に従って、POST されたオーディオを再生します。
ドキュメントによると....
オーディオ アップロード (オーディオ ストリーミングをカメラにアップロードする)
方法: ポスト
URL: http://[ip]/img/g726.cgi G.726 オーディオ ストリーム (16Kbps または 32Kbps、
URL: http://[ip]/img/g711a.cgi G.711 a-law オーディオ ストリーム (64Kbps)
URL: http://[ip]/img/g711u.cgi G.711 u-law オーディオ ストリーム (64Kbps)
例 (クライアント側):
POST /IMG/g726.cgi HTTP/1.0\r\n
ホスト: 192.168.0.99\r\n
戻る:
わかった
HTTP/1.0 200 OK\r\n
クライアントがオーディオ ストリームのアップロードを開始します。
Audacity で作成した a-law および u-law G.711 ファイルがいくつかあります。Mplayer は仕様を確認します。
を使用してオーディオを投稿しようとしています
curl -vv -F "file=@alaw8ktest.wav;type=audio/wav" -A "Mozilla/5.0" http://user:pass@192.168.0.42/img/g711a.cgi
ただし、カメラから音は出ません。私が返す応答は
* About to connect() to 192.168.0.42 port 80 (#0)
* Trying 192.168.0.42... connected
* Server auth using Basic with user 'user'
> POST /img/g711a.cgi HTTP/1.1
> Authorization: Basic abc123==
> User-Agent: Mozilla/5.0
> Host: 192.168.0.42
> Accept: */*
> Content-Length: 18940
> Expect: 100-continue
> Content-Type: multipart/form-data; boundary=----------------------------68ffb6462b1c
>
1 分ほど経過すると、次のメッセージが返されます。
* Done waiting for 100-continue
< HTTP/1.1 200 OK
< Status: 200 OK
< Content-Length: 0
< Date: Wed, 30 Oct 2013 15:21:14 GMT
< Server: ip-camera
<
* Connection #0 to host 192.168.0.42 left intact
* Closing connection #0
私はさまざまなことを試しました - UA の変更、MIME タイプを含まない別の URL へのオーディオの投稿。何も機能していないようです。管理インターフェイスでスピーカーが「オン」に設定され、音量が大音量に設定されていることを確認しました。
では、CURL リクエストを機能させる方法についてアイデアを持っている人はいますか? 私はそれが明らかなことだと確信しています:-)