1.m3u8フォーマットの解釈
このセクションは以下から引用されています:m3u8ビデオファイルの詳細な説明
m3u8はビデオ形式ではなく、プレーンテキストファイルです。
m3u8ビデオファイル形式には、ビデオの基本情報とセグメント化されたビデオのインデックスアドレスが格納されます(ビデオ全体が長さの異なる多数の小さなセグメントに分割されます)。m3u8ビデオを再生するときは、完全なビデオの再生を完了するために、再生インデックスリストのビデオをダウンロードすることです。
ウィキペディアによるm3u8の定義
M3U8:m3u8は、m3uファイルのUnicodeバージョンであるUTF-8エンコーディングのプレーンテキストファイルです。
M3U:m3uは、マルチメディアリストを再生するためのファイル形式です。1つ以上のマルチメディアファイルの場所を指定できます。元々はオーディオファイルを再生するために設計されました。MP3などですが、ビデオファイルリストの再生に使用されるソフトウェアはますます増えています。
M3Uファイルは、インデックス付きのプレーンテキストファイルを記録します。ファイルを開くと、再生ソフトウェアはそれを再生しませんが、オンライン再生用のインデックスに従って、対応するオーディオおよびビデオファイルのネットワークアドレスを見つけます。
HLS:m3uファイルとm3u8ファイルはどちらも、Appleが使用するHLS(HTTP Live Streaming)形式の基礎であり、iPhoneやMacbookなどのデバイスで再生できます。-HLSオンデマンドは一般的なセグメント化されたHTTPオンデマンドです。つまり、ビデオストリームは異なるセグメントに分割され、クライアントは引き続きセグメントをダウンロードします。セグメント間のセグメント間隔が非常に短いため、完全な再生フロー
2.m3u8フォーマットの再生方法と再生方法
(1)M3U8ファイルの唯一の[リンク]があり、あなたはネイティブHLS再生やVLCプレーヤーのプラグインブラウザで遊ぶことができます
https://blog.csdn.net/saddyyun/article/details/85157709
ありはブラウザプラグインではありませんネイティブHLS再生アドレスボックスにm3u8のリンクを入力して、デフォルトでそのm3u8ファイルをダウンロードし、プラグインで再生します。
(2)m3u8 [ファイル]しか
ない場合は、「。local.index.m3u8」を使用しないように注意してください。使用しない場合は、別のコンピュータにショートカットをコピーするだけです。詳細については、(3)を参照してください。
また、ビデオがハングアップしても問題ありません。結局のところ、これはサーバーに保存されているファイルであり、許可しないとアクセスできません。
テキストファイルの形式で開きます。ローカル以外の* .tsディレクトリシーケンスの場合
は、「相対リンク」と呼ばれる「M3U8バッチダウンローダー」によって教えられたピットがまだあることに注意してください。
以下はm3u8フラグメントの傍受です
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-TARGETDURATION:3
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-ALLOW-CACHE:YES
#EXTINF:3.000,
/amplify_video/1228050294535282694/vid/0/3000/1280x720/_x6v6S8Jhz5tpqhM.ts
#EXTINF:3.000,
/amplify_video/1228050294535282694/vid/3000/6000/1280x720/7mwaVhHeIYdjPn48.ts
#EXTINF:3.000,
/amplify_video/1228050294535282694/vid/6000/9000/1280x720/-vhJ_5vdtWcl2Yjk.ts
その中のフラグメントがアドレスバーに直接コピーされていて見つからなかったのですが、アクセスできるのか、なぜダウンロードできないのでしょうか。トリッキーすぎるのは何ですか?
そこで、段落の1つ(下のリンク)を検索したところ、外国人には私が持っていない[プレフィックス]があることがわかりました。
https://superuser.com/questions/1033563/how-to-download-video-with-blob-url
↑それで、私は戻ってビデオをもう一度探しました、そしてそれが接頭辞を持っているのを見つけました、それが「相対リンク」がエラーを報告した理由です。次に、赤でマークされたセクションを追加し、リンクを合成しました
https://video.twimg.com/amplify_video/1228050294535282694/vid/6000/9000/1280x720/-vhJ_5vdtWcl2Yjk.ts
アドレスボックスに入力すると、ダウンロードできます!シングルクリップも再生できます!
その他の方法:Baiduをクリックして、特別なツールを使用します(多くの場合、Baidu自身)
(3)[m3u8ファイル]と[すべての* .tsファイルを含む(またはサフィックス名を含まない)フォルダー]がある場合、
この状況は通常、携帯電話からダウンロードする形式であり、qqブラウザーとUCこの形式のm3u8はプレイリストファイルで、通常は数十KBのサイズしか表示されませんが、通常のプレーヤーでは通常は再生できません。この形式のフォルダーはすべてキャッシュされているようですが、役に立たないようです(保存した動画を永久に保存することはできません同じ電話で移動しないでください...)
テキストエディタ(私はvscodeを使用)でm3u8ファイルを開くと、前に紹介した「インデックスアドレス」と一致するいくつかのタグとアドレスの大きなシーケンスが見つかります。
[From:https://www.jianshu.com/p/e97f6555a070]
タグの種類は、基本タグ、メディアセグメントタグ、メディアプレイリストタイプタグ、メインプレイリストタイプラベル、プレイリストタイプラベルの5種類に分類できます。具体的な内容は次のとおりです。
基本タグ:メディアプレイリストとマスタープレイリストの両方に適用できます。具体的なタグは次のとおりです
。EXTM3U:ファイルがm3u8ファイルであることを示します。各M3Uファイルは、このラベルを最初の行に配置する必要があります。
EXT-X-VERSION:HLSのプロトコルバージョン番号を示します。このラベルは、ストリーミングメディアの互換性に関連しています。ラベルはグローバルスコープ内にあり、m3u8ファイル全体を有効にします。各m3u8ファイルには最大で1つのラベル定義を表示できます。m3u8ファイルにこのタグが含まれていない場合、デフォルトでプロトコルの最初のバージョンになります。
…………(詳細はソースリンクを参照してください)…………
m3u8をテキストモードで開いたところ、ディレクトリのリストであることがわかりました。絶対ディレクトリが変更されて再生できなかったため、コンピュータにコピーされたと推定されます。vscodeで[編集]-> [置換]を使用してそれを現在の実際の場所に置き換えます。ディレクトリを保存して、再生できることがわかりました。!!
フォルダ内の[.Index.m3u8]と[.local.index.m3u8]は
、変更したm3u8ファイルをどこに置いても、[ネットワークインデックス]と[ローカルインデックス]に対応している必要があります。インデックス内部正しければ再生できます。(実際、tsは1つのクリップで再生することもできます。m3u8は「プレイリスト」に相当します。合成する場合は、バイナリメソッドを使用して接続します。詳細については、次の「マージする方法」を参照してください。ダウンロードしたm3u8形式を他の形式に変換します ")
成功しました!しかし、それは段落であり、各段落は[数秒]であり、[プレイリスト]の順序で再生されます(上の写真は[47段落の12番目の段落が再生されています。ファイル名は11.tsです)。 ])
。マージするには、「ダウンロードしたm3u8フォーマットをマージして他のフォーマットに変換する方法」のセクションまでスクロールダウンできます。
3. Webページでm3u8のソースをダウンロードし、他の形式で保存する方法
(1)M3U8ダウンローダー:M3U8ダウンローダー-Chromeプラグイン
(2)GetThemAll-Chromeプラグイン
このプラグインは、さまざまな王子のリソースを取得するために非常に簡単に使用できます。写真はzipにまとめてパッケージ化でき、ソースリンクはビデオ用にキャプチャすることもできます。[記録]も可能です。 m3u8ファイルに遭遇したときに実行-[記録の開始]をクリックします数秒後、MP4ファイルを保存するためのプロンプトがポップアップ表示されます(確認してください。一部しか記録されない場合があります)
4.ウェブページのビデオをm3u8形式で直接ダウンロードする方法
(1)一般的には携帯電話のビデオキャッシュです。これについては説明しません。ビデオの再生時にキャッシュの矢印が表示され、「キャッシュ」で検索されて再生されます。
(2)セグメント全体、ネットワーク設定を再生した後、キャッシュを確認します...またはf12などを探します。この段落は、後で追加されます...
5.ダウンロードしたm3u8形式を他の形式にマージして変換する方法(例としてMP4を取り上げます)
https://jingyan.baidu.com/article/00a07f380cd30f82d128dc4f.html
主要なコマンドラインは次のとおりです。
copy /b 0+1+2+3 new.ts
新しいテキストを作成し、対応するコンテンツを入力してから保存し、テキストドキュメントのサフィックスをbat形式に変更します。これを開いて、ディレクトリ内のtsファイルをバイナリ順にnew.tsファイルにマージします。
m3u8に従ってコンテンツのシーケンスを生成します(元のシーケンスを使用)
Baidu Experienceが提供する方法は、Excelを使用してテキストを集計してから合成することです。m3u8ファイルの「プレイリスト」を使用して、マージされたテキストを直接生成してみませんか?
┏(ΦωÜ)=☞来て、やってください。
↑最初にm3u8ファイルを開いたところ、各行の前のタグが異なるため、単純な検索置換が機能していないことがわかりました。正規表現を考えました(vscodeは正規一致検索をサポートしていますが、テキストドキュメントは適切ではありません...)
ありがとうございます。この男:正規表現は2つの特別なキャラクターの間の内容に一致します
匹配两个字符串A与B中间的字符串包含A与B:
表达式: A.*?B(“.“表示任意字符,“?”表示匹配0个或多个)
したがって、「#」と「、」の間のすべてのコンテンツを一致させるために、正規表現は次のように記述されます。
#.*?,
実行後、すべてがクリーンになります。
次に、長いプレフィックス検索を「+」に置き換え
ます。コマンドラインの改行は実行済みとして直接カウントされることに注意してください。改行文字を削除するには、それらを端から端まで接続する必要があります( startこれらのヘッダータグの削除)
このようにして、必要なフォームが生成されます。処理後、コピーしてコマンドラインの後ろに貼り付け、Enterキーを
押します。要約すると、一意のタグを削除し、プレフィックスを削除し、改行を削除します。。
実行:
特定のファイルからPowershellを呼び出す場合は、
最初にcmdと入力し、コマンドラインに変更します。そうしないと機能しません。[コマンドライン]と[ Powershell ]にはいくつかの違いがあり、同じツールとして使用することはできません。 。
次に、コマンドを入力し(インデックスをコピーするときにキャリッジリターンを貼り付けないでください。貼り付けないと、入力が完了したと見なされます)、実行します。
コンテンツの名前を変更した後、
別の方法は、過去に作成したリストに従ってファイルの名前を変更することです(ファイル名を変更します)。すべてを選択し、最初のファイルを右クリックして、名前を変更します。これは、現在の並べ替え順序に従って名前が付けられ、前に作成した長いリストを使用して、必要なセクションを中間インデックスとしてインターセプトします。
ツールを直接使用する方法もあります。
複数のtsをmp4形式にすばやく変換する方法-インストールは必要ありません
6.その他
インターネット上にはさまざまな「m3u8ビデオのダウンロードおよびマージツール」がありますが、ここでは紹介
しません。これらのツールの多くはFfmpegに基づいています:http://ffmpeg.org/