Skip to content

Commit 40ca0a0

Browse files
crawlerzzak
authored andcommitted
ActiveStorage: fix default video_preview_arguments
1 parent c797ce9 commit 40ca0a0

File tree

4 files changed

+7
-5
lines changed

4 files changed

+7
-5
lines changed

guides/source/configuring.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1068,7 +1068,7 @@ text/javascript image/svg+xml application/postscript application/x-shockwave-fla
10681068

10691069
* `config.active_storage.video_preview_arguments` can be used to alter the way ffmpeg generates video preview images.
10701070

1071-
The default is `"-vf select=eq(n\,0)+eq(key\,1)+gt(scene\,0.015),loop=loop=-1:size=2,trim=start_frame=1 -frames:v 1 -f image2"`
1071+
The default is `"-vf 'select=eq(n\\,0)+eq(key\\,1)+gt(scene\\,0.015),loop=loop=-1:size=2,trim=start_frame=1' -frames:v 1 -f image2"`
10721072

10731073
1. `select=eq(n\,0)+eq(key\,1)+gt(scene\,0.015)`: Select the first video frame, plus keyframes, plus frames that meet the scene change threshold.
10741074
2. `loop=loop=-1:size=2,trim=start_frame=1`: To use the first video frame as a fallback when no other frames meet the criteria, loop the first (one or) two selected frames, then drop the first looped frame.
@@ -1090,7 +1090,7 @@ text/javascript image/svg+xml application/postscript application/x-shockwave-fla
10901090
- `config.active_support.cache_format_version`: `7.0`
10911091
- `config.action_dispatch.return_only_request_media_type_on_content_type`: `false`
10921092
- `config.action_mailer.smtp_timeout`: `5`
1093-
- `config.active_storage.video_preview_arguments`: `"-vf select=eq(n\,0)+eq(key\,1)+gt(scene\,0.015),loop=loop=-1:size=2,trim=start_frame=1 -frames:v 1 -f image2"`
1093+
- `config.active_storage.video_preview_arguments`: `"-vf 'select=eq(n\\,0)+eq(key\\,1)+gt(scene\\,0.015),loop=loop=-1:size=2,trim=start_frame=1' -frames:v 1 -f image2"`
10941094

10951095
#### For '6.1', defaults from previous versions below and:
10961096

railties/lib/rails/application/configuration.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -223,7 +223,8 @@ def load_defaults(target_version)
223223

224224
if respond_to?(:active_storage)
225225
active_storage.video_preview_arguments =
226-
"-vf select=eq(n\,0)+eq(key\,1)+gt(scene\,0.015),loop=loop=-1:size=2,trim=start_frame=1 -frames:v 1 -f image2"
226+
"-vf 'select=eq(n\\,0)+eq(key\\,1)+gt(scene\\,0.015),loop=loop=-1:size=2,trim=start_frame=1'" \
227+
" -frames:v 1 -f image2"
227228
end
228229
else
229230
raise "Unknown version #{target_version.to_s.inspect}"

railties/lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_7_0.rb.tt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,4 +42,4 @@
4242
# better preview images (rather than the previous default of using the first frame
4343
# of the video).
4444
# Rails.application.config.active_storage.video_preview_arguments =
45-
# "-vf select=eq(n\,0)+eq(key\,1)+gt(scene\,0.015),loop=loop=-1:size=2,trim=start_frame=1 -frames:v 1 -f image2"
45+
# "-vf 'select=eq(n\\,0)+eq(key\\,1)+gt(scene\\,0.015),loop=loop=-1:size=2,trim=start_frame=1' -frames:v 1 -f image2"

railties/test/application/configuration_test.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3032,7 +3032,8 @@ class MyLogger < ::Logger
30323032
app "development"
30333033

30343034
assert_equal ActiveStorage.video_preview_arguments,
3035-
"-vf select=eq(n\,0)+eq(key\,1)+gt(scene\,0.015),loop=loop=-1:size=2,trim=start_frame=1 -frames:v 1 -f image2"
3035+
"-vf 'select=eq(n\\,0)+eq(key\\,1)+gt(scene\\,0.015),loop=loop=-1:size=2,trim=start_frame=1'" \
3036+
" -frames:v 1 -f image2"
30363037
end
30373038

30383039
test "hosts include .localhost in development" do

0 commit comments

Comments
 (0)