2012-11-30 27 views
6

Chcę przekonwertować obrazy sdcard na wideo w Android.After wielu wyszukiwania znalazłem, że jest to możliwe w javacv.when próbuję prosty przykład javacv w czystej java, jego działa idealnie w moim eclipse.but kiedy zmieniam się w android, ta sama próbka nie działa w pobieraniu android.i i dodaje wszystkie pliki .jar, a pliki .so w projekcie myproject-> libs/armeabi folder.my nie wyświetlają żadnych błędów. Błędy wystąpiły w środowisku wykonawczym.jak przekonwertować obrazy na wideo w Androidzie za pomocą javacv?

próbuję z tej klasy,

package com.example.ndkfoo_sample; 

import static com.googlecode.javacv.cpp.opencv_core.cvReleaseImage; 
import static com.googlecode.javacv.cpp.opencv_highgui.cvLoadImage; 
import static com.googlecode.javacv.cpp.opencv_highgui.cvShowImage; 
import static com.googlecode.javacv.cpp.opencv_highgui.cvWaitKey; 
import static com.googlecode.javacv.cpp.opencv_imgproc.CV_GAUSSIAN; 
import static com.googlecode.javacv.cpp.opencv_imgproc.cvSmooth; 

import com.googlecode.javacv.cpp.opencv_core.IplImage; 

import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 

public class MainActivity extends Activity { 

// @Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
IplImage img=cvLoadImage("helloworld.jpg"); 

    cvShowImage("/mnt/sdcard/helloworld",img); 
    cvSmooth(img,img,CV_GAUSSIAN,13); 
    cvShowImage("Blur-Image",img); 
    cvWaitKey(); 
    cvReleaseImage(img); 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    getMenuInflater().inflate(R.menu.activity_main, menu); 
    return true; 
} 
} 

Mój błąd jest podobny jak

opencv error unspecified error. 

Moje pytanie brzmi, jak zintegrować OpenCV/javacv w android.is istnieje jakiś kroków lub tutoriale.?

dziękuję,

+0

Jaki jest błąd? – Osiris

+0

Czy możesz podać kod, aby uzyskać więcej wskazówek, ponieważ mam ten sam problem. – jack

+0

Czy możesz mi podać listę słoików używanych w projekcie dla javacv? Używam Androida Studio, więc wszystko jest dla mnie nowe. – San

Odpowiedz

8

Użyj następujących wierszy.

**

opencv_core.IplImage img = cvLoadImage("/sdcard/folder/img1.jpg"); 
FFmpegFrameRecorder recorder = new FFmpegFrameRecorder("/sdcard/folder/test.mpeg",200,150); 

    try { 
     recorder.setCodecID(CODEC_ID_MPEG1VIDEO); 
     recorder.setFrameRate(30); 
     recorder.setPixelFormat( PIX_FMT_YUV420P); 
     recorder.start(); 

     for (int i=0;i<100;i++) 
     { 
      recorder.record(image[x]); 
     } 
     recorder.stop(); 
    } 
    catch (Exception e){ 
     e.printStackTrace(); 
    } 

** ten jest obsługiwany przez bibliotekę javacv. aby uzyskać więcej informacji przeczytaj plik Readme.txt Javacv. Mam nadzieję, że to ci pomoże.

+0

zrobiłeś wideo ze zdjęć bez zielonego koloru? – rams

+0

no..i nie mam poprawnego wideo .. – itsrajesh4uguys

+1

cześć wypróbowana twoja answer.i dostaję błąd w tej linii, recorder.setCodecID (CODEC_ID_MPEG1VIDEO); błąd: CODEC_ID_MPEG1VIDEO nie może zostać rozdzielone na zmienną. – rams

Powiązane problemy