mp4parser を使用してメタデータ情報を書き込もうとしていますが、私のコードでは、Android でキャプチャされたビデオの場合は userDataBox Empty を取得していますが、他のビデオ (ダウンロードしたビデオでテストしました) の場合は空ではなく、メタデータが正常に追加されました。私の問題は、空のユーザーデータボックスを持つアンドロイドによってキャプチャされたビデオです。体は私を助けることができますか?
moov.getBoxes(UserDataBox.class).size()
私のコードはここにあります:
File mediaStorageDir = new File(
Environment
.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM),
"MYFOLDER");
File f = new File(mediaStorageDir, "VID.mp4");
if(f.exists())
{
Toast.makeText(MainActivity.this," file found",Toast.LENGTH_SHORT).show();
}
try {
fc = new FileInputStream(f).getChannel();
// fc = new FileInputStream(f).getChannel();
isoFile = new IsoFile(fc);
String str = f.getAbsolutePath();
MovieBox moov = isoFile.getMovieBox();
// for (Box box : moov.getBoxes()) {
// System.out.println("box" + box);
// }
if(moov.getBoxes(UserDataBox.class).size()>0)
{
UserDataBox udta = moov.getBoxes(UserDataBox.class).get(0);
}else{
}