
Recherche avancée
Médias (1)
-
La conservation du net art au musée. Les stratégies à l’œuvre
26 mai 2011
Mis à jour : Juillet 2013
Langue : français
Type : Texte
Autres articles (47)
-
Participer à sa traduction
10 avril 2011Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
Actuellement MediaSPIP n’est disponible qu’en français et (...) -
Les autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs -
Supporting all media types
13 avril 2011, parUnlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)
Sur d’autres sites (9285)
-
heroku paperclip video error Av::UnableToDetect (Unable to detect any supported library) :
6 janvier 2021, par nourzaI am trying to upload video to my website with paperclip and it work perfectly locally but in heroku I got this error


ActionController::RoutingError (No route matches [GET] "/videos/original/missing.png"):
2021-01-06T19:53:12.425050+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/actionpack-4.2.11.1/lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call'
2021-01-06T19:53:12.425050+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/actionpack-4.2.11.1/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
2021-01-06T19:53:12.425050+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/railties-4.2.11.1/lib/rails/rack/logger.rb:38:in `call_app'
2021-01-06T19:53:12.425052+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/railties-4.2.11.1/lib/rails/rack/logger.rb:20:in `block in call'
2021-01-06T19:53:12.425052+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/activesupport-4.2.11.1/lib/active_support/tagged_logging.rb:68:in `block in tagged'
2021-01-06T19:53:12.425052+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/activesupport-4.2.11.1/lib/active_support/tagged_logging.rb:26:in `tagged'
2021-01-06T19:53:12.425053+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/activesupport-4.2.11.1/lib/active_support/tagged_logging.rb:68:in `tagged'
2021-01-06T19:53:12.425053+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/railties-4.2.11.1/lib/rails/rack/logger.rb:20:in `call'
2021-01-06T19:53:12.425053+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/actionpack-4.2.11.1/lib/action_dispatch/middleware/request_id.rb:21:in `call'
2021-01-06T19:53:12.425054+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/rack-1.6.13/lib/rack/methodoverride.rb:22:in `call'
2021-01-06T19:53:12.425055+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/rack-1.6.13/lib/rack/runtime.rb:18:in `call'
2021-01-06T19:53:12.425055+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/activesupport-4.2.11.1/lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call'
2021-01-06T19:53:12.425055+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/actionpack-4.2.11.1/lib/action_dispatch/middleware/static.rb:120:in `call'
2021-01-06T19:53:12.425056+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/rack-1.6.13/lib/rack/sendfile.rb:113:in `call'
2021-01-06T19:53:12.425057+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/actionpack-4.2.11.1/lib/action_dispatch/middleware/ssl.rb:24:in `call'
2021-01-06T19:53:12.425057+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/railties-4.2.11.1/lib/rails/engine.rb:518:in `call'
2021-01-06T19:53:12.425061+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/railties-4.2.11.1/lib/rails/application.rb:165:in `call'
2021-01-06T19:53:12.425061+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/rack-1.6.13/lib/rack/content_length.rb:15:in `call'
2021-01-06T19:53:12.425061+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/puma-5.1.1/lib/puma/configuration.rb:246:in `call'
2021-01-06T19:53:12.425062+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/puma-5.1.1/lib/puma/request.rb:76:in `block in handle_request'
2021-01-06T19:53:12.425062+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/puma-5.1.1/lib/puma/thread_pool.rb:337:in `with_force_shutdown'
2021-01-06T19:53:12.425062+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/puma-5.1.1/lib/puma/request.rb:75:in `handle_request'
2021-01-06T19:53:12.425063+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/puma-5.1.1/lib/puma/server.rb:431:in `process_client'
2021-01-06T19:53:12.425063+00:00 app[web.1]: vendor/bundle/ruby/2.6.0/gems/puma-5.1.1/lib/puma/thread_pool.rb:145:in `block in spawn_thread'
2021-01-06T19:53:12.425063+00:00 app[web.1]: 
2021-01-06T19:53:12.425064+00:00 app[web.1]: 
2021-01-06T19:53:12.458808+00:00 heroku[router]: at=info method=GET path="/videos/original/missing.png" host=www.mobileimplantlab.ca request_id=a7661465-ee4e-49d4-b694-27814e4fb23b fwd="24.85.18.207" dyno=web.1 connect=0ms service=71ms status=404 bytes=222 protocol=https
2021-01-06T19:53:30.751932+00:00 app[web.1]: Started POST "/galleries" for 24.85.18.207 at 2021-01-06 19:53:30 +0000
2021-01-06T19:53:30.768629+00:00 app[web.1]: Processing by GalleriesController#create as HTML
2021-01-06T19:53:30.768802+00:00 app[web.1]: Parameters: {"utf8"=>"✓", "authenticity_token"=>"YFGiYYWmgDb+foSNMk1u1o2H2bp11nqwjAVzc4jqeGYDxoG6zLNGyFxBMvUrqxhBUAt+pex21VI+NqRGucRGOQ==", "gallery"=>{"product_name"=>"", "title1"=>"", "title2"=>"", "title3"=>"", "title4"=>"", "title5"=>"", "videotitle"=>"", "video"=>#, @original_filename="IMG_2826.mp4", @content_type="video/mp4", @headers="Content-Disposition: form-data; name=\"gallery[video]\"; filename=\"IMG_2826.mp4\"\r\nContent-Type: video/mp4\r\n">}, "commit"=>"Submit"}
2021-01-06T19:53:30.790290+00:00 app[web.1]: User Load (5.8ms) SELECT "users".* FROM "users" WHERE "users"."id" = $1 ORDER BY "users"."id" ASC LIMIT 1 [["id", 1]]
2021-01-06T19:53:30.836411+00:00 app[web.1]: [paperclip] Trying to link /tmp/RackMultipart20210106-4-baa646.mp4 to /tmp/847606d3771b12aa2d91db7647fe3a4920210106-4-1m2r6hc.mp4
2021-01-06T19:53:30.844138+00:00 app[web.1]: [paperclip] Trying to link /tmp/847606d3771b12aa2d91db7647fe3a4920210106-4-1m2r6hc.mp4 to /tmp/847606d3771b12aa2d91db7647fe3a4920210106-4-fg47sn.mp4
2021-01-06T19:53:30.858332+00:00 app[web.1]: Command :: file -b --mime '/tmp/847606d3771b12aa2d91db7647fe3a4920210106-4-fg47sn.mp4'
2021-01-06T19:53:30.938505+00:00 app[web.1]: [AV] Running command: if command -v avprobe 2>/dev/null; then echo "true"; else echo "false"; fi
2021-01-06T19:53:30.960650+00:00 app[web.1]: [AV] Running command: if command -v ffmpeg 2>/dev/null; then echo "true"; else echo "false"; fi
2021-01-06T19:53:30.973770+00:00 app[web.1]: Completed 500 Internal Server Error in 204ms (ActiveRecord: 14.0ms)
2021-01-06T19:53:30.975178+00:00 app[web.1]: 
2021-01-06T19:53:30.975180+00:00 app[web.1]: Av::UnableToDetect (Unable to detect any supported library):
2021-01-06T19:53:30.975180+00:00 app[web.1]: app/controllers/galleries_controller.rb:8:in `create



here is my model


class Gallery < ActiveRecord::Base
 has_attached_file :image1, :styles => { :medium => "300x300>", :thumb => "100x100>" }, :default_url => "/images/:style/missing.png"
 validates_attachment_content_type :image1, :content_type => /\Aimage\/.*\Z/
 has_attached_file :image2, :styles => { :medium => "300x300>", :thumb => "100x100>" }, :default_url => "/images/:style/missing.png"
 validates_attachment_content_type :image2, :content_type => /\Aimage\/.*\Z/
 has_attached_file :image3, :styles => { :medium => "300x300>", :thumb => "100x100>" }, :default_url => "/images/:style/missing.png"
 validates_attachment_content_type :image3, :content_type => /\Aimage\/.*\Z/
 has_attached_file :image4, :styles => { :medium => "300x300>", :thumb => "100x100>" }, :default_url => "/images/:style/missing.png"
 validates_attachment_content_type :image4, :content_type => /\Aimage\/.*\Z/
 has_attached_file :image5, :styles => { :medium => "300x300>", :thumb => "100x100>" }, :default_url => "/images/:style/missing.png"
 validates_attachment_content_type :image5, :content_type => /\Aimage\/.*\Z/
 has_attached_file :video, :styles => {
 :medium => { :geometry => "500x500", :format => 'jpg' },
 :thumb => { :geometry => "100x100", :format => 'jpg' }
 }, :processors => [:transcoder]

validates_attachment_content_type :video,
 :content_type => [
 "video/mp4", 
 "video/quicktime",
 "video/3gpp",
 "video/x-ms-wmv",
 "video/mov",
 "video/flv",
 ],
 :message => "Sorry! We do not accept the attached file type"

end



I have these gems for it


gem "paperclip"
gem 'paperclip-av-transcoder'
gem "paperclip-ffmpeg", "~> 1.2.0"



I did few research on this issue and it said that i have to add this to my heroku buildpack but when i add it my heroku website crashed. so I remove it. Is there any other solution ?
https://github.com/jonathanong/heroku-buildpack-ffmpeg-latest.git


Thanks in advance


-
FFMPEG RTSP stream to MPEG4/H264 file using libx264
16 octobre 2020, par PhiHeyo folks,



I'm attempting to transcode/remux an RTSP stream in H264 format into a MPEG4 container, containing just the H264 video stream. Basically, webcam output into a MP4 container.



I can get a poorly coded MP4 produced, using this code :



// Variables here for demo
AVFormatContext * video_file_output_format = nullptr;
AVFormatContext * rtsp_format_context = nullptr;
AVCodecContext * video_file_codec_context = nullptr;
AVCodecContext * rtsp_vidstream_codec_context = nullptr;
AVPacket packet = {0};
AVStream * video_file_stream = nullptr;
AVCodec * rtsp_decoder_codec = nullptr;
int errorNum = 0, video_stream_index = 0;
std::string outputMP4file = "D:\\somemp4file.mp4";

// begin
AVDictionary * opts = nullptr;
av_dict_set(&opts, "rtsp_transport", "tcp", 0);

if ((errorNum = avformat_open_input(&rtsp_format_context, uriANSI.c_str(), NULL, &opts)) < 0) {
 errOut << "Connection failed: avformat_open_input failed with error " << errorNum << ":\r\n" << ErrorRead(errorNum);
 TacticalAbort();
 return;
}

rtsp_format_context->max_analyze_duration = 50000;
if ((errorNum = avformat_find_stream_info(rtsp_format_context, NULL)) < 0) {
 errOut << "Connection failed: avformat_find_stream_info failed with error " << errorNum << ":\r\n" << ErrorRead(errorNum);
 TacticalAbort();
 return;
}

video_stream_index = errorNum = av_find_best_stream(rtsp_format_context, AVMEDIA_TYPE_VIDEO, -1, -1, NULL, 0);

if (video_stream_index < 0) {
 errOut << "Connection in unexpected state; made a connection, but there was no video stream.\r\n"
 "Attempts to find a video stream resulted in error " << errorNum << ": " << ErrorRead(errorNum);
 TacticalAbort();
 return;
}

rtsp_vidstream_codec_context = rtsp_format_context->streams[video_stream_index]->codec;

av_init_packet(&packet);

if (!(video_file_output_format = av_guess_format(NULL, outputMP4file.c_str(), NULL))) {
 TacticalAbort();
 throw std::exception("av_guess_format");
}

if (!(rtsp_decoder_codec = avcodec_find_decoder(rtsp_vidstream_codec_context->codec_id))) {
 errOut << "Connection failed: connected, but avcodec_find_decoder returned null.\r\n"
 "Couldn't find codec with an AV_CODEC_ID value of " << rtsp_vidstream_codec_context->codec_id << ".";
 TacticalAbort();
 return;
}

video_file_format_context = avformat_alloc_context();
video_file_format_context->oformat = video_file_output_format;

if (strcpy_s(video_file_format_context->filename, sizeof(video_file_format_context->filename), outputMP4file.c_str())) {
 errOut << "Couldn't open video file: strcpy_s failed with error " << errno << ".";
 std::string log = errOut.str();
 TacticalAbort();
 throw std::exception("strcpy_s");
}

if (!(video_file_encoder_codec = avcodec_find_encoder(video_file_output_format->video_codec))) {
 TacticalAbort();
 throw std::exception("avcodec_find_encoder");
}

// MARKER ONE

if (!outputMP4file.empty() &&
 !(video_file_output_format->flags & AVFMT_NOFILE) &&
 (errorNum = avio_open2(&video_file_format_context->pb, outputMP4file.c_str(), AVIO_FLAG_WRITE, nullptr, &opts)) < 0) {
 errOut << "Couldn't open video file \"" << outputMP4file << "\" for writing : avio_open2 failed with error " << errorNum << ": " << ErrorRead(errorNum);
 TacticalAbort();
 return;
}

// Create stream in MP4 file
if (!(video_file_stream = avformat_new_stream(video_file_format_context, video_file_encoder_codec))) {
 TacticalAbort();
 return;
}

AVCodecContext * video_file_codec_context = video_file_stream->codec;

// MARKER TWO

// error -22/-21 in avio_open2 if this is skipped
if ((errorNum = avcodec_copy_context(video_file_codec_context, rtsp_vidstream_codec_context)) != 0) {
 TacticalAbort();
 throw std::exception("avcodec_copy_context");
}

//video_file_codec_context->codec_tag = 0;

/*
// MARKER 3 - is this not needed? Examples suggest not.
if ((errorNum = avcodec_open2(video_file_codec_context, video_file_encoder_codec, &opts)) < 0)
{
 errOut << "Couldn't open video file codec context: avcodec_open2 failed with error " << errorNum << ": " << ErrorRead(errorNum);
 std::string log = errOut.str();
 TacticalAbort();
 throw std::exception("avcodec_open2, video file");
}*/

//video_file_format_context->flags |= AVFMT_FLAG_GENPTS;
if (video_file_format_context->oformat->flags & AVFMT_GLOBALHEADER)
{
 video_file_codec_context->flags |= CODEC_FLAG_GLOBAL_HEADER;
}

if ((errorNum = avformat_write_header(video_file_format_context, &opts)) < 0) {
 errOut << "Couldn't open video file: avformat_write_header failed with error " << errorNum << ":\r\n" << ErrorRead(errorNum);
 std::string log = errOut.str();
 TacticalAbort();
 return;
}




However, there are several issues :



- 

- I can't pass any x264 options to the output file. The output H264 matches the input H264's profile/level - switching cameras to a different model switches H264 level.
- The timing of the output file is off, noticeably.
- The duration of the output file is off, massively. A few seconds of footage becomes hours, although playtime doesn't match. (FWIW, I'm using VLC to play them.)









Passing x264 options



If I manually increment PTS per packet, and set DTS equal to PTS, it plays too fast, 2-3 seconds' worth of footage in one second playtime, and duration is hours long. The footage also blurs past several seconds, about 10 seconds' footage in a second.



If I let FFMPEG decide (with or without GENPTS flag), the file has a variable frame rate (probably as expected), but it plays the whole file in an instant and has a long duration too (over forty hours for a few seconds). The duration isn't "real", as the file plays in an instant.



At Marker One, I try to set the profile by passing options to
avio_open2
. The options are simply ignored by libx264. I've tried :


av_dict_set(&opts, "vprofile", "main", 0);
av_dict_set(&opts, "profile", "main", 0); // error, missing '('
// FF_PROFILE_H264_MAIN equals 77, so I also tried
av_dict_set(&opts, "vprofile", "77", 0); 
av_dict_set(&opts, "profile", "77", 0);




It does seem to read the profile setting, but it doesn't use them. At Marker Two, I tried to set it after the
avio_open2
, beforeavformat_write_header
.


// I tried all 4 av_dict_set from earlier, passing it to avformat_write_header.
// None had any effect, they weren't consumed.
av_opt_set(video_file_codec_context, "profile", "77", 0);
av_opt_set(video_file_codec_context, "profile", "main", 0);
video_file_codec_context->profile = FF_PROFILE_H264_MAIN;
av_opt_set(video_file_codec_context->priv_data, "profile", "77", 0);
av_opt_set(video_file_codec_context->priv_data, "profile", "main", 0);




Messing with privdata made the program unstable, but I was trying anything at that point.
I'd like to solve issue 1 with passing settings, since I imagine it'd bottleneck any attempt to solve issues 2 or 3.



I've been fiddling with this for the better part of a month now. I've been through dozens of documentation, Q&As, examples. It doesn't help that quite a few are outdated.



Any help would be appreciated.



Cheers


-
ffmepg suddently stopped working
30 octobre 2013, par jdartlandHi Im using ffmpeg jwplayer to handle my video uploads. It worked just fine untill I added a video upload to a new model. My video files gets uploaded to the database but i can't play them in my jwplayer. I also noticed that ffmpeg converts files to avi eaven though I've specifyed it in both of my models to convert files into flv.
Here is my javascrip "error" :
Error loading player:
No playable sources found.My models, tabels and vews shuld work cus I haven't changed anything in my old working post module.
Here is whats happening in the upload :
Started PATCH "/posts/dsdsdsdsd" for 127.0.0.1 at 2013-10-30 15:37:53 +0100
Processing by PostsController#update as HTML
Parameters: {"utf8"=>"✓", "authenticity_token"=>"4Xp=", "post"=>{"title"=>"dsdsdsdsd", "content"=>"sdsdsdsdsd", "photo_delete"=>"0", "video_delete"=>"0", "video"=>#, @original_filename="Drossel_10bar__Pressure_inner_wall.avi", @content_type="video/x-msvideo", @headers="Content-Disposition: form-data; name=\"post[video]\"; filename=\"Drossel_10bar__Pressure_inner_wall.avi\"\r\nContent-Type: video/x-msvideo\r\n">}, "commit"=>"Update Post", "id"=>"dsdsdsdsd"}
Admin Load (0.9ms) SELECT "admins".* FROM "admins" WHERE "admins"."id" = 1 ORDER BY "admins"."id" ASC LIMIT 1
Post Load (0.5ms) SELECT "posts".* FROM "posts" WHERE "posts"."permalink" = 'dsdsdsdsd' ORDER BY created_at desc LIMIT 1
(0.2ms) BEGIN
[paperclip] [ffmpeg] ffmpeg -i "/tmp/Drossel_10bar__Pressure_inner_wall20131030-6965-14cqqt7.avi" 2>&1
[paperclip] [ffmpeg] Command Success
[paperclip] [ffmpeg] Making...
[paperclip] [ffmpeg] Building Destination File: 'Drossel_10bar__Pressure_inner_wall20131030-6965-14cqqt7' + 'flv'
[paperclip] [ffmpeg] Destination File Built
[paperclip] [ffmpeg] Adding Geometry
[paperclip] [ffmpeg] Extracting Target Dimensions
[paperclip] [ffmpeg] Target Size is Available
[paperclip] [ffmpeg] Keeping Aspect Ratio
[paperclip] [ffmpeg] Resize
[paperclip] [ffmpeg] Convert Options: 400x234
[paperclip] [ffmpeg] Adding Format
[paperclip] [ffmpeg] Adding Source
[paperclip] [ffmpeg] Building Parameters
[paperclip] [ffmpeg] -i :source -s 400x234 -y :dest
Command :: ffmpeg -i '/tmp/Drossel_10bar__Pressure_inner_wall20131030-6965-14cqqt7.avi' -s 400x234 -y '/tmp/Drossel_10bar__Pressure_inner_wall20131030-6965-14cqqt720131030-6965-1fv54qn.flv'
ffmpeg version 0.8.6-4:0.8.6-0ubuntu0.12.04.1, Copyright (c) 2000-2013 the Libav developers
built on Apr 2 2013 17:02:36 with gcc 4.6.3
*** THIS PROGRAM IS DEPRECATED ***
This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.
Input #0, avi, from '/tmp/Drossel_10bar__Pressure_inner_wall20131030-6965-14cqqt7.avi':
Metadata:
encoder : Lavf52.64.2
Duration: 00:00:00.00, start: 0.000000, bitrate: -2147483 kb/s
Stream #0.0: Video: mjpeg, yuvj422p, 1588x936, 15 tbr, 15 tbn, 15 tbc
Incompatible pixel format 'yuvj422p' for codec 'flv', auto-selecting format 'yuv420p'
[buffer @ 0xdcd280] w:1588 h:936 pixfmt:yuvj422p
[scale @ 0xdcd7c0] w:1588 h:936 fmt:yuvj422p -> w:400 h:234 fmt:yuv420p flags:0x4
Output #0, flv, to '/tmp/Drossel_10bar__Pressure_inner_wall20131030-6965-14cqqt720131030-6965-1fv54qn.flv':
Metadata:
encoder : Lavf53.21.1
Stream #0.0: Video: flv, yuv420p, 400x234, q=2-31, 200 kb/s, 1k tbn, 15 tbc
Stream mapping:
Stream #0.0 -> #0.0
Press ctrl-c to stop encoding
frame= 451 fps=118 q=2.2 Lsize= 962kB time=30.07 bitrate= 262.1kbits/s
video:955kB audio:0kB global headers:0kB muxing overhead 0.759673%
[paperclip] [qtfaststart] :source :dest
Command :: qt-faststart '/tmp/Drossel_10bar__Pressure_inner_wall20131030-6965-14cqqt720131030-6965-1fv54qn.flv' '/tmp/Drossel_10bar__Pressure_inner_wall20131030-6965-14cqqt720131030-6965-1fv54qn20131030-6965-1a8cksd.flv'
Post Exists (0.7ms) SELECT 1 AS one FROM "posts" WHERE ("posts"."title" = 'dsdsdsdsd' AND "posts"."id" != 37) LIMIT 1
SQL (0.7ms) UPDATE "posts" SET "video_file_name" = $1, "video_content_type" = $2, "video_file_size" = $3, "video_updated_at" = $4, "updated_at" = $5 WHERE "posts"."id" = 37 [["video_file_name", "Drossel_10bar__Pressure_inner_wall.avi"], ["video_content_type", "video/x-msvideo"], ["video_file_size", 41766866], ["video_updated_at", Wed, 30 Oct 2013 14:37:53 UTC +00:00], ["updated_at", Wed, 30 Oct 2013 14:37:57 UTC +00:00]]
(102.0ms) COMMIT
Redirected to http://0.0.0.0:3000/posts/dsdsdsdsd
Completed 302 Found in 4078ms (ActiveRecord: 105.0ms)
Started GET "/posts/dsdsdsdsd" for 127.0.0.1 at 2013-10-30 15:37:57 +0100
Processing by PostsController#show as HTML
Parameters: {"id"=>"dsdsdsdsd"}
Post Load (0.5ms) SELECT "posts".* FROM "posts" WHERE "posts"."permalink" = 'dsdsdsdsd' ORDER BY created_at desc LIMIT 1
Admin Load (0.4ms) SELECT "admins".* FROM "admins" WHERE "admins"."id" = 1 ORDER BY "admins"."id" ASC LIMIT 1
Rendered posts/show.html.erb within layouts/application (4.3ms)
Completed 200 OK in 17ms (Views: 14.3ms | ActiveRecord: 0.9ms)