gpt4 book ai didi

ruby-on-rails - rails : Encoder error when converting video using FFMPEG on Heroku

转载 作者:行者123 更新时间:2023-12-04 22:56:26 25 4
gpt4 key购买 nike

我正在尝试上传视频并将文件转换为 mp4 并使用 paperclip-ffmpeg 减小文件大小和 paperclip gem 。运行本地服务器一切正常,我只在heroku上遇到这个问题。我在 vendor/ffmpeg/中安装了 ffmpeg(我按照以下步骤操作:https://gist.github.com/3963576)。这是我得到的代码和我得到的错误:

模型/视频.rb:

class Video < ActiveRecord::Base
attr_accessible :content, :user_id, :video
has_attached_file :video , :styles => {
:medium => { :geometry => "500x500", :format => 'mp4',
:convert_options => { :output => { :vcodec => 'libx264',
:b => '1000k', :bt => '200k',
:acodec => 'libfaac', :ab => '56k', :ac => 2 } } }
}, :processors => [:ffmpeg]

belongs_to :user
end

当我运行 heroku logs :
2013-01-02T00:38:20+00:00 app[web.1]: Started POST "/videos" for 101.170.255.251 at 2013-01-02 00:38:20 +0000
2013-01-02T00:38:20+00:00 app[web.1]: Processing by VideosController#create as HTML
2013-01-02T00:38:20+00:00 app[web.1]: Parameters: {"utf8"=>"✓", "authenticity_token"=>"X0IKts46TF8aFvEb1I/szFo/28omlVBXIIyJ3APz3YA=", "video"=>{"content"=>"", "video"=>#<ActionDispatch::Http::UploadedFile:0x00000004ac88a8 @original_filename="sample.mov", @content_type="video/quicktime", @headers="Content-Disposition: form-data; name=\"video[video]\"; filename=\"sample.mov\"\r\nContent-Type: video/quicktime\r\n", @tempfile=#<File:/tmp/RackMultipart20130102-2-1ch9zcp>>}, "commit"=>"Post"}
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] ffmpeg -i "/tmp/sample20130102-2-4j5sgh.mov" 2>&1
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] Resize
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] Command Success
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] Making...
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] Building Destination File: 'sample20130102-2-4j5sgh' + 'mp4'
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] Destination File Built
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] Adding Source
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] Adding Geometry
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] Convert Options: 500x280
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] Adding Format
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] -i :source -y -vcodec libx264 -b 1000k -bt 200k -acodec libfaac -ab 56k -ac 2 -s 500x280 :dest
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] Extracting Target Dimensions
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] Building Parameters
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] Target Size is Available
2013-01-02T00:38:20+00:00 app[web.1]: [paperclip] [ffmpeg] Keeping Aspect Ratio
2013-01-02T00:38:20+00:00 app[web.1]: Command :: ffmpeg -i '/tmp/sample20130102-2-4j5sgh.mov' -y -vcodec libx264 -b 1000k -bt 200k -acodec libfaac -ab 56k -ac 2 -s 500x280 '/tmp/sample20130102-2-4j5sgh20130102-2-1mr35ix.mp4'
2013-01-02T00:38:20+00:00 app[web.1]: ffmpeg version git-2013-01-01-d079d1d Copyright (c) 2000-2012 the FFmpeg developers
2013-01-02T00:38:20+00:00 app[web.1]: built on Jan 1 2013 12:59:49 with gcc 4.4.3 (Ubuntu 4.4.3-4ubuntu5)
2013-01-02T00:38:20+00:00 app[web.1]: configuration: --enable-shared --disable-asm --prefix=/app/vendor/ffmpeg
2013-01-02T00:38:20+00:00 app[web.1]: libavfilter 3. 30.102 / 3. 30.102
2013-01-02T00:38:20+00:00 app[web.1]: libavcodec 54. 85.100 / 54. 85.100
2013-01-02T00:38:20+00:00 app[web.1]: libavdevice 54. 3.102 / 54. 3.102
2013-01-02T00:38:20+00:00 app[web.1]: libavutil 52. 13.100 / 52. 13.100
2013-01-02T00:38:20+00:00 app[web.1]: libswresample 0. 17.102 / 0. 17.102
2013-01-02T00:38:20+00:00 app[web.1]: libswscale 2. 1.103 / 2. 1.103
2013-01-02T00:38:20+00:00 app[web.1]: libavformat 54. 58.100 / 54. 58.100
2013-01-02T00:38:21+00:00 app[web.1]: creation_time : 2013-01-02 00:36:58
2013-01-02T00:38:21+00:00 app[web.1]: minor_version : 0
2013-01-02T00:38:21+00:00 app[web.1]: major_brand : qt
2013-01-02T00:38:21+00:00 app[web.1]: Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/tmp/sample20130102-2-4j5sgh.mov':
2013-01-02T00:38:21+00:00 app[web.1]: model : iPhone 4
2013-01-02T00:38:21+00:00 app[web.1]: compatible_brands: qt
2013-01-02T00:38:21+00:00 app[web.1]: model-eng : iPhone 4
2013-01-02T00:38:21+00:00 app[web.1]: make-eng : Apple
2013-01-02T00:38:21+00:00 app[web.1]: date-eng : 2012-12-28T00:39:34+1100
2013-01-02T00:38:21+00:00 app[web.1]: encoder : 6.0
2013-01-02T00:38:21+00:00 app[web.1]: encoder-eng : 6.0
2013-01-02T00:38:21+00:00 app[web.1]: Duration: 00:00:00.03, start: 0.000000, bitrate: 9465 kb/s
2013-01-02T00:38:21+00:00 app[web.1]: Stream #0:0(und): Audio: aac (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 75 kb/s
2013-01-02T00:38:21+00:00 app[web.1]: date : 2012-12-28T00:39:34+1100
2013-01-02T00:38:21+00:00 app[web.1]: creation_time : 2013-01-02 00:36:58
2013-01-02T00:38:21+00:00 app[web.1]: make : Apple
2013-01-02T00:38:21+00:00 app[web.1]: Metadata:
2013-01-02T00:38:21+00:00 app[web.1]: Metadata:
2013-01-02T00:38:21+00:00 app[web.1]: handler_name : Core Media Data Handler
2013-01-02T00:38:21+00:00 app[web.1]: Stream #0:1(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 640x360 [SAR 1:1 DAR 16:9], 8605 kb/s, 30 fps, 30 tbr, 600 tbn, 1200 tbc
2013-01-02T00:38:21+00:00 app[web.1]: Metadata:
2013-01-02T00:38:21+00:00 app[web.1]: handler_name : Core Media Data Handler
2013-01-02T00:38:21+00:00 app[web.1]: Unknown encoder 'libx264'
2013-01-02T00:38:21+00:00 app[web.1]: Please use -b:a or -b:v, -b is ambiguous
2013-01-02T00:38:21+00:00 app[web.1]: creation_time : 2013-01-02 00:36:58
2013-01-02T00:38:21+00:00 app[web.1]: [paperclip] An error was received while processing: #<Paperclip::Error: error while processing video for sample20130102-2-4j5sgh: Command 'ffmpeg -i :source -y -vcodec libx264 -b 1000k -bt 200k -acodec libfaac -ab 56k -ac 2 -s 500x280 :dest' returned 1. Expected 0>
2013-01-02T00:38:21+00:00 app[web.1]: Rendered videos/new.html.erb within layouts/application (3.2ms)
2013-01-02T00:38:21+00:00 heroku[router]: at=info method=POST path=/videos host=stark-sea-5654.herokuapp.com fwd=101.170.255.251 dyno=web.1 queue=0 wait=0ms connect=3ms service=3685ms status=200 bytes=1878
2013-01-02T00:38:21+00:00 app[web.1]: Rendered layouts/_footer.html.erb (0.0ms)
2013-01-02T00:38:21+00:00 app[web.1]: Completed 200 OK in 342ms (Views: 124.8ms | ActiveRecord: 10.4ms)
2013-01-02T00:38:21+00:00 app[web.1]: Rendered layouts/_header.html.erb (1.2ms)

一切正常,直到消息 Unknown encoder 'libx264'所以我认为这可能与 ffmpeg 有关?

最佳答案

ffmpeg 不附带 libx264 安装。 libx264 需要单独安装,并且在 ffmpeg ./configure 中需要包含 libx264。本指南将帮助您使用 libx264 安装 ffmpeg:https://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide

关于ruby-on-rails - rails : Encoder error when converting video using FFMPEG on Heroku,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14116160/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com