Как воспроизвести видео в Android, которое было сегментировано во время загрузки? - PullRequest
0 голосов
/ 13 марта 2019

Поскольку хранилище Firebase не позволяет буферизовать видео (я имею в виду, что оно не позволяет воспроизводить видео, которое загружается как YouTube), поэтому во время загрузки я разрезал видео на более мелкие части, используя следующий код. Теперь, при воспроизведении которого я хочу загрузить первую часть и воспроизвести во время воспроизведения первой части, я хочу загрузить вторую часть и воспроизвести ее сразу после того, как первая часть будет полностью воспроизведена и т. Д. В том же видеопоказе. Может ли кто-нибудь помочь мне сделать это?

public static List<File> splitFile(File f) throws IOException {
    int partCounter = 1;
    List<File> result = new ArrayList<>();
    int sizeOfFiles = 1024 * 1024;// 1MB
    byte[] buffer = new byte[sizeOfFiles]; // create a buffer of bytes sized as the one chunk size

    BufferedInputStream bis = new BufferedInputStream(new FileInputStream(f));
    String name = f.getName();

    int tmp = 0;
    while ((tmp = bis.read(buffer)) > 0) {
        File newFile = new File(f.getParent(), name + "." + String.format("%03d", partCounter++)); // naming files as <inputFileName>.001, <inputFileName>.002, ...
        FileOutputStream out = new FileOutputStream(newFile);
        out.write(buffer, 0, tmp);//tmp is chunk size. Need it for the last chunk, which could be less then 1 mb.
        result.add(newFile);
    }
    return result;
}
...