我们希望创建一个可以在所有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)我认为这是完全错误的。他们显然对安卓一无所知,只是提出了一些在iOS上对他们有用的东西。.Mov文件根本不会在安卓上播放。
我认为这是通用的格式,特别是“将在Android上播放”:
container format = .mp4 (MPEG4)
codec = "H.263",
audio codec = AAC-LC任何有Android视频实践经验的人能在这方面提供指导吗?谢谢你,彼得
发布于 2013-05-08 04:57:27
有相当多的细节这里和这里。
摘要:
发布于 2013-05-08 04:09:36
1280 * 720对于任何android设备来说都是一个很大的解决方案,它不会在所有的设备上工作.我使用640*480,它在所有我会检查的设备上工作。这是我的密码
this.mediaRecorder =新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();
}}
https://stackoverflow.com/questions/16432142
复制相似问题