0

jcodec ライブラリを使用して画像からビデオを作成しようとしていますが、 sequenceEncoder.encodeImage(bitmap)でエラーが表示されます。

エンコーディング用の私のコードは:-

class EncodeImages extends AsyncTask<File, Integer, Integer>{

        @Override
        protected Integer doInBackground(File... params) {
            SequenceEncoder sequenceEncoder;

            try {
                sequenceEncoder = new SequenceEncoder(new File(params[0].getParentFile(),"Frames Video.mp4"));

                for (int i = 0; !flag; i++) {
                    File imagesFile = new File(params[0].getParentFile(), String.format(params[0].getName(), i));

                    if(!imagesFile.exists()){
                        break;
                    }
                    Bitmap bitmap = BitmapFactory.decodeFile(imagesFile.getAbsolutePath());

                    sequenceEncoder.encodeImage(bitmap);

                    publishProgress(i);

                }

                sequenceEncoder.finish();
            } catch (IOException e) {
                e.printStackTrace();
            }

            return null;
        }

    }

しかし、行 - sequenceEncoder.encodeImage(bitmap); 次のエラーが表示されます:-

この行に複数のマーカー - タイプ java.awt.image.BufferedImage を解決できません。必要な .class ファイルから間接的に参照されています... - タイプ SequenceEncoder のメソッド encodeImage(BufferedImage) は、欠落しているタイプ BufferedImage を参照しています...

ビルドパスを構成するように求めています。私はすべてのように試しましたが、無駄でした。次は何をすればいいの???

4

1 に答える 1

2

java.awtクラスは Android には存在しません。ビデオ エンコーディング用にJavaCVを試すか、2013 年 9 月 14 日に jcodec が追加された Android バージョンを参照してください。https://github.com/jcodec/jcodecから Android バージョンをダウンロードし、プロジェクトに追加する必要があります。

于 2014-08-25T12:17:59.447 に答える