veramente confuso con setPreviewCallback in Android, bisogno di consigli

Sto costruendo un'applicazione su Android per riprendere i fotogrammi dalla camera, elaborarli e visualizzare la cornice in una superficie visualizzata, oltre a disegnare il SurfaceView tramite la canvas e il disegno di disegno e tutto.

Solo per controllare, è SurfaceView e Bitmap e Canvases il modo migliore per farlo? Sto dopo la velocità.

  • come risolvere il problema di double precisione in java
  • Come aggiungere i dati a Google calendario in modo programmato in android?
  • Corretto modo per dare dati iniziali a frammenti?
  • Come analizzare correttamente Reddit API in Android
  • la geolocalizzazione di javascript su android non funziona
  • Ricevitore di trasmissione onReceive () non è mai stato chiamato
  • Supponendo che la risposta a quanto sopra è Sì, la domanda sarebbe: Dove posso mettere la seguente function?

    camera_object.setPreviewCallback(new PreviewCallback() public void onPreviewFrame(byte[] data, Camera camera){ 

    dovrei posizionarla in onCreate () o dovrei posizionarla in surfaceCreated () o surfaceChanged ()?

    Ho dichiarato la mia class di attività di sostentamento come segue:

     public class MainActivity extends Activity implements SurfaceHolder.Callback, Camera.PreviewCallback { 

    e in quella class Eclipse mi costringe a creare una function di override per onpreviewframe nella class MainActivity come segue

     public void onPreviewFrame(byte[] data, Camera camera){ } 

    ma non viene mai chiamato. Devo provare ad utilizzare questa function? è meglio utilizzarlo? o è solo una cosa Eclipse?

    si prega di avvisare

  • Vista Android-Video a Fullscreen
  • SwipeRefreshLayout + WebView quando la posizione di scorrimento è in cima
  • leggere i dati da sdcard in android
  • Android che riproduce musica in background
  • Come posso mostrare un MediaController durante la riproduzione di audio in Android?
  • salvare l'image selezionata dalla galleria per un utilizzo futuro
  • 2 Solutions collect form web for “veramente confuso con setPreviewCallback in Android, bisogno di consigli”

    Stai chiamando setPreviewDisplay () , startPreview () e setPreviewCallback (this) dall'applicazione? Senza questo, non riceverai chiamate su onPreviewFrame (). Infatti, se si utilizza SurfaceView, i buffer di anteprima di richiamata sono una copia dei buffer effettivi che vengono visualizzati sullo schermo. Quindi, se vuoi visualizzare questi buffer copiati, devi creare una nuova visualizzazione e sovrascriverla. Questo sarebbe inefficiente. Vorrei suggerire di utilizzare SurfaceTexture e utilizzare la callback 'onFrameAvailable' per get i fotogrammi e poi disegnare e visualizzare manualmente. Un esempio di questo può essere trovato nel codice PanoramaActivity dell'applicazione Android Camera di default.

    Senza camera_object.setPreviewDisplay(surface_holder); non è ansible ricevere le richieste della camera; non dimenticare anche

     surface_view.setVisibility(View.VISIBLE); surface_holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); 

    È ansible hide l'anteprima della telecamera sotto un'altra visuale; su 3.0 e più alto è anche ansible spingere la superficie fuori dalla schermata (visualizzarla sotto la parte inferiore dello schermo). Non sono sicuro se quest'ultimo trucco funziona in 2.3.6.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.