当前位置: 首页 > 面试题库 >

Android:将RawFile复制到Sdcard(视频mp4)

陶山
2023-03-14
问题内容

此代码有什么问题?
我在项目中有一个Raw文件(mp4视频文件),
当我这样做时,然后我从SDcard文件获取的文件不相同,因此无法加载视频:(
您是否有另一种自动将原始文件复制到的方法sdcard?
谢谢

String FICHIER_BLOW = "blowvid4.mp4";
File f=new File(Environment.getExternalStorageDirectory(), FICHIER_BLOW);
try {
    if (f.createNewFile()){
    FileWriter ecrivain = new FileWriter(f);
    BufferedWriter bufEcrivain = new BufferedWriter(ecrivain);
    BufferedInputStream VideoReader = new BufferedInputStream(getResources().openRawResource(R.raw.blow));
    while( VideoReader.available() > 0 ){
        bufEcrivain.write(VideoReader.read());
    }
    bufEcrivain.close();

    VideoView videoView = (VideoView) findViewById(R.id.VideoView);
    MediaController mediaController = new MediaController(this);
    mediaController.setAnchorView(videoView);
    video =Uri.fromFile(f);
    videoView.setMediaController(mediaController);
    videoView.setVideoURI(video);
    videoView.start();
    }
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

问题答案:

如果使用InputStream进行读取,请使用OutputStream进行写入,即BufferedOutputStream包装的FileOutputStream。另外,您的代码效率很低,因为一次只能复制一个字节。我建议创建一个字节数组缓冲区并使用以下相关的读/写方法

int BufferedInputStream.read(byte[] buffer, int offset, int length)
void BufferedOutputStream.write(byte[] buffer, int offset, int length)


 类似资料:
  • 我有一个apk的路径“/system/app/gallery2.apk”,我想把它复制到SDCARD上。我实现了复制方法 这不起作用了,thnks

  • 我正在尝试将MP3音频文件混合到MP4视频中。经过数小时的搜索,我得出结论,我需要将MP3文件转换为AAC格式,该格式适合MP4容器。 在android中为视频添加音频 但是我找不到任何关于如何将MP3文件转换为AAC格式的留档。那么你对如何将MP3音频转换为AAC音频有什么建议吗? 此外,我还需要在最终视频中的特定时间插入几段音频。

  • 我正在尝试开发一个应用程序,允许我在录制视频时绘制视频,然后将录制的视频和视频保存在一个mp4文件中供以后使用。另外,我想使用camera2库,特别是我需要我的应用程序在高于API 21的设备上运行,我总是避免使用不推荐的库。 我尝试了很多方法,包括FFmpeg,其中我放置了TextureView的覆盖层。getBitmap()(来自摄影机)和从画布获取的位图。它工作正常,但由于它的功能很慢,视频

  • 我想从Firebase存储中播放视频,其中包含我正在尝试的视频视图,如下所示: 但它不会播放。视频是空的。

  • 我正在做一个项目,我们需要记录渲染的OpenGL曲面。(例如,如果我们使用GLSURFACHEVIEW,我们需要将曲面与麦克风的音频一起录制) 目前,我正在使用MediaRecorderAPI,将视频源设置为。 我使用以下示例作为基本代码 我想知道。。。。 这条路对吗。有更好的替代品吗 链接中给出的示例测试正在录制EGL表面的音频和视频,但未正确显示 原因可能是什么? 任何帮助/指针都非常感谢。

  • 替换本地(目录下)的http格式的文件(可以与resWriteRaw配合使用),请求会自动补全路径,配置方式: pattern rawfile://filepath # 也可以匹配一个文件或目录路径列表,whistle会依次查找直到找到存在的文件 pattern rawfile://path1|path2|pathN filepath为Values里面的{key}或者本地文件,pattern参见