Registrare un video

10 ottobre 2014

Dopo aver imparato a scattare una foto ed importarla nel progetto come Bitmap, è arrivato il momento di sfruttare la caratteristica “gemella”: la registrazione di un video.

L’approccio è il medesimo del capitolo precedente ed i concetti di punta sono gli stessi. Li riassumiamo:

  • l’attivazione del software di sistema per la realizzazione di video viene invocato mediante un action impostata all’interno del MediaStore, un ContentProvider di sistema;
  • l’Intent per il lancio dell’action sarà inoltrato con il metodo startActivityForResult;
  • dopo la registrazione del video, verrà eseguito il metodo onActivityResult, grazie al quale potremo sfruttare i risultati.

Le righe seguenti inviano l’Intent per l’apertura del software della videocamera di sistema:

Intent videoIntent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
startActivityForResult(videoIntent, VIDEO_REQUEST_CODE);

Queste istruzioni possono essere inserite in qualunque punto dell’Activity. Tipicamente verranno collocate in un metodo che gestisce, ad esempio, il click di un pulsante. La costante VIDEO_REQUEST_CODE è di tipo int ed è stata definita nell’Activity per riconoscere con un ID l’invocazione.

Il codice che segue mostra il metodo onActivityResult, utile per gestire il ritorno del controllo all’Activity, subito dopo aver girato il video.

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{
	super.onActivityResult(requestCode, resultCode, data);
	if (VIDEO_REQUEST_CODE == requestCode)
	{
		Uri videoUri = data.getData();
		video.setVideoURI(videoUri);
		video.start();
	}
}

Nell’esempio precedente si vede come è stato utilizzato il codice di richiesta VIDEO_REQUEST_CODE, e chiaramente a questo punto si potrebbe svolgere qualunque operazione. In questo caso specifico si è scelto di avviare direttamente la riproduzione del video.

Si noti che è stato utilizzato un controllo VideoView, una tipologia di View che permette di riprodurre un video di cui si è passato un riferimento tramite il metodo setVideoURI. Tale riferimento viene recuperato, sotto forma di URI, dai dati di ritorno dell’Intent.

Tutte le lezioni

1 ... 47 48 49 ... 82

Se vuoi aggiornamenti su Registrare un video inserisci la tua e-mail nel box qui sotto:
Tags:
 
X
Se vuoi aggiornamenti su Registrare un video

inserisci la tua e-mail nel box qui sotto:

Ho letto e acconsento l'informativa sulla privacy

Acconsento al trattamento di cui al punto 3 dell'informativa sulla privacy