0

すべての Android デバイスで再生できるビデオを作成したいと考えています。ほぼすべての Android デバイスで再生できるようにするには、動画の形式をどのように指定すればよいでしょうか?

私たちが協力している制作会社は、次のことを提案しています。

Container = QuickTime Movie
Frame Size = 1280 x 720
Frame Rate = 30 fps
Codec = ProRes HQ (if alpha channel is needed, use ProRes 4444) 
Audio = PCM - 48khz, 16bit (if needed)

それは完全に間違っていると思います。彼らは明らかに Android について何も知らず、iOS でうまくいったことを提案しているだけです。.Mov ファイルは Android ではまったく再生されません。

これは、具体的には「Androidで再生される」など、普遍的な形式だと思います。

container format = .mp4 (MPEG4) 
codec =  "H.263", 
audio codec = AAC-LC

Android でのビデオの実際の経験がある人なら誰でも、これに関するガイダンスを提供できますか? ありがとう、ピーター

4

2 に答える 2

1

ここここにかなりの詳細があります。

概要:

  • H.264 ベースライン プロファイル、480 x 360 ピクセル、30 fps、500 Kbps
  • AAC-LC、ステレオ、128Kbps
于 2013-05-08T04:57:27.637 に答える
1

1280 * 720 は、任意の Android デバイスの大きな解像度であり、すべてのデバイスで機能するとは限りません...私は 640*480 を使用し、チェックするすべてのデバイスで機能します..ここに私のコードがあります

this.mediaRecorder = new MediaRecorder(); this.mediaRecorder.setCamera(this.camera);

this.mediaRecorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER);
this.mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
this.mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT);


this.mediaRecorder.setMaxDuration(10000);


this.mediaRecorder.setOutputFile(this.initFile().getAbsolutePath());
this.mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT);
this.mediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);
 this.mediaRecorder.setVideoSize(640,480); 
 this.mediaRecorder.setVideoFrameRate(12); 





try {
    this.mediaRecorder.setPreviewDisplay(this.cameraPreview.getHolder().getSurface());
    this.mediaRecorder.prepare();




    // start the actual recording
    // throws IllegalStateException if not prepared
    this.mediaRecorder.start();
    Toast.makeText(this, R.string.recording, Toast.LENGTH_SHORT).show();
    // enable the stop button by indicating that we are recording
    this.toggleButtons(true);
} catch (Exception e) {
    Log.wtf(TAG, "Failed to prepare MediaRecorder", e);
    Toast.makeText(this,"record nathi thatu...", Toast.LENGTH_SHORT).show();
    this.releaseMediaRecorder();
}

}

于 2013-05-08T04:09:36.970 に答える