Ruby:如何将mp4文件读取成块

时间:2018-11-29 00:00:22

标签: ruby

我希望能够读取1mb大小的mp4文件。

我尝试使用以下API打开文件:

video_file = File.open(@video_filename, 'rb') 
video_file = IO.binread(@video_filename)

问题是,video_file之后是一个字符串,我无法使用read来获取文件块。

chunk = video_file.read(4*1024*1024)

在Ruby中打开该文件并一次读取N个字节的正确接口/工具是什么?

2 个答案:

答案 0 :(得分:1)

我想我会这样做:

import random

def randomword():
    y = []
    possibles = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890-=_+!@#$%^&*(),./<>?'
    length = int(input("Password Length: "))

    for x in range(0, length):
        y.append(random.choice(possibles))

    print(''.join(y))

randomword()
input()

答案 1 :(得分:0)

尝试这样的事情:

   `FILENAME = "d:\\tmp\\file.bin"
    MEGABYTE = 1024 * 1024

 class File
  def each_chunk(chunk_size = MEGABYTE)
  yield read(chunk_size) until eof?
 end
end

 open(FILENAME, "rb") do |f|
  f.each_chunk { |chunk| puts chunk }
   end`