再生中にmpv --ytdlで再生しているビデオをファイルに保存する


1

遊べるようになりたい そして mpv --ytdlでビデオを保存します。それをどうやってやればいいの?特に重要なのは、バッファも節約されることです。

基本的に、私はYouTubeからビデオを再生し、それからmpvを終了し、それがロードされる時点までビデオを見続けることができるようにしたいのです - それで私はバッファをファイルに保存する必要もあります。

私はすでにyoutube-dl -oを使ってビデオを標準出力に流し込み、それをmpvでパイプ処理してみました。

youtube-dl -o - | mpv -

(ストリームを分割して単純にファイルに書き込むためにteeを使うことができるという考えで) - しかし、これは私がビデオを通してナビゲートするためにmpvを使うことができないという問題を抱えています。すべて。 私が持っていたもう一つの考えは出力ファイルを指定するのにmpvの-oオプションを使うことでした。ただし、これでは内部バッファは節約されません。

回答:


2

もう1つの選択肢は、まだ非常に実験的ですが、mpv独自のものを使用することです。 --record-file

mpv --record-file=video.mkv https://www.youtube.com/watch?v=…

私はそれで成功が限られていました。ソースファイルyoutube-dlは、記録ファイルに指定したファイル拡張子と一致させる必要があるためです。しかしながら、これは質問に記述されているものに最も近いように思えます。

から (現在の安定版)マニュアル

--record-file=<file>

現在のストリームを指定のターゲットファイルに記録します。ターゲットファイルは、確認を求めずに常に上書きされます。

これは再エンコードすることなくソースストリームを再多重化するので、これは非常に脆弱で実験的な機能になります。壊れている、規格に準拠していない、すべてのプレイヤーで再生できない(mpvを含む)、または不完全なファイルが書き込まれる可能性は十分にあります。

ターゲットファイルの形式は、ターゲットファイル名のファイル拡張子によって決まります。可能であればソースコンテナと同じターゲットコンテナを使用し、フォールバックとしてMatroskaを使用することをお勧めします。

ストリーム記録中にシークしたり、再生中にストリーム記録を有効/無効にしたりすると、データが途切れたり、出力ファイルに「穴」ができたりする可能性があります。これらは技術的な制限です。特に、先読みされたビデオデータや字幕がこのようなホールを生成する可能性があり、これはさまざまなプレーヤー(mpvを含む)で再生の問題を引き起こす可能性があります。

このオプションの振る舞いは、将来テンプレートテンプレートに変更するなど、変更される可能性があります(に似ています)。 --screenshot-template 半安定と宣言されるまで、名前の変更、削除、その他



1

youtube-dl url --exec mpv

これはストリーミングではなくダウンロード後に再生されますが、ダイヤルアップアカウントか何かを持っていない限り違いはわかりません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.