Description
Record and generate a 'gif' of your 'R' sessions plots. When creating a visualization, there is inevitably iteration and refinement that occurs. Automatically save the plots made to a specified directory, previewing them as they would be saved. Then combine all plots generated into a 'gif' to show the plot refinement over time.
Downloads
374
Last 30 days
8756th
838
Last 90 days
838
Last year
Trend: -19.4% (30d vs prior 30d)
CRAN Check Status
Show all 14 flavors
| Flavor | Status |
|---|---|
| r-devel-linux-x86_64-debian-clang | NOTE |
| r-devel-linux-x86_64-debian-gcc | ERROR |
| r-devel-linux-x86_64-fedora-clang | ERROR |
| r-devel-linux-x86_64-fedora-gcc | ERROR |
| r-devel-macos-arm64 | NOTE |
| r-devel-windows-x86_64 | NOTE |
| r-oldrel-macos-arm64 | NOTE |
| r-oldrel-macos-x86_64 | NOTE |
| r-oldrel-windows-x86_64 | NOTE |
| r-patched-linux-x86_64 | NOTE |
| r-release-linux-x86_64 | NOTE |
| r-release-macos-arm64 | NOTE |
| r-release-macos-x86_64 | NOTE |
| r-release-windows-x86_64 | NOTE |
Check details (20 non-OK)
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
re-building of vignette outputs
Error(s) in re-building vignettes:
...
--- re-building ‘camcorder_record.Rmd’ using rmarkdown
[WARNING] Deprecated: --highlight-style. Use --syntax-highlighting instead.
--- finished re-building ‘camcorder_record.Rmd’
--- re-building ‘camcorder_view.Rmd’ using rmarkdown
[WARNING] Deprecated: --highlight-style. Use --syntax-highlighting instead.
--- finished re-building ‘camcorder_view.Rmd’
--- re-building ‘pdf_fonts.Rmd’ using rmarkdown
Quitting from pdf_fonts.Rmd:30-40 [setup-record-pdf]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<error/rlang_error>
Error in `value[[3L]]()`:
! Unable to determine file extention to use for ` x `. Please provide a file extension in the `device_ext` argument of gg_record().
---
Backtrace:
▆
1. └─camcorder::gg_record(...)
2. └─camcorder:::derive_ext(device)
3. └─base::tryCatch(...)
4. └─base (local) tryCatchList(expr, classes, parentenv, handlers)
5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]])
6. └─value[[3L]](cond)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Error: processing vignette 'pdf_fonts.Rmd' failed with diagnostics:
Unable to determine file extention to use for ` x `. Please provide a file extension in the `device_ext` argument of gg_record().
--- failed re-building ‘pdf_fonts.Rmd’
SUMMARY: processing the following file failed:
‘pdf_fonts.Rmd’
Error: Vignette re-building failed.
Execution halted
tests
Running ‘testthat.R’ [7s/9s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional test configuration?
> # Learn more about the roles of various files in:
> # * https://r-pkgs.org/tests.html
> # * https://testthat.r-lib.org/reference/test_package.html#special-files
>
> library(testthat)
> library(camcorder)
>
> test_check("camcorder")
Saving _problems/test-recording-138.R
[ FAIL 1 | WARN 0 | SKIP 4 | PASS 10 ]
══ Skipped tests (4) ═══════════════════════════════════════════════════════════
• On CRAN (4): 'test-recording.R:1:1', 'test-recording.R:39:1',
'test-recording.R:79:1', 'test-recording.R:146:3'
══ Failed tests ════════════════════════════════════════════════════════════════
── Error ('test-recording.R:138:3'): recording works - gif output ──────────────
Error in `basename(file_path_sans_ext(existing_resized_film))`: a character vector argument expected
Backtrace:
▆
1. └─camcorder::gg_playback(playback_file) at test-recording.R:138:3
2. └─camcorder:::scale_film(...)
3. ├─basename(file_path_sans_ext(film)) %in% ...
4. └─base::basename(file_path_sans_ext(existing_resized_film))
[ FAIL 1 | WARN 0 | SKIP 4 | PASS 10 ]
Error:
! Test failures.
Execution halted
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
re-building of vignette outputs
Error(s) in re-building vignettes:
--- re-building ‘camcorder_record.Rmd’ using rmarkdown
[WARNING] Deprecated: --highlight-style. Use --syntax-highlighting instead.
--- finished re-building ‘camcorder_record.Rmd’
--- re-building ‘camcorder_view.Rmd’ using rmarkdown
[WARNING] Deprecated: --highlight-style. Use --syntax-highlighting instead.
--- finished re-building ‘camcorder_view.Rmd’
--- re-building ‘pdf_fonts.Rmd’ using rmarkdown
Quitting from pdf_fonts.Rmd:30-40 [setup-record-pdf]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<error/rlang_error>
Error in `value[[3L]]()`:
! Unable to determine file extention to use for ` x `. Please provide a file extension in the `device_ext` argument of gg_record().
---
Backtrace:
▆
1. └─camcorder::gg_record(...)
2. └─camcorder:::derive_ext(device)
3. └─base::tryCatch(...)
4. └─base (local) tryCatchList(expr, classes, parentenv, handlers)
5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]])
6. └─value[[3L]](cond)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Error: processing vignette 'pdf_fonts.Rmd' failed with diagnostics:
Unable to determine file extention to use for ` x `. Please provide a file extension in the `device_ext` argument of gg_record().
--- failed re-building ‘pdf_fonts.Rmd’
SUMMARY: processing the following file failed:
‘pdf_fonts.Rmd’
Error: Vignette re-building failed.
Execution halted
tests
Running ‘testthat.R’ [17s/20s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional test configuration?
> # Learn more about the roles of various files in:
> # * https://r-pkgs.org/tests.html
> # * https://testthat.r-lib.org/reference/test_package.html#special-files
>
> library(testthat)
> library(camcorder)
>
> test_check("camcorder")
Saving _problems/test-recording-138.R
[ FAIL 1 | WARN 0 | SKIP 4 | PASS 10 ]
══ Skipped tests (4) ═══════════════════════════════════════════════════════════
• On CRAN (4): 'test-recording.R:1:1', 'test-recording.R:39:1',
'test-recording.R:79:1', 'test-recording.R:146:3'
══ Failed tests ════════════════════════════════════════════════════════════════
── Error ('test-recording.R:138:3'): recording works - gif output ──────────────
Error in `basename(file_path_sans_ext(existing_resized_film))`: a character vector argument expected
Backtrace:
▆
1. └─camcorder::gg_playback(playback_file) at test-recording.R:138:3
2. └─camcorder:::scale_film(...)
3. ├─basename(file_path_sans_ext(film)) %in% ...
4. └─base::basename(file_path_sans_ext(existing_resized_film))
[ FAIL 1 | WARN 0 | SKIP 4 | PASS 10 ]
Error:
! Test failures.
Execution halted
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
re-building of vignette outputs
Error(s) in re-building vignettes:
--- re-building ‘camcorder_record.Rmd’ using rmarkdown
[WARNING] Deprecated: --highlight-style. Use --syntax-highlighting instead.
--- finished re-building ‘camcorder_record.Rmd’
--- re-building ‘camcorder_view.Rmd’ using rmarkdown
[WARNING] Deprecated: --highlight-style. Use --syntax-highlighting instead.
--- finished re-building ‘camcorder_view.Rmd’
--- re-building ‘pdf_fonts.Rmd’ using rmarkdown
Quitting from pdf_fonts.Rmd:30-40 [setup-record-pdf]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<error/rlang_error>
Error in `value[[3L]]()`:
! Unable to determine file extention to use for ` x `. Please provide a file extension in the `device_ext` argument of gg_record().
---
Backtrace:
▆
1. └─camcorder::gg_record(...)
2. └─camcorder:::derive_ext(device)
3. └─base::tryCatch(...)
4. └─base (local) tryCatchList(expr, classes, parentenv, handlers)
5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]])
6. └─value[[3L]](cond)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Error: processing vignette 'pdf_fonts.Rmd' failed with diagnostics:
Unable to determine file extention to use for ` x `. Please provide a file extension in the `device_ext` argument of gg_record().
--- failed re-building ‘pdf_fonts.Rmd’
SUMMARY: processing the following file failed:
‘pdf_fonts.Rmd’
Error: Vignette re-building failed.
Execution halted
tests
Running ‘testthat.R’
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional test configuration?
> # Learn more about the roles of various files in:
> # * https://r-pkgs.org/tests.html
> # * https://testthat.r-lib.org/reference/test_package.html#special-files
>
> library(testthat)
> library(camcorder)
>
> test_check("camcorder")
Saving _problems/test-recording-138.R
[ FAIL 1 | WARN 0 | SKIP 4 | PASS 10 ]
══ Skipped tests (4) ═══════════════════════════════════════════════════════════
• On CRAN (4): 'test-recording.R:1:1', 'test-recording.R:39:1',
'test-recording.R:79:1', 'test-recording.R:146:3'
══ Failed tests ════════════════════════════════════════════════════════════════
── Error ('test-recording.R:138:3'): recording works - gif output ──────────────
Error in `basename(file_path_sans_ext(existing_resized_film))`: a character vector argument expected
Backtrace:
▆
1. └─camcorder::gg_playback(playback_file) at test-recording.R:138:3
2. └─camcorder:::scale_film(...)
3. ├─basename(file_path_sans_ext(film)) %in% ...
4. └─base::basename(file_path_sans_ext(existing_resized_film))
[ FAIL 1 | WARN 0 | SKIP 4 | PASS 10 ]
Error:
! Test failures.
Execution halted
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Check History
ERROR 0 OK · 11 NOTE · 0 WARNING · 3 ERROR · 0 FAILURE Mar 9, 2026
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^
Rd files
checkRd: (-1) Recording.Rd:112: Lost braces; missing escapes or markup?
112 | Stop recording images with {camcorder}.
| ^