私のウェブアプリケーションでは、iPhoneとAndroidの携帯電話でビデオをアップロードでき、携帯電話とデスクトップの両方のブラウザで再生できます。特定のアンドロイドによってアップロードされた動画がHTML5のGoogle Chromeブラウザで再生されない
しかし、一部のアンドロイド携帯電話は動画をアップロードしますが、正しくアップロードされているように見えますが、どこでも再生できません。
私はそれを調べて違いを見つけました。特定の電話機は、コーデック「MPEG-4、AAC」を含むビデオファイルをアップロードし、他の電話機は「H.264、AAC」をアップロードする。
私は現在、ビデオを再生するためにReactJsとhtml5ビデオタグを使用しています。動画タグのオプションで解決する方法はないようです。
ここでは、デバイスや写真の情報があります。あなたの左側に、ASUS電話機はMPEG-4ビデオコーデックを持つビデオをアップロードし、再生しません。
右側に、H.264コーデックを持つギャラクシーの携帯電話のビデオが再生されます。
どちらの動画も同じ形式のmp4です。
-
追加情報はあなたを助けるかもしれないが、あなたがそのビデオをダウンロードし、デスクトップブラウザからアップロードしていても、それは同様に再生されないということです。あなたが解決策を知っていれば、感謝します。ありがとう。
MPEG-4はコーデックではないため、コンテナです。コンテナ内の実際のコーデックが問題になることがあります(サンプルビデオを共有したり、ffprobeなどの出力を確認できます)。非対応のビデオをサーバー上のH264/aacにトランスコードする必要があるかもしれません(例えば 'ffmepg'を使用)。 – Offbeatmammal
MPEG 4はコンテナではありません。カテゴリです。 MPEG 4コンテナがありますが、MPEG 4コーデックもあります。 AVCはMPEG 4コーデックです。しかし、aacとh.263のバリエーションもそうです。あなたはWikipediaのページを見てください。 mpeg4として単純に拒否されるコーデックがあり、ブラウザではサポートされていません。 – szatmary
ありがとう、私はあなたの答えに感謝します。どちらの場合でも、MPEG-4はコンテナまたはカテゴリであるため、ブラウザで拒否されないように互換性のあるフォーマットに変換する必要があります。 –