Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- task fix_tv: :environment do
- episodes = Episode.all
- missing_lists = episodes.find_all{|episode| !File.exists?(episode.path)}
- options = {version: 3, chache: true, target: 11}
- missing_lists.each{|episode|
- puts episode.path
- directory=File.dirname(episode.path)
- filename_without_ext = File.basename(episode.path,".m3u8")
- Dir.chdir(directory)
- files=Dir.glob("#{filename_without_ext}-*.ts")
- marker1="-"
- marker2=".ts"
- files = files.sort{|x,y|
- x[/#{marker1}([0-9]{1,3})#{marker2}/m,1].to_i <=> y[/#{marker1}([0-9]{1,3})#{marker2}/m,1].to_i
- }
- puts files
- playlist = M3u8::Playlist.new(options)
- files.each{|file|
- movie = FFMPEG::Movie.new("#{directory}/#{file}")
- duration = movie.duration
- item = M3u8::SegmentItem.new(duration:duration,segment:file)
- playlist.items << item
- }
- puts playlist.to_s
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement