最近、ライブ デスクトップ画面をWowza メディア サーバーにストリーミングするためにffmpegを利用しようとしています。
これまでのところ、この件に関して部分的に成功しています。
UScreenCapture directx dshow フィルターを使用してデスクトップ画面を記録することができました。また、この記録をサーバーに送信することもできます。ただし、画面をサーバーに直接送信しようとすると、毎回失敗します。プレーヤーのバッファリングは非常に遅く、完了すると空白の画面が表示されます (カウンターはカウントを続けます)。
だから、ここに作業方法があります
画面を記録する場合:
ffmpeg -f dshow -i video="UScreenCapture" -r 25 -vcodec libx264 output.flv
およびストリーミングビデオの場合:
ffmpeg -re -i <input_file_here> -map 0 -c copy -vbsf h264_mp4toannexb -f mpegts udp://stream.server.xyz:52000?pkt_size=1024
そして、これは私が使用しているコードです:
ffmpeg -f dshow -i video="UScreenCapture" -s幅x高さ-rフレームレート-vcodec libx264 -pix_fmt yuv420p -b:vビットレート-an -vbsf h264_mp4toannexb -f mpegts udp:// your.destination.url:PORTNUMBER ? pkt_size= some_bytes
私が覚えている限りでは、wowza をアップグレードする前は問題なく動作していました。
いくつかの追加情報:
- OS: win7 sp1 64bit
- ffmpeg N-49610-gc2dd5a1 (Zeranoe FFmpeg ビルド 2013 年 2 月 5 日)
- UScreenCapture: x64 版 バージョン 2.0.14
- Debian Linux 2.6.32-5-amd64 で実行されているWowza 3.5.2
- フロープレイヤー: 3.2.15
Wowza のログ ファイルを調べていると、あることに気付きました。デスクトップ画面をストリーミングしているときにサーバーが不完全なパケットを取得しているようですが、ビデオファイルをストリーミングしている場合、エラーは発生しません。
RTPDePacketizerMPEGTS.handleRTPPacket
WARN server comment 2013-04-11 11:26:24 - - - - - 152629.665 - - - - - - - -RTPDePacketizerMPEGTS.handleRTPPacket: Incomplete packet: 1504:1472
WARN server comment 2013-04-11 11:26:27 - - - - - 152632.782 - - - - - - - -RTPDePacketizerMPEGTS.handleRTPPacket: Incomplete packet: 1504:1472
WARN server comment 2013-04-11 11:26:31 - - - - - 152636.383 - - - - - - - -RTPDePacketizerMPEGTS.handleRTPPacket: Incomplete packet: 1504:1472
WARN server comment 2013-04-11 11:26:38 - - - - - 152643.484 - - - - - - - -RTPDePacketizerMPEGTS.handleRTPPacket: Incomplete packet: 1504:1472
WARN server comment 2013-04-11 11:26:47 - - - - - 152653.088 - - - - - - - -RTPDePacketizerMPEGTS.handleRTPPacket: Incomplete packet: 1504:1472
WARN server comment 2013-04-11 11:26:52 - - - - - 152657.587 - - - - - - - -RTPDePacketizerMPEGTS.handleRTPPacket: Incomplete packet: 1504:1472
WARN server comment 2013-04-11 11:26:56 - - - - - 152661.624 - - - - - - - -RTPDePacketizerMPEGTS.handleRTPPacket: Incomplete packet: 1504:1472
WARN server comment 2013-04-11 11:27:05 - - - - - 152670.805 - - - - - - - -RTPDePacketizerMPEGTS.handleRTPPacket: Incomplete packet: 1504:1472
このエラーの原因は何ですか? 何か案は?
前もって感謝します!