Xbox360が再生を拒否するビデオファイルは次のとおりです。
$ MP4Box -info video.mp4
* Movie Info *
Timescale 90000 - Duration 02:18:33.365
Fragmented File no - 2 track(s)
File Brand mp42 - version 0
Created: GMT Sat Jul 21 07:08:55 2012
File has root IOD (9 bytes)
Scene PL 0xff - Graphics PL 0xff - OD PL 0xff
Visual PL: ISO Reserved Profile (0x7f)
Audio PL: High Quality Audio Profile @ Level 2 (0x0f)
No streams included in root OD
iTunes Info:
Encoder Software: HandBrake 0.9.6 2012022800
Track # 1 Info - TrackID 1 - TimeScale 90000 - Duration 02:18:33.235
Media Info: Language "Undetermined" - Type "vide:avc1" - 199318 samples
Visual Track layout: x=0 y=0 width=1280 height=688
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size 1280 x 688
AVC Info: 1 SPS - 1 PPS - Profile High @ Level 4.1
NAL Unit length bits: 32
Self-synchronized
Track # 2 Info - TrackID 2 - TimeScale 48000 - Duration 02:18:33.365
Media Info: Language "English" - Type "soun:mp4a" - 389689 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
MPEG-4 Audio MPEG-4 Audio AAC LC - 6 Channel(s) - SampleRate 48000
Synchronized on stream 1
$ avconv -i video.mp4
avconv version 0.8.4-4:0.8.4-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav developers
built on Nov 6 2012 16:51:33 with gcc 4.6.3
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'video.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42isomavc1
creation_time : 2012-07-21 07:08:55
encoder : HandBrake 0.9.6 2012022800
Duration: 02:18:33.36, start: 0.000000, bitrate: 2299 kb/s
Stream #0.0(und): Video: h264 (High), yuv420p, 1280x688, 1973 kb/s, 23.98 fps, 90k tbr, 90k tbn, 180k tbc
Metadata:
creation_time : 2012-07-21 07:08:55
Stream #0.1(eng): Audio: aac, 48000 Hz, 5.1, s16, 319 kb/s
Metadata:
creation_time : 2012-07-21 07:08:55
At least one output file must be specified
このファイルをXbox360で再生できる形式にトランスコードするには、ffmpegやmencoderなどのどのツールを使用する必要がありますか?トランスコードプロセスで可能な限り優れたビデオ品質を維持したいと考えています。
Slhckの助けを借りて、オーディオを2チャンネルに変更した新しいmp4ファイルを作成することができました。ただし、Xbox360はまだ何らかの理由でそれを再生することを拒否します。 MP4Boxとffmpegが新しいファイルについて言っていることは次のとおりです。
$ MP4Box -info final.mp4
* Movie Info *
Timescale 1000 - Duration 02:18:33.343
Fragmented File no - 2 track(s)
File Brand isom - version 512
Created: GMT Sat Jul 21 07:08:55 2012
File has root IOD (9 bytes)
Scene PL 0xff - Graphics PL 0xff - OD PL 0xff
Visual PL: Not part of MPEG-4 Visual profiles (0xfe)
Audio PL: Not part of MPEG-4 audio profiles (0xfe)
No streams included in root OD
iTunes Info:
Encoder Software: Lavf53.21.0
Track # 1 Info - TrackID 1 - TimeScale 90000 - Duration 02:18:33.193
Media Info: Language "Undetermined" - Type "vide:avc1" - 199318 samples
Visual Track layout: x=0 y=0 width=1280 height=688
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size 1280 x 688
AVC Info: 1 SPS - 1 PPS - Profile High @ Level 4.1
NAL Unit length bits: 32
Self-synchronized
Track # 2 Info - TrackID 2 - TimeScale 48000 - Duration 02:18:33.343
Media Info: Language "Undetermined" - Type "soun:mp4a" - 389688 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
MPEG-4 Audio MPEG-4 Audio AAC LC - 2 Channel(s) - SampleRate 48000
Synchronized on stream 1
Alternate Group ID 1
$ avconv -i final.mp4
avconv version 0.8.4-4:0.8.4-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav developers
built on Nov 6 2012 16:51:33 with gcc 4.6.3
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'final.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
creation_time : 2012-07-21 07:08:55
encoder : Lavf53.21.0
Duration: 02:18:33.34, start: 0.000000, bitrate: 2161 kb/s
Stream #0.0(und): Video: h264 (High), yuv420p, 1280x688, 1973 kb/s, 23.98 fps, 90k tbr, 90k tbn, 180k tbc
Metadata:
creation_time : 2012-07-21 07:08:55
Stream #0.1(und): Audio: aac, 48000 Hz, stereo, s16, 180 kb/s
Metadata:
creation_time : 2012-07-21 07:08:55
At least one output file must be specified
Xboxエンジニアリングビデオ再生FAQ によると、h.264の要件は次のとおりです。
- ビデオプロファイル:ベースライン、メイン、およびハイ(レベル4.1まで)のプロファイル。
- ビデオビットレート:10 Mbps、解像度1920 x 1080、30fps。詳細については、質問番号11を参照してください。
- オーディオプロファイル:2チャンネルAAC低複雑度(LC)
- オーディオ最大ビットレート:制限なし。
これで、一般的なコマンドラインとして、これは機能するはずです。
ffmpeg -i input.mp4 -c:v libx264 -profile:v high -crf 23 -c:a libfaac -q:a 100 output.mp4
変更 -crf
および-q:a
品質を変えるためのパラメータ。 CRFが低いほど良いことを意味します。 23がデフォルトですが、18〜28のいずれかを選択して、品質が気に入ったかどうかを確認してください。 FAACのオーディオ品質はパーセント単位であるため、100%がデフォルトであり、高いほど良いことを意味します。
特定のケースでは、オーディオチャネルの数を除いて、すべての要件が満たされています。 5.1オーディオがあり、2.0ステレオに変換する必要があります。したがって、ビデオビットストリームをコピーし、 -ac
オプション :
ffmpeg -i input.mp4 -c:a libfaac -q:a 100 -ac 2 -c:v copy output.mp4
使用しているエンコーダーに応じて、強調表示されている部分を変更します。一部のFFmpegバージョンではFAACがバンドルされていない可能性があるため、組み込みのエンコーダーも使用できます。
ffmpeg -i input.mp4 -c:a aac -strict experimental -ac 2 -c:v copy output.mp4
FFmpegが6チャンネルオーディオを2チャンネルにダウンミックスできないというエラーが発生した場合は、生のオーディオを抽出してから、 [〜#〜] faad [〜#〜]でダウンサンプリングする必要があります。 ] 。
ffmpeg -i input.mp4 -c:a copy audio-6.aac
次に、PCMステレオWAVファイルにダウンサンプリングします。
faad -d -o audio-2.wav audio-6.aac
そしてそれをあなたが持っているビデオに戻します。これによりビデオが再エンコードされないため、元の品質が維持されますが、オーディオを再度エンコードする必要があります。 libfaac
がない場合は、aac
を使用した組み込みの代替方法について上記を参照してください。
ffmpeg -i input.mp4 -i audio-2.wav -c:v copy -c:a libfaac -map 0:0 -map 1:0 output.mp4
それでもビデオが再生されない場合は、すべてを再エンコードしてみてください。
元のポスターと同じことをしようとしています。なんらかの理由で、slhckの回答の指示を機能させることができませんでした。仕事用のラップトップにubuntuがあり、ffmpeg
がavconv
に置き換えられたためかもしれません。
とにかく長い話を短くするために、私はコマンドラインソリューションの使用をあきらめ、handbrake
をインストールし、Universal
プリセットを使用してファイルを変換しました。これにより、mp4
形式で正しくフォーマットされたファイルが生成されましたが、拡張子はm4v
になります。ファイルの名前を変更して、mp4
拡張子を付けます。それは同じことを意味しますが、xboxはそれを認識せず、拡張子がmp4
の場合にのみそれらを読み取ります。