3

VB.netでSonyカメラ(QX1を使用していますが、モデルは関係ありません)をリモートで使用するための小さなソフトウェアをプログラミングしています。JSON コマンドをカメラに送信して写真を作成し、JSON コマンドにラップされたメソッド「startLiveview」を使用してライブビュー ストリームを開始することもできました。代わりに、http://192.168.122.1:8080/liveview/ liveviewstream (JSON 回答にラップ) のような、ライブストリームをダウンロードするためのアドレスを取得します。

Sony CameraRemote-API-reference によると、これはいくつかのヘッダー データと単一の jpeg データを含むストリームです。しかし、MJPEG ストリームではないようです。livestream-link をブラウザに渡すと、ライブストリームが無限にダウンロードされ始めます。VLC のような MJPEG ストリーム プレーヤーでストリームを表示できませんでした。

私の質問は、VB.net で jpeg データを除外するにはどうすればよいか、ライブストリームを表示するにはどうすればよいかということです。

同様の質問が以前の質問に既に投稿されていましが、回答はありませんでした。そのため、もう一度試しています。

4

4 に答える 4

2

これが私のやり方です。ffserver を使用してビデオをストリーミング可能にします。これは、ffserver 構成 (server.conf) の myconfig です。

Port 8090
BindAddress 0.0.0.0
MaxHTTPConnections 2000
MaxClients 1000
MaxBandwidth 10000

CustomLog -

<Feed feed1.ffm>
 File /tmp/feed1.ffm
 FileMaxSize 1G
 ACL allow 127.0.0.1
</Feed>

<Stream cam.webm>
  Feed feed1.ffm
  Format webm

  VideoCodec libvpx
  VideoSize vga
  VideoFrameRate 25
  AVOptionVideo flags +global_header  

  StartSendOnKey
  NoAudio
  preroll 5
  VideoBitRate 400
</Stream>

<Stream status.html>
  Format status
  ACL allow localhost
  ACL allow 192.168.0.0 192.168.255.255
</Stream>

そして、その設定で ffserver を実行します:

ffserver -f server.conf 

次に、sony liveview からビデオをエンコードし、ffserver 経由でブロードキャストします。

ffmpeg -i http://192.168.122.1:8080/liveview/liveviewstream -vcodec libvpx -fflags nobuffer -an http://127.0.0.1:8090/feed1.ffm

その後、アドレスからライブビューをストリーミングできます localhost:8090/cam.webm

于 2015-07-03T01:28:53.153 に答える