#r #ffmpeg #gganimate
#r #ffmpeg #gganimate
Вопрос:
Я пытаюсь экспортировать некоторые анимации, которые я сделал с помощью gganimate, в видеоформат, поскольку создаваемые мной GIF-файлы довольно большие.
Пример кода:
library(gganimate)
p <- ggplot(mtcars, aes(factor(cyl), mpg))
theme_dark()
theme(panel.grid = element_line(colour = "white"))
geom_boxplot()
transition_states(
gear,
transition_length = 2,
state_length = 1
)
enter_fade()
exit_shrink()
ease_aes('sine-in-out')
anim_save("example.mp4",
animate(
p,
nframes = 450,
fps = 25,
width = 1280,
height = 720,
type = "cairo",
start_pause = 50,
end_pause = 50,
renderer = av_renderer()
))
Выдает видео, показанное здесь: https://vimeo.com/505019987
Со стандартной темой ggplot2: https://vimeo.com/505020822
Это еще один пример того, что я сделал с помощью gganimate: https://www.youtube.com/watch?v=fHzjl_z_sSo
Вы можете видеть, что качество видео в первых нескольких кадрах очень плохое. В видео со стандартной темой ggplot2 и видео на YouTube линии сетки и текст водяного знака не видны в начале, но исчезают намного позже. Я мало что знаю о видеокодеках, но я предполагаю, что это как-то связано с библиотекой ffmpeg av
, которую использует пакет / av_renderer()
. Кто-нибудь испытывал что-то подобное?
Комментарии:
1. Какие параметры предоставляются в ffmpeg?
2. @Gyan
vfilter
вav_renderer()
функции, упомянутой здесь , есть аргумент ropensci.org/technotes/2018/10/06/av-release который, я думаю, заимствован из ffmpeg.