web-dev-qa-db-ja.com

Linuxでrtmpビデオストリームをダウンロードする方法は?

今日の午後5時から6時までに録画したビデオを次のearthcamからダウンロードしたいと思います。

http://www.abbeyroad.com/crossing

どうすればdebianまたはubuntuでダウンロードできますか?

ソースコードを調べると、次のようになりました。

rtmp://video4.earthcam.com/archives/MP4:abbeyroad_archives/2016/03/26/1700.mp4

私は次のようにrtmpdumpアプリケーションを使用してみました:

rtmpdump -r "rtmp://video4.earthcam.com/archives/MP4:abbeyroad_archives/2016/03/26/1700.mp4"

しかし、私は次のエラーメッセージを受け取ります

情報:接続されています...エラー:接続を閉じています:NetStream.Play.StreamNotFound

3
George Birchoff

次のように、playpath -yを指定してみてください。

$ rtmpdump -r rtmp://video4.earthcam.com/archives/MP4:abbeyroad_archives/2016/03/26/1700.mp4 -y MP4:abbeyroad_archives/2016/03/26/1700.mp4 -o ~/2016-03-26_1700.mp4

説明

エラーNetStream.Play.StreamNotFoundに関して、 mplayerhq.huの "NhJm" は次のように書いています。

rtmpdumpはそれ自体でアプリ/プレイパスを把握できなかったため、それらが何であるかを伝える必要があります。

  • 「NhJm」の完全なソリューションでは、アプリとプレイパスの両方を指定しました。
  • ただし、必要に応じて、プレイパスを指定するだけで機能するようです。-y MP4:abbeyroad_archives/2016/03/26/1700.mp4

man rtmp

--playpath-yパス

RTMPURLから解析されたプレイパスを上書きします。 rtmpdump URLパーサーが正しいプレイパスを自動的に判別できない場合があるため、このオプションを使用して明示的に指定する必要があります。

追加オプション:

  • -o ~/2016-03-26_1700.mp4~/2016-03-26_1700.mp4に保存するには、この出力パスを好みに合わせてカスタマイズできます

私のテストでは、開始してすぐにキャンセルできるかどうかをテストしただけです。 Ctrl+c

...
INFO:   displayHeight         450.00
INFO:   moovposition          115974321.00
INFO:   duration              3604.94
2035.687 kB / 26.59 sec (0.7%)^C
Caught signal: 2, cleaning up, just a second...
ERROR: RTMP_ReadPacket, failed to read RTMP packet body. len: 1024
2037.111 kB / 26.66 sec (0.7%)
Download may be incomplete (downloaded about 0.70%), try resuming

私のテストの結果のファイルは、約0.7%だけですが、mplayer2でテストした場合、約30秒の再生可能なビデオがあります。したがって、キャンセルしない場合、またはキャンセルした場合は、-eオプションを使用して再開でき、完全なビデオを取得できます。

これで、ビートルズを正常に監視できます Abbey Road rtmpを介した模倣者。

参考文献

3
clarity123

試してみてください

rtmpdump -r rtmp://video4.earthcam.com/archives/ -y MP4:abbeyroad_archives/2016/03/26/1700.mp4 -o 1700.mp4

ストリームの場合は、-vオプションを追加する必要があります。

0
Matt