media: cros-codecs: factorize dummy backends

The dummy backends behave the same regardless of the codec, so factorize
their declaration as well as their implementation of VideoDecoderBackend
to avoid duplicate code.

BUG=b:214478588
TEST=cargo test --features vaapi -p cros-codecs

Change-Id: Ibaa694b885c1ccf969aed3a0cb167a254e0eaab5
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/4060492
Reviewed-by: Daniel Almeida <daniel.almeida@collabora.corp-partner.google.com>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Commit-Queue: Alexandre Courbot <acourbot@chromium.org>
7 files changed
tree: 08d1b46de4608cebd92eaaa35f3ebb2c383432b9
  1. .cargo/
  2. .devcontainer/
  3. .github/
  4. .vscode/
  5. aarch64/
  6. acpi_tables/
  7. anti_tamper/
  8. arch/
  9. argh_helpers/
  10. base/
  11. bit_field/
  12. broker_ipc/
  13. common/
  14. crash_report/
  15. cros_async/
  16. cros_fdt/
  17. cros_tracing/
  18. crosvm-fuzz/
  19. crosvm_cli/
  20. crosvm_control/
  21. crosvm_plugin/
  22. devices/
  23. disk/
  24. docs/
  25. e2e_tests/
  26. fuse/
  27. gpu_display/
  28. hypervisor/
  29. infra/
  30. io_uring/
  31. kernel_cmdline/
  32. kernel_loader/
  33. kvm/
  34. kvm_sys/
  35. libcras_stub/
  36. linux_input_sys/
  37. logo/
  38. media/
  39. metrics/
  40. net_sys/
  41. net_util/
  42. power_monitor/
  43. prebuilts/
  44. proto_build_tools/
  45. protos/
  46. qcow_utils/
  47. resources/
  48. rutabaga_gfx/
  49. sandbox/
  50. seccomp/
  51. serde_keyvalue/
  52. src/
  53. swap/
  54. system_api/
  55. tests/
  56. third_party/
  57. tools/
  58. tpm2/
  59. tpm2-sys/
  60. tube_transporter/
  61. usb_sys/
  62. usb_util/
  63. vfio_sys/
  64. vhost/
  65. virtio_sys/
  66. vm_control/
  67. vm_memory/
  68. win_audio/
  69. win_util/
  70. x86_64/
  71. .dockerignore
  72. .gitignore
  73. .gitmodules
  74. .rustfmt.toml
  75. ARCHITECTURE.md
  76. build.rs
  77. Cargo.lock
  78. Cargo.toml
  79. CONTRIBUTING.md
  80. DIR_METADATA
  81. LICENSE
  82. mypy.ini
  83. OWNERS
  84. PRESUBMIT.cfg
  85. pyproject.toml
  86. README.chromeos.md
  87. README.md
  88. rust-toolchain
README.md

crosvm - The Chrome OS Virtual Machine Monitor

crosvm is a virtual machine monitor (VMM) based on Linux’s KVM hypervisor, with a focus on simplicity, security, and speed. crosvm is intended to run Linux guests, originally as a security boundary for running native applications on the Chrome OS platform. Compared to QEMU, crosvm doesn’t emulate architectures or real hardware, instead concentrating on paravirtualized devices, such as the virtio standard.

crosvm is currently used to run Linux/Android guests on Chrome OS devices.

Logo