問題タブ [mp4box]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
batch-file - コマンドライン MP4Box から字幕を追加する
MP4Box を使用してビデオに字幕ファイルを追加しています。次のコマンドは、コマンド ラインから完全に機能します。
ただし、実際にやりたいことは、コマンドを .bat ファイルに入れることです。以下は、バッチ ファイル内の私のコマンドです。
ご覧のとおり、「-add c:/test.m4v#video -add c:/test_en.srt:hdlr=sbtl:lang=en:group=2:layer=-1」を 4 番目として渡そうとしています。パラメータ。これを行いたい理由は、多くの字幕ファイルが追加されている可能性があるためです。
"-c:/test.m4v#video を追加 -c:/test_en.srt:hdlr=sbtl:lang=en:group=2:layer=-1 を追加 -c:/test.m4v#video を追加 -c: を追加/test_ja.srt:hdlr=sbtl:lang=ja:group=2:layer=-1:無効"
そのため、必要な -add コマンドの数が事前にわからないので、それらすべてを 1 つのパラメーターとして渡したいだけです。しかし、mp4box はこれを好みません。
これが mp4box の制限なのか、一般的なバッチ ファイル パラメータの制限なのかはわかりません。
mp4 - MP4Box MP4 連結が機能しない
Udacity から講義を mp4 形式でダウンロードしますが、多くの場合、2 ~ 5 分のチャンクに分割されます。AnyVideo Converter を使用して、Windows で成功した各講義のビデオを 1 つの連続したストリームに結合したいと考えています。私はUbuntu 15で同じことをしようとしています.Web検索結果のほとんどはMP4Boxを示唆しています.MP4Boxのドキュメントと私が見つけることができるすべてのオンライン例は、次の構文を提供します:
これにより、オーディオが機能する新しいファイルが作成されますが、ビデオは機能しません。Ubuntu のネイティブ ビデオ プレーヤーで開くと、「ストリームの終了前にデコードされた有効なフレームがありません」というエラーが表示されます。VLC で開くと、「コーデックがサポートされていません: VLC はフォーマット 'avc3' をデコードできませんでした (このコーデックの説明はありません)」というエラーが表示されます。-keepsys
スイッチも使用してみましたが、同じ結果が得られます。
すべてのドキュメントとオンライン ディスカッションは、私がやろうとしていることは非常に単純であり、単純であるべきであるかのように聞こえますが、発生している特定のエラーに関連する情報を見つけることができないようです。私は何が欠けていますか?
shell - MP4Box シェル スクリプトが機能しない
MP4Box を使用して、ディレクトリ内の複数の .mp4 ファイルを連結しようとしています。簡単な形式の基本的なコマンドは次のようになります。
このスクリプトを作成しましたが、機能しません:
それはただ与える:
私の表現の何が問題になっていますか?
私は解決しました:
ffmpeg - MPEG-DASH 初期化セグメントの作成
HLS と MPEG Dash 間の変換を検討しています。元の完全に連結されたビデオ ファイルにはアクセスせず、個々の HLS セグメントのみにアクセスします。
この MPEG Dash への変換を行うには、Dash マニフェスト .mpd ファイルの初期化セグメントを指定する必要があります。
私の質問は次のとおりです。
- Dash ビデオ初期化セグメントの構造は何ですか?
- 元の完全なファイルを必要とせずに生成/作成するにはどうすればよいですか?
おそらく解決策にはMP4Box
、「.ts」HLS セグメントを自己初期化するダッシュ「.m4s」セグメントに変換することが含まれますが、これについてどうすればよいかわかりませんか?
どんなアイデアでも大歓迎です。
どうもありがとう。
更新: 元の hls セグメントを使用してストリーミングするためのスニペット。ビデオは最後まで再生されますが、真っ黒です。
ffmpeg - MP4Box (MPEG DASH) を使用して作成された、さまざまなオーディオおよびビデオ セグメントの単一のマニフェスト ファイル
3つの質問があります
1) dash.js は、単一のセグメントに多重化されたオーディオとビデオのコンテンツをサポートしていますか?
2) MP4Box を使用して作成された audio.mpd と video.mpd を単一の out.mpd にマージする方法がない場合、それは dash.js プレーヤーでサポートされていますか?
3) AdaptationSet を audio.mpd から手動でコピーして video.mpd に配置し、dash.js を使用して video.mpd を再生すると機能します。それを自動化する方法は?
dash.js - dash.js で audio.mpd と video.mpd を一緒に再生する
MPEG DASH ストリーミングの場合、次のコマンドを使用して生成された video.mp4 ファイル用に audio.mpd と video.mpd を別々に用意しました。
各 mpd は、dash.js で個別に再生されます。dash.js を使用して一緒にプレイすることは可能ですか?
または、MP4Box を使用して両方をマージする方法はありますか?
video - MP4Box は init と segment-name の両方を設定しますか?
セグメント名を次のように指定したい:
そして私の初期化ファイルとして$RepresentationID$/play.mp4
私はこれらを試しました:
これによりセグメントが生成されます(初期値はsegment_.m4sになります)
initファイルの名前をinit.mp4に変更したいと考えました
によると:
https://gpac.wp.mines-telecom.fr/mp4box/dash/
$Init=play.mp4$ を次のように使用できます
しかし、セグメントの名前は 1-118 だけです
mp4box -h dash と入力しても、これらの組み合わせに関する情報はありません。
私が達成したいのは、play.mp4 と、フォルダー video_hd 内のセグメント segment_%d.m4s です。
セグメンテーションはすでにうまく機能しているので、私はそれについての助けを必要としませんが、segment_.m4s と呼ばれる init ファイルはちょっと見苦しいと思います
私はこれに長い間苦労してきました、事前に感謝します!