Android 在压缩视频时出现非法状态异常;dequeueOutputBuffer();
我也检查了一些或更多类似的问题,但没有一个得到满意的回答 我的要求是压缩视频约1-2分钟。 我的应用程序中的视频大小限制为500 MB,持续时间限制为4分钟 命令,我试过- -i/storage/sdcard0/Videos/Lat_test.mp4-r 20-vcodec mpeg4-preset ultrafast-c:a copy-tune-fastdecode-strict-2-b:v 150k /存储/sdcard0/Videos/output.mp4 -y-i/storage/sdcard0/Videos/test3.mp4-crf 24-vcodec mpeg4-preset ultrafast-c:a copy-me_方法零-调谐快速解码-调谐零延迟 -严格-2-b:v 1000k-pix_fmt yuv420p/storage/sdcard0/Videos/output.mp4 还有一些提到 1) (使用MediaCodec而不是FFMPEG的) (二) 当尝试使用三星Galaxy Grand GT-i9082版本5.0.1(根目录)时,失败了,错误如下-Android 在压缩视频时出现非法状态异常;dequeueOutputBuffer();,android,ffmpeg,video-compression,android-mediacodec,Android,Ffmpeg,Video Compression,Android Mediacodec,我也检查了一些或更多类似的问题,但没有一个得到满意的回答 我的要求是压缩视频约1-2分钟。 我的应用程序中的视频大小限制为500 MB,持续时间限制为4分钟 命令,我试过- -i/storage/sdcard0/Videos/Lat_test.mp4-r 20-vcodec mpeg4-preset ultrafast-c:a copy-tune-fastdecode-strict-2-b:v 150k /存储/sdcard0/Videos/output.mp4 -y-i/storage/sdc
> java.lang.IllegalStateException
> at android.media.MediaCodec.native_dequeueOutputBuffer(Native Method)
> at android.media.MediaCodec.dequeueOutputBuffer(MediaCodec.java:1033)
> at com.iceteck.silicompressorr.videocompression.MediaController.convertVideo(MediaController.java:491)
> at com.iceteck.silicompressorr.SiliCompressor.compressVideo(SiliCompressor.java:300)
> at com.iceteck.silicompressor.SelectPictureActivity$VideoCompressAsyncTask.doInBackground(SelectPictureActivity.java:379)
> at com.iceteck.silicompressor.SelectPictureActivity$VideoCompressAsyncTask.doInBackground(SelectPictureActivity.java:358)
> at android.os.AsyncTask$2.call(AsyncTask.java:288)
> at java.util.concurrent.FutureTask.run(FutureTask.java:237)
> at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
> at java.lang.Thread.run(Thread.java:818)
请建议如何解决此问题
或如果可能,请建议其他更好的视频压缩方法/示例/参考
我尝试过使用FFMPEG和MediaCodec的各种视频压缩示例,但没有一个工作得很好。有几个非常慢。rest在一些设备上失败了。我试着让它有点针对性。为什么它现在很广泛?我编辑这篇文章是为了让它更具体。请尝试帮助,而不是犹豫。我对这个问题非常厌倦。尝试了很多可用的FFMPEG示例以及MediaCodec,但仍然没有成功。