Ho trovato che il video registrato in modalità verticale ruoterà di 90 gradi. Così ho usato il seguente codice per ruotarlo quando si imposta il mediaRecorder:Il video registrato è ruotato di 90 gradi dopo il caricamento su Internet
if (this.getResources().getConfiguration().orientation !=Configuration.ORIENTATION_LANDSCAPE)
{
mediaRecorder.setOrientationHint(270);
}
else
{
mediaRecorder.setOrientationHint(0);
}
mediaRecorder.setOutputFile(file_name);
mediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.DEFAULT);
mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT);
L'anteprima è anche nel giusto orientamento quando ho usato il seguente codice nel metodo surfaceCreated:
Camera.Parameters params = camera.getParameters();
if (this.getResources().getConfiguration().orientation
!=Configuration.ORIENTATION_LANDSCAPE)
{
camera.setDisplayOrientation(90);
}
else
{
camera.setDisplayOrientation(0);
}
params.setRotation(90);
camera.setParameters(params);
In questo modo, il video registrato è orientato correttamente quando viene riprodotto sul dispositivo. Tuttavia, il video è ancora ruotato di 90 gradi dopo il caricamento su Internet. Qualcuno ha consigli su questo? Molte grazie.
Hai trovato una soluzione per il tuo problema? –
@LazyNinja, immagino di no, devo inviare le immagini ruotate e cambiarle in un secondo momento ... – Iam619
Grazie per la risposta. Stavo affrontando lo stesso problema e volevo capire come risolverlo @ lam619 –