【发布时间】:2017-01-18 07:17:15
【问题描述】:
我正在开发一个需要视频捕获的应用程序。
一切正常,例如:
- 打开摄像头进行视频录制。
- 视频正在录制 20 秒。
- 视频预览和一切。
问题:
问题是当我开始视频录制时,相机应用程序会在 20 秒后停止视频录制(这是正确的),但用户仅在 20 秒后收到“已达到最长录制时间”的通知。
在录制时它正在显示:
(记录时间)/(可记录的总时间)。
我想要什么:
我想显示用户(剩余时间)/(20 秒)。
这是我的代码:
public class MainActivity extends AppCompatActivity {
private static final int REQUEST_VIDEO_CAPTURE = 1;
private static final int MAXIMUM_VIDEO_RECORDING_LIMIT = 20;
private static final int VIDEO_RECORDING_QUALITY = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
dispatchTakeVideoIntent();
}
private void dispatchTakeVideoIntent() {
Intent takeVideoIntent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
takeVideoIntent.putExtra(MediaStore.EXTRA_DURATION_LIMIT, MAXIMUM_VIDEO_RECORDING_LIMIT);
takeVideoIntent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, VIDEO_RECORDING_QUALITY);
if (takeVideoIntent.resolveActivity(getPackageManager()) != null) {
startActivityForResult(takeVideoIntent, REQUEST_VIDEO_CAPTURE);
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUEST_VIDEO_CAPTURE && resultCode == RESULT_OK) {
Uri file = data.getData();
}
}
}
如何实现,请帮忙。
【问题讨论】:
-
您想根据您的 sd 卡内存或像 snapchat 一样显示剩余时间以允许用户仅录制 10 或 20 秒的视频?
-
@Naitik:我想让用户只录制 20 秒的视频。
标签: android video android-intent camera