コマンドを実行したいのですが、ffmpeg
使用しているメソッドは、フィルター(-vf)パラメーターを設定するための二重引用符を含む次のコマンドを除いて、リストのすべてのコマンドで機能します
ffmpeg -i 2012-12-27.mp4 -vf "movie=bb.png [movie]; [in] [movie] overlay=0:0 [out]" -vcodec libx264 -acodec copy out.mp4
運が悪かったので、一重引用符の引用符を変更してみました。このコマンドは、一重引用符と二重引用符の両方を使用してAndroid端末で機能します。
私が開発しているアプリは約5つffmpeg
のコマンドを使用していますが、これ以外はすべて機能しますが、これはバグですか?
この問題の具体的な解決策を見つけることができません。引数を配列に分割してからruntime().exec()
、他の場所で提案されているようにこれを渡すことは機能しないようです。または、単に「」で引用符をエスケープしようとしても機能しません。
上記のコマンドで参照されているファイルは両方ともSDカードにあります。ファイルへのフルパスを参照するときにこれらのコマンドがターミナルで機能するので、コマンドの連結を削除して混乱しないようにしました。文字列ビルダーと`getexternalstorageDirectory()。getabsolutepath()を使用してgetRuntime()。exec()に渡された文字列を結合し、プロセスクラスを使用するときに以前のコマンドで行っていたように各ファイルへのパスを取得します。
重要な場合に備えて、JellyBean4.2を使用しています。