browser cannot play the chunk sent by the server?

When i am reading i need to load the whole file in the memory which is not very i tried to see if browser can play the chunk but for some reason it cant play it.

    public ResponseEntity<byte[]> video1() throws IOException {

        byte[] data = streamingService.getVideo();
        return   ResponseEntity.status(HttpStatus.PARTIAL_CONTENT)
                .header("Content-Type", "video/mp4")
                .header("Accept-Ranges", "bytes")
                .header("Content-Length", String.valueOf(20480))

my getVideo Method to read video file

public byte[] getVideo(){
        byte[] data = new byte[20480];
        try {
            InputStream inputStream = new FileInputStream(file);
        } catch (FileNotFoundException e) {
        } catch (IOException e) {

        return data;

is their a efficient way to read file without using memory equivalent of whole file size