From fd6bde9c6ec64b6723fd89815bc2fa62a2f945d0 Mon Sep 17 00:00:00 2001 From: Dmitry Sepp Date: Thu, 6 Feb 2020 19:20:57 +0900 Subject: virtio-video: Add virtio video device specification The virtio video encoder device and decoder device provide functionalities to encode and decode video stream respectively. Though video encoder and decoder are provided as different devices, they use a same protocol. Signed-off-by: Dmitry Sepp Signed-off-by: Keiichi Watanabe Message-Id: <20200206102058.247258-2-keiichiw@chromium.org> --- .gitignore | 1 + content.tex | 1 + images/video-buffer-lifecycle.dot | 18 + make-setup-generated.sh | 8 + virtio-video.tex | 988 ++++++++++++++++++++++++++++++++++++++ 5 files changed, 1016 insertions(+) create mode 100644 .gitignore create mode 100644 images/video-buffer-lifecycle.dot create mode 100644 virtio-video.tex diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..31272c2 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/images/generated/ diff --git a/content.tex b/content.tex index b91a132..b75a40f 100644 --- a/content.tex +++ b/content.tex @@ -6062,6 +6062,7 @@ descriptor for the \field{sense_len}, \field{residual}, \input{virtio-fs.tex} \input{virtio-rpmb.tex} \input{virtio-iommu.tex} +\input{virtio-video.tex} \chapter{Reserved Feature Bits}\label{sec:Reserved Feature Bits} diff --git a/images/video-buffer-lifecycle.dot b/images/video-buffer-lifecycle.dot new file mode 100644 index 0000000..98f379b --- /dev/null +++ b/images/video-buffer-lifecycle.dot @@ -0,0 +1,18 @@ +digraph { + graph [ rankdir = LR, layout = dot ]; + + init [style = invis] + destroyed [style = invis] + created [label="Created", shape=circle] + dequeued [label="Dequeued", shape=circle] + queued [label="Queued", shape=circle] + + init -> created [label="RESOURCE_CREATE"] + + created -> queued [label="RESOURCE_QUEUE is sent"] + dequeued -> queued [label="RESOURCE_QUEUE\n is sent"] + queued -> dequeued [label="RESOURCE_QUEUE\n has returned"] + + created -> destroyed [label="RESOURCE_DESTROY_ALL"] + dequeued -> destroyed [label="RESOURCE_DESTROY_ALL"] +} diff --git a/make-setup-generated.sh b/make-setup-generated.sh index f15d148..4caff72 100755 --- a/make-setup-generated.sh +++ b/make-setup-generated.sh @@ -61,3 +61,11 @@ cat > setup-generated.tex <