IO.popen question

I posted this on the Rails forum but is really just a ruby question...

////

i’m fairly new to ruby...

any suggestions getting the below to work...

i’d like to use myfile_field.read within encodeVideo

and then self.data = Student_Interviews.flv

class Myfile < ActiveRecord::Base
.
.
.
def encodeVideo opts #, stream
IO.popen(”ffmpeg #{opts}”, ‘w’)#{ |io| io.puts stream}
end

def myfile=(myfile_field)
if myfile_field and myfile_field.length > 0

encodeVideo “-i /tmp/Student_Interviews.mov -ar 22050 -ab 64 -f flv -s
320×240 /tmp/Student_Interviews.flv”#, myfile_field.read

#self.data = myfile_field.read
self.filename = Myfile.base_part_of(myfile_field.original_filename) +
Date.to_s
filesize = (myfile_field.length / 1000).to_i
if filesize == 0
self.filesize = 1 # a file of 0 KB doesn’t make sense
else
self.filesize = filesize
end

end
end

···

--
Posted via http://www.ruby-forum.com/.

Michael Barinek wrote:

I posted this on the Rails forum but is really just a ruby question...

////

i’m fairly new to ruby...

any suggestions getting the below to work...

Hi,
It would help if you mentioned what isn't working for you. Are you getting errors? What are they? Where? Or do you just need help with the logic?

i’d like to use myfile_field.read within encodeVideo

and then self.data = Student_Interviews.flv

class Myfile < ActiveRecord::Base
.
def encodeVideo opts #, stream
IO.popen(”ffmpeg #{opts}”, ‘w’)#{ |io| io.puts stream}
end
  
I think you want to use io.print, because puts will append a newline.

def myfile=(myfile_field)
if myfile_field and myfile_field.length > 0

encodeVideo “-i /tmp/Student_Interviews.mov -ar 22050 -ab 64 -f flv -s
320×240 /tmp/Student_Interviews.flv”#, myfile_field.read

#self.data = myfile_field.read
self.filename = Myfile.base_part_of(myfile_field.original_filename) +
Date.to_s
filesize = (myfile_field.length / 1000).to_i
if filesize == 0
self.filesize = 1 # a file of 0 KB doesn’t make sense
else
self.filesize = filesize
end

end
en

Help us help you, as they say.

-Justin

i need help with the logic and block...

i've commented out the areas i like to get working...

#{ |io| io.puts stream}

#, myfile_field.read

···

--
Posted via http://www.ruby-forum.com/.