12

私のアプリはアップルによって拒否され、彼らは理由を与えます

アプリは、ベースラインストリームが64kbpsのHTTPライブストリーミングプロトコルを使用してストリーミングビデオをブロードキャストしていないことがわかりました

次に、解決策を検索します。インターネットを介して、すべての解決策は、ライブストリーミングに.U8F8および.ts拡張子を使用する必要があることを示唆していますが、私のアプリはmp4形式です。私はすでにMPMoviePlayerControllerストリーミングに使用しました。

だから私の質問は:

  1. mp4ビデオをM8U8に変換する必要がありますか?
  2. 使用する必要がありますMPMoviePlayerか?
  3. 実行時にmp4ビデオをM8U8形式に変換できますか?ライブストリーミングを実装する方法
  4. HTTPライブストリーミングに利用できるサンプルコードはありますか?

前もって感謝します。

4

3 に答える 3

11

ライブストリーミングではなく、事前に録画されたビデオにのみコメントできます...

mp4ビデオをM8U8に変換する必要がありますか?

.m3u8という意味だと思います。基本的に、.mp4ファイルを取得する必要があります。

  1. モバイル帯域幅の使いやすいビットレートにエンコードします。これにはAppleのCompressor*アプリを使用できます。これには、HTTPライブストリーミング用のプリセットがあります。遊んでいる場合は、1000kbps前後のものを選んでください。

  2. Appleのmediafilesegmenterを使用して出力をスライスします。たくさんの小さな.tsファイルとそれらをリストするマニフェスト(.m3u8)ができあがります。

  3. プレーヤーの.m3u8ファイル(initWithContentURL ...)を押すと、オフになります。

  4. 上記の手順1と2を繰り返し、異なる帯域幅を指定します。Compressorのプリセットに行きました。

  5. 帯域幅ごとに1つずつ、異なるバージョンのビデオが作成されます。Appleのvariantplaylistcreatorツールを使用して、プレーヤーが各帯域幅を指すようにするマスタープレイリストファイルを作成し、自動的に切り替えます。

  6. すべての.tsファイルと.m3u8ファイルをネットに貼り付け、mediastreamvalidatorツールを使用して、マスタープレイリストファイルに問題がなく、各バージョンを正しく指していることを確認します。

これが最初に再生されるバージョンであるため、マスタープレイリストファイルで適切な品質のビットレートが最初にあることを確認してください。私たちは1000kbpsのマークのあたりで何かを探しました。

MPMoviePlayerを使用する必要がありますか?

他のライブラリについてコメントすることはできません。MPMoviePlayerを使用しました。

実行時にmp4ビデオをM8U8形式に変換できますか?ライブストリーミングを実装する方法

ライブストリームの場合も可能ですが、事前に録画されたビデオの場合は、すべて前に実行してください。すべてのファイルをオンラインにし、プレイリスト(.m3u8)を検証し、マスター.m3u8ファイルを使用してビデオを再生します。

HTTPライブストリーミングに利用できるサンプルコードはありますか?

私たちの実装では、iOSのクライアントがすべての作業を行います(たとえば、使用可能な帯域幅に応じてストリームを切り替えます)。そのため、すべてのファイルが適切な場所にあることを事前に確認する必要があります。

Compressor- https ://www.apple.com/final-cut-pro/compressor/Appleデベロッパネットワークサイトからダウンロードできるmediafilesegmenterおよびmediastreamvalidatorツールのコマンドラインツール。

これらの記事には、知っておく必要のあるすべてが含まれています:https: //developer.apple.com/library/archive/documentation/NetworkingInternet/Conceptual/StreamingMediaGuide/Introduction/Introduction.html https://developer.apple.com/library/archive/ technotes / tn2288 / _index.html#// apple_ref / doc / uid / DTS40012238

これをSafariで開きます: https ://developer.apple.com/streaming/examples/advanced-stream.html-各「Gear」は異なるビットレートストリームです

マスタープレイリストファイルの例については、テキストエディターでこの.m3u8ファイルをクラックして開きます:https ://devimages.apple.com.edgekey.net/resources/http-streaming/examples/bipbop_16x9/bipbop_16x9_variant.m3u8

于 2012-10-14T13:57:29.153 に答える
2

MP4ファイルの長さが10分を超える場合は、HLSを使用してファイルをストリーミングする必要があります。
ライブストリームの場合、次のようなソフトウェアを使用してライブでエンコードできます: http ://www.mcommstv.com/products/mcomms-transcode

VoDファイルの場合は、お気に入りのH.264/AACエンコーダーで事前にエンコードします。

64kbpsを含む、ファイルの複数のビットレートバージョンを含めることを忘れないでください。64kbpsストリームを含めない場合、Appleはアプリを拒否します。通常使用するもの:64k 120k 240k 480k 800kbps 1200kbpsマルチレートm3u8ファイルで最初にリストしたビットレートは最初の30秒間再生され、中程度のビットレートを最初に配置して、ユーザーがオンのときにストリーミングを開始するのに時間がかかりすぎないようにします。遅い3Gネットワ​​ーク。次に例を示します。

#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=120000
120k/Playlist.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=60000
60k/Playlist.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=240000
240k/Playlist.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=480000
480k/Playlist.m3u8
于 2012-11-01T06:27:07.877 に答える
1

オーディオファイルをm3U8形式に変換する必要があります。

実行時にプラグインが見つかりませんでした。ほとんど検索しませんでした。

ビデオタグを使用して、このURLをHTML5でプライできます。オンデマンドビデオもアップロードできます。

于 2013-03-08T07:12:05.513 に答える