Низкое качество видео в первых нескольких кадрах при использовании параметров видеовыхода в gganimate

#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.