Commit 3ed3e130 authored by Jonathan Corbet's avatar Jonathan Corbet

Merge branch 'mauro-pdf' into docs-next

Mauro says:

This series address a series of errors during PDF generation from
media documentation.

The first patch fixes the late redefinition of a LaTeX command at the
Sphinx LaTeX style that causes build to break when some cross-references
are used.

The next two patches fix PDF output issues with subdev-formats.rst.

The next 3 patches fix image includes and their output for PDF.

It is aligned with Linus request of not having binary-generated images
from their SVG source codes.

I still intend to move the remaing PNG images to vectorial ones (SVG),
as image scale works better, but this will require some additional work.
When done, I'll submit as a separate patch series.

It should also be noticed that the last patch violates the output dir,
when make is used with "O=some_dir", as Sphinx doesn't accept
image files outside the source directory. We'll likely need some Sphinx
extension in order to fix it, but at least with this series (plus Jani Nikola's
PDF fix series), the PDF output should work fine again.

[jc: added a commit fixing up a "make cleandocs" warning]
parents f5ff9b63 c54b6b37
......@@ -54,7 +54,7 @@ loop_cmd = $(echo-cmd) $(cmd_$(1))
# e.g. "media" for the linux-tv book-set at ./Documentation/media
quiet_cmd_sphinx = SPHINX $@ --> file://$(abspath $(BUILDDIR)/$3/$4)
cmd_sphinx = $(MAKE) BUILDDIR=$(abspath $(BUILDDIR)) $(build)=Documentation/media all;\
cmd_sphinx = $(MAKE) BUILDDIR=$(abspath $(BUILDDIR)) $(build)=Documentation/media $2;\
BUILDDIR=$(abspath $(BUILDDIR)) SPHINX_CONF=$(abspath $(srctree)/$(src)/$5/$(SPHINX_CONF)) \
$(SPHINXBUILD) \
-b $2 \
......@@ -98,6 +98,7 @@ installmandocs:
cleandocs:
$(Q)rm -rf $(BUILDDIR)
$(Q)$(MAKE) -C Documentation/media clean
endif # HAVE_SPHINX
......
......@@ -37,7 +37,7 @@ from load_config import loadConfig
extensions = ['kerneldoc', 'rstFlatTable', 'kernel_include', 'cdomain']
# The name of the math extension changed on Sphinx 1.4
if minor > 3:
if major == 1 and minor > 3:
extensions.append("sphinx.ext.imgmath")
else:
extensions.append("sphinx.ext.pngmath")
......@@ -332,6 +332,10 @@ latex_elements = {
'''
}
# Fix reference escape troubles with Sphinx 1.4.x
if major == 1 and minor > 3:
latex_elements['preamble'] += '\\renewcommand*{\\DUrole}[2]{ #2 }\n'
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title,
# author, documentclass [howto, manual, or own class]).
......
......@@ -10,8 +10,35 @@ FILES = audio.h.rst ca.h.rst dmx.h.rst frontend.h.rst net.h.rst video.h.rst \
TARGETS := $(addprefix $(BUILDDIR)/, $(FILES))
.PHONY: all
IMAGES = \
typical_media_device.svg \
uapi/dvb/dvbstb.svg \
uapi/v4l/constraints.svg \
uapi/v4l/subdev-image-processing-full.svg \
uapi/v4l/subdev-image-processing-scaling-multi-source.svg \
uapi/v4l/subdev-image-processing-crop.svg \
IMGTGT := $(patsubst %.png,%.pdf,$(patsubst %.svg,%.pdf,$(IMAGES)))
IMGPDF := $(patsubst %,$(SRC_DIR)/%,$(IMGTGT))
cmd = $(echo-cmd) $(cmd_$(1))
quiet_cmd_genpdf = GENPDF $2
cmd_genpdf = convert $2 $3
%.pdf: %.svg
@$(call cmd,genpdf,$<,$@)
.PHONY: all html epub xml latex
all: $(BUILDDIR) ${TARGETS}
html: all
epub: all
xml: all
latex: $(IMGPDF) all
clean:
-rm -f $(IMGTGT) 2>/dev/null
$(BUILDDIR):
$(Q)mkdir -p $@
......@@ -58,4 +85,4 @@ $(BUILDDIR)/lirc.h.rst: ${UAPI}/lirc.h ${PARSER} $(SRC_DIR)/lirc.h.rst.exception
@$($(quiet)gen_rst)
cleandocs:
-rm ${TARGETS}
-rm -f ${TARGETS}
Linux Media Subsystem Documentation
===================================
.. Sphinx 1.4.x has a definition for DUrole that doesn't work on alltt blocks
.. raw:: latex
\renewcommand*{\DUrole}[2]{ #2 }
Contents:
.. toctree::
......
......@@ -13,8 +13,8 @@ A typical media device hardware is shown at :ref:`typical_media_device`.
.. _typical_media_device:
.. figure:: media_api_files/typical_media_device.*
:alt: typical_media_device.svg
.. figure:: typical_media_device.*
:alt: typical_media_device.pdf / typical_media_device.svg
:align: center
Typical Media Device
......
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.2"
width="237.70221mm"
height="126.28221mm"
viewBox="0 0 23770.221 12628.221"
preserveAspectRatio="xMidYMid"
xml:space="preserve"
id="svg2"
inkscape:version="0.91 r13725"
sodipodi:docname="dvbstb.svg"
style="fill-rule:evenodd;stroke-width:28.22200012;stroke-linejoin:round"><metadata
id="metadata519"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="997"
id="namedview517"
showgrid="false"
inkscape:zoom="1.0818519"
inkscape:cx="411.31718"
inkscape:cy="274.87517"
inkscape:window-x="1920"
inkscape:window-y="30"
inkscape:window-maximized="1"
inkscape:current-layer="svg2"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0" /><defs
class="ClipPathGroup"
id="defs4" /><defs
id="defs9" /><defs
id="defs90" /><defs
id="defs113" /><defs
class="TextShapeIndex"
id="defs124" /><defs
class="EmbeddedBulletChars"
id="defs128" /><defs
class="TextEmbeddedBitmaps"
id="defs157" /><rect
class="BoundingBox"
x="5355.1108"
y="13.111"
width="18403"
height="9603"
id="rect197"
style="fill:none;stroke:none" /><path
d="m 14556.111,9614.111 -9200,0 0,-9600 18400,0 0,9600 -9200,0 z"
id="path199"
inkscape:connector-curvature="0"
style="fill:#ffffff;stroke:none" /><path
d="m 14556.111,9614.111 -9200,0 0,-9600 18400,0 0,9600 -9200,0 z"
id="path201"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><rect
class="BoundingBox"
x="13.111"
y="4013.1111"
width="4544"
height="2403"
id="rect206"
style="fill:none;stroke:none" /><path
d="m 2285.111,6414.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path208"
inkscape:connector-curvature="0"
style="fill:#ffffff;stroke:none" /><path
d="m 2285.111,6414.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path210"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><text
class="TextShape"
id="text212"
y="-4585.8892"
x="-2443.8889"><tspan
class="TextParagraph"
font-size="635px"
font-weight="400"
id="tspan214"
style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"><tspan
class="TextPosition"
x="1281.111"
y="5435.1108"
id="tspan216"><tspan
id="tspan218"
style="fill:#000000;stroke:none">Antena</tspan></tspan></tspan></text>
<rect
class="BoundingBox"
x="6213.1108"
y="1813.111"
width="4544"
height="2403"
id="rect223"
style="fill:none;stroke:none" /><path
d="m 8485.111,4214.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path225"
inkscape:connector-curvature="0"
style="fill:#ffffff;stroke:none" /><path
d="m 8485.111,4214.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path227"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><text
class="TextShape"
id="text229"
x="-2443.8889"
y="-4585.8892"><tspan
class="TextParagraph"
font-size="635px"
font-weight="400"
id="tspan231"
style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"><tspan
class="TextPosition"
x="7217.1108"
y="3235.1111"
id="tspan233"><tspan
id="tspan235"
style="fill:#000000;stroke:none">Frontend</tspan></tspan></tspan></text>
<rect
class="BoundingBox"
x="12113.111"
y="1813.111"
width="4544"
height="2403"
id="rect240"
style="fill:none;stroke:none" /><path
d="m 14385.111,4214.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path242"
inkscape:connector-curvature="0"
style="fill:#ffffff;stroke:none" /><path
d="m 14385.111,4214.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path244"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><text
class="TextShape"
id="text246"
x="-2443.8889"
y="-4585.8892"><tspan
class="TextParagraph"
font-size="635px"
font-weight="400"
id="tspan248"
style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"><tspan
class="TextPosition"
x="13944.111"
y="3235.1111"
id="tspan250"><tspan
id="tspan252"
style="fill:#000000;stroke:none">CA</tspan></tspan></tspan></text>
<rect
class="BoundingBox"
x="18113.111"
y="1813.111"
width="4544"
height="2403"
id="rect257"
style="fill:none;stroke:none" /><path
d="m 20385.111,4214.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path259"
inkscape:connector-curvature="0"
style="fill:#ffffff;stroke:none" /><path
d="m 20385.111,4214.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path261"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><text
class="TextShape"
id="text263"
x="-2443.8889"
y="-4585.8892"><tspan
class="TextParagraph"
font-size="635px"
font-weight="400"
id="tspan265"
style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"><tspan
class="TextPosition"
x="19384.111"
y="3235.1111"
id="tspan267"><tspan
id="tspan269"
style="fill:#000000;stroke:none">Demux</tspan></tspan></tspan></text>
<rect
class="BoundingBox"
x="6113.1108"
y="5813.1108"
width="4544"
height="2403"
id="rect274"
style="fill:none;stroke:none" /><path
d="m 8385.111,8214.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path276"
inkscape:connector-curvature="0"
style="fill:#ffffff;stroke:none" /><path
d="m 8385.111,8214.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path278"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><text
class="TextShape"
id="text280"
x="-2443.8889"
y="-4585.8892"><tspan
class="TextParagraph"
font-size="635px"
font-weight="400"
id="tspan282"
style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"><tspan
class="TextPosition"
x="7733.1108"
y="7235.1108"
id="tspan284"><tspan
id="tspan286"
style="fill:#000000;stroke:none">SEC</tspan></tspan></tspan></text>
<rect
class="BoundingBox"
x="12213.111"
y="5813.1108"
width="4544"
height="2403"
id="rect291"
style="fill:none;stroke:none" /><path
d="m 14485.111,8214.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path293"
inkscape:connector-curvature="0"
style="fill:#ffffff;stroke:none" /><path
d="m 14485.111,8214.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path295"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><text
class="TextShape"
id="text297"
x="-2443.8889"
y="-4585.8892"><tspan
class="TextParagraph"
font-size="635px"
font-weight="400"
id="tspan299"
style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"><tspan
class="TextPosition"
x="13676.111"
y="7235.1108"
id="tspan301"><tspan
id="tspan303"
style="fill:#000000;stroke:none">Audio</tspan></tspan></tspan></text>
<rect
class="BoundingBox"
x="18113.111"
y="5813.1108"
width="4544"
height="2403"
id="rect308"
style="fill:none;stroke:none" /><path
d="m 20385.111,8214.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path310"
inkscape:connector-curvature="0"
style="fill:#ffffff;stroke:none" /><path
d="m 20385.111,8214.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path312"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><text
class="TextShape"
id="text314"
x="-2443.8889"
y="-4585.8892"><tspan
class="TextParagraph"
font-size="635px"
font-weight="400"
id="tspan316"
style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"><tspan
class="TextPosition"
x="19583.111"
y="7235.1108"
id="tspan318"><tspan
id="tspan320"
style="fill:#000000;stroke:none">Video</tspan></tspan></tspan></text>
<rect
class="BoundingBox"
x="15213.111"
y="10213.111"
width="4544"
height="2403"
id="rect325"
style="fill:none;stroke:none" /><path
d="m 17485.111,12614.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path327"
inkscape:connector-curvature="0"
style="fill:#ffffff;stroke:none" /><path
d="m 17485.111,12614.111 -2271,0 0,-2400 4541,0 0,2400 -2270,0 z"
id="path329"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><text
class="TextShape"
id="text331"
x="-2443.8889"
y="-4585.8892"><tspan
class="TextParagraph"
font-size="635px"
font-weight="400"
id="tspan333"
style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"><tspan
class="TextPosition"
x="17076.111"
y="11635.111"
id="tspan335"><tspan
id="tspan337"
style="fill:#000000;stroke:none">TV</tspan></tspan></tspan></text>
<rect
class="BoundingBox"
x="4555.1108"
y="3014.1111"
width="1661"
height="2202"
id="rect342"
style="fill:none;stroke:none" /><path
d="m 4556.111,5214.111 1400,-1857"
id="path344"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 6215.111,3014.111 -391,269 240,181 151,-450 z"
id="path346"
inkscape:connector-curvature="0"
style="fill:#000000;stroke:none" /><rect
class="BoundingBox"
x="4555.1108"
y="5213.1108"
width="1561"
height="1802"
id="rect351"
style="fill:none;stroke:none" /><path
d="m 4556.111,5214.111 1277,1475"
id="path353"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 6115.111,7014.111 -181,-438 -227,196 408,242 z"
id="path355"
inkscape:connector-curvature="0"
style="fill:#000000;stroke:none" /><rect
class="BoundingBox"
x="10755.111"
y="2864.1111"
width="1361"
height="301"
id="rect360"
style="fill:none;stroke:none" /><path
d="m 10756.111,3014.111 929,0"
id="path362"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 12115.111,3014.111 -450,-150 0,300 450,-150 z"
id="path364"
inkscape:connector-curvature="0"
style="fill:#000000;stroke:none" /><rect
class="BoundingBox"
x="16655.111"
y="2864.1111"
width="1461"
height="301"
id="rect369"
style="fill:none;stroke:none" /><path
d="m 16656.111,3014.111 1029,0"
id="path371"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 18115.111,3014.111 -450,-150 0,300 450,-150 z"
id="path373"
inkscape:connector-curvature="0"
style="fill:#000000;stroke:none" /><rect
class="BoundingBox"
x="20235.111"
y="4213.1108"
width="301"
height="1602"
id="rect378"
style="fill:none;stroke:none" /><path
d="m 20385.111,4214.111 0,1170"
id="path380"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 20385.111,5814.111 150,-450 -300,0 150,450 z"
id="path382"
inkscape:connector-curvature="0"
style="fill:#000000;stroke:none" /><rect
class="BoundingBox"
x="17485.111"
y="8213.1113"
width="2902"
height="2002"
id="rect387"
style="fill:none;stroke:none" /><path
d="m 20385.111,8214.111 -2546,1756"
id="path389"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 17485.111,10214.111 456,-132 -171,-247 -285,379 z"
id="path391"
inkscape:connector-curvature="0"
style="fill:#000000;stroke:none" /><rect
class="BoundingBox"
x="14484.111"
y="8213.1113"
width="3002"
height="2002"
id="rect396"
style="fill:none;stroke:none" /><path
d="m 14485.111,8214.111 2642,1761"
id="path398"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 17485.111,10214.111 -291,-374 -167,249 458,125 z"
id="path400"
inkscape:connector-curvature="0"
style="fill:#000000;stroke:none" /><rect
class="BoundingBox"
x="14485.111"
y="4213.1108"
width="5902"
height="1629"
id="rect405"
style="fill:none;stroke:none" /><path
d="m 20385.111,4214.111 -51,14"
id="path407"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 20283.111,4242.111 -52,14"
id="path409"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 20180.111,4270.111 -51,13"
id="path411"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 20078.111,4297.111 -52,14"
id="path413"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 19975.111,4325.111 -51,14"
id="path415"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 19873.111,4353.111 -52,14"
id="path417"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 19770.111,4381.111 -51,14"
id="path419"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 19668.111,4409.111 -52,13"
id="path421"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 19565.111,4436.111 -51,14"
id="path423"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 19463.111,4464.111 -52,14"
id="path425"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 19360.111,4492.111 -51,14"
id="path427"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 19258.111,4520.111 -52,14"
id="path429"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 19155.111,4547.111 -51,14"
id="path431"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 19053.111,4575.111 -52,14"
id="path433"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 18950.111,4603.111 -51,14"
id="path435"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 18848.111,4631.111 -51,14"
id="path437"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 18745.111,4659.111 -51,14"
id="path439"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 18643.111,4686.111 -51,14"
id="path441"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 18540.111,4714.111 -51,14"
id="path443"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 18438.111,4742.111 -51,14"
id="path445"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 18335.111,4770.111 -51,14"
id="path447"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 18233.111,4798.111 -51,14"
id="path449"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 18130.111,4825.111 -51,14"
id="path451"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 18028.111,4853.111 -51,14"
id="path453"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 17925.111,4881.111 -51,14"
id="path455"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 17823.111,4909.111 -51,14"
id="path457"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 17720.111,4937.111 -51,13"
id="path459"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 17618.111,4964.111 -51,14"
id="path461"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 17516.111,4992.111 -52,14"
id="path463"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 17413.111,5020.111 -51,14"
id="path465"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 17311.111,5048.111 -52,14"
id="path467"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 17208.111,5076.111 -51,13"
id="path469"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 17106.111,5103.111 -52,14"
id="path471"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 17003.111,5131.111 -51,14"
id="path473"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 16901.111,5159.111 -52,14"
id="path475"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 16798.111,5187.111 -51,14"
id="path477"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 16696.111,5214.111 -52,14"
id="path479"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 16593.111,5242.111 -51,14"
id="path481"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 16491.111,5270.111 -52,14"
id="path483"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 16388.111,5298.111 -51,14"
id="path485"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 16286.111,5326.111 -52,14"
id="path487"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 16183.111,5353.111 -51,14"
id="path489"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 16081.111,5381.111 -51,14"
id="path491"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 15978.111,5409.111 -51,14"
id="path493"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 15876.111,5437.111 -51,14"
id="path495"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 15773.111,5465.111 -51,14"
id="path497"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 15671.111,5492.111 -51,14"
id="path499"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 15568.111,5520.111 -51,14"
id="path501"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 15466.111,5548.111 -51,14"
id="path503"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 15363.111,5576.111 -51,14"
id="path505"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 15261.111,5604.111 -51,13"
id="path507"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 15158.111,5631.111 -51,14"
id="path509"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 15056.111,5659.111 -51,14"
id="path511"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 14953.111,5687.111 -51,14"
id="path513"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000" /><path
d="m 14485.111,5814.111 474,27 -79,-290 -395,263 z"
id="path515"
inkscape:connector-curvature="0"
style="fill:#000000;stroke:none" /></svg>
\ No newline at end of file
......@@ -55,8 +55,8 @@ Overview
.. _stb_components:
.. figure:: intro_files/dvbstb.*
:alt: dvbstb.pdf / dvbstb.png
.. figure:: dvbstb.*
:alt: dvbstb.pdf / dvbstb.svg
:align: center
Components of a DVB card/STB
......
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.2"
width="249.00998mm"
height="143.00999mm"
viewBox="0 0 24900.998 14300.999"
preserveAspectRatio="xMidYMid"
xml:space="preserve"
id="svg2"
inkscape:version="0.91 r13725"
sodipodi:docname="constraints.svg"
style="fill-rule:evenodd;stroke-width:28.22200012;stroke-linejoin:round"><metadata
id="metadata325"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="997"
id="namedview323"
showgrid="false"
inkscape:zoom="1.0818519"
inkscape:cx="270.29272"
inkscape:cy="249.83854"
inkscape:window-x="1920"
inkscape:window-y="30"
inkscape:window-maximized="1"
inkscape:current-layer="svg2"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0" /><defs
class="ClipPathGroup"
id="defs4"><marker
inkscape:isstock="true"
style="overflow:visible"
id="marker6261"
refX="0"
refY="0"
orient="auto"
inkscape:stockid="Arrow1Mend"><path
transform="matrix(-0.4,0,0,-0.4,-4,0)"
style="fill:#ff0000;fill-opacity:1;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt;stroke-opacity:1"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 Z"
id="path6263"
inkscape:connector-curvature="0" /></marker><marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0"
refX="0"
id="marker6125"
style="overflow:visible"
inkscape:isstock="true"
inkscape:collect="always"><path
id="path6127"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 Z"
style="fill:#ff0000;fill-opacity:1;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt;stroke-opacity:1"
transform="matrix(-0.4,0,0,-0.4,-4,0)"
inkscape:connector-curvature="0" /></marker><marker
inkscape:isstock="true"
style="overflow:visible"
id="marker6001"
refX="0"
refY="0"
orient="auto"
inkscape:stockid="Arrow1Mend"
inkscape:collect="always"><path
transform="matrix(-0.4,0,0,-0.4,-4,0)"
style="fill:#ff0000;fill-opacity:1;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt;stroke-opacity:1"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 Z"
id="path6003"
inkscape:connector-curvature="0" /></marker><marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0"
refX="0"
id="marker5693"
style="overflow:visible"
inkscape:isstock="true"
inkscape:collect="always"><path
id="path5695"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 Z"
style="fill:#ff0000;fill-opacity:1;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt;stroke-opacity:1"
transform="matrix(-0.4,0,0,-0.4,-4,0)"
inkscape:connector-curvature="0" /></marker><marker
inkscape:isstock="true"
style="overflow:visible"
id="marker5575"
refX="0"
refY="0"
orient="auto"
inkscape:stockid="Arrow1Mend"
inkscape:collect="always"><path
transform="matrix(-0.4,0,0,-0.4,-4,0)"
style="fill:#000080;fill-opacity:1;fill-rule:evenodd;stroke:#000080;stroke-width:1pt;stroke-opacity:1"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 Z"
id="path5577"
inkscape:connector-curvature="0" /></marker><marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0"
refX="0"
id="marker5469"
style="overflow:visible"
inkscape:isstock="true"
inkscape:collect="always"><path
id="path5471"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 Z"
style="fill:#000080;fill-opacity:1;fill-rule:evenodd;stroke:#000080;stroke-width:1pt;stroke-opacity:1"
transform="matrix(-0.4,0,0,-0.4,-4,0)"
inkscape:connector-curvature="0" /></marker><marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0"
refX="0"
id="marker5259"
style="overflow:visible"
inkscape:isstock="true"><path
id="path5261"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 Z"
style="fill:#000080;fill-opacity:1;fill-rule:evenodd;stroke:#000080;stroke-width:1pt;stroke-opacity:1"
transform="matrix(-0.4,0,0,-0.4,-4,0)"
inkscape:connector-curvature="0" /></marker><marker
inkscape:stockid="Arrow2Mend"
orient="auto"
refY="0"
refX="0"
id="Arrow2Mend"
style="overflow:visible"
inkscape:isstock="true"><path
id="path4241"
style="fill:#000080;fill-opacity:1;fill-rule:evenodd;stroke:#000080;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="scale(-0.6,-0.6)"
inkscape:connector-curvature="0" /></marker></defs><defs
id="defs9" /><defs
id="defs100" /><defs
id="defs123" /><defs
class="TextShapeIndex"
id="defs134" /><defs
class="EmbeddedBulletChars"
id="defs138" /><defs
class="TextEmbeddedBitmaps"
id="defs167" /><g
class="com.sun.star.drawing.CustomShape"
id="g204"
transform="translate(-1350,-3250)"><g
id="id6"><rect
class="BoundingBox"
x="1350"
y="3250"
width="24901"
height="14301"
id="rect207"
style="fill:none;stroke:none" /><path
d="m 13800,17500 -12400,0 0,-14200 24800,0 0,14200 -12400,0 z"
id="path209"
inkscape:connector-curvature="0"
style="fill:#ffffff;stroke:none" /><path
d="m 13800,17500 -12400,0 0,-14200 24800,0 0,14200 -12400,0 z"
id="path211"
inkscape:connector-curvature="0"
style="fill:none;stroke:#ff0000;stroke-width:100;stroke-linejoin:round" /><text
class="TextShape"
id="text213"><tspan
class="TextParagraph"
font-size="846px"
font-weight="400"
id="tspan215"
style="font-weight:400;font-size:846px;font-family:'Liberation Sans', sans-serif"><tspan
class="TextPosition"
x="1652"
y="17093"
id="tspan217"><tspan
id="tspan219"
style="fill:#ff0000;stroke:none" /><tspan
id="tspan221"
style="fill:#ff0000;stroke:none">V4L2_SEL_FLAG_GE</tspan></tspan></tspan></text>
</g></g><rect
class="BoundingBox"
x="3000"
y="2200"
width="18101"
height="10101"
id="rect226"
style="fill:none;stroke:none" /><path
d="m 12050,12250 -9000,0 0,-10000 18000,0 0,10000 -9000,0 z"
id="path228"
inkscape:connector-curvature="0"
style="fill:#ffffff;stroke:none" /><path
d="m 12050,12250 -9000,0 0,-10000 18000,0 0,10000 -9000,0 z"
id="path230"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round" /><text
class="TextShape"
id="text232"
x="-1350"
y="-3250"><tspan
class="TextParagraph"
font-size="987px"
font-weight="400"
id="tspan234"
style="font-weight:400;font-size:987px;font-family:'Liberation Sans', sans-serif"><tspan
class="TextPosition"
x="3227"
y="11503"
id="tspan236"><tspan
id="tspan238"
style="fill:#000000;stroke:none" /><tspan
id="tspan240"
style="fill:#000000;stroke:none">ORIGINAL</tspan></tspan></tspan></text>
<g
class="com.sun.star.drawing.CustomShape"
id="g242"
transform="translate(-1350,-3250)"><g
id="id8"><rect
class="BoundingBox"
x="7050"
y="7950"
width="7901"
height="5501"
id="rect245"
style="fill:none;stroke:none" /><path
d="m 11000,13400 -3900,0 0,-5400 7800,0 0,5400 -3900,0 z"
id="path247"
inkscape:connector-curvature="0"
style="fill:#ffffff;stroke:none" /><path
d="m 11000,13400 -3900,0 0,-5400 7800,0 0,5400 -3900,0 z"
id="path249"
inkscape:connector-curvature="0"
style="fill:none;stroke:#3465a4;stroke-width:100;stroke-linejoin:round" /><text
class="TextShape"
id="text251"><tspan
class="TextParagraph"
font-size="776px"
font-weight="400"
id="tspan253"
style="font-weight:400;font-size:776px;font-family:'Liberation Sans', sans-serif"><tspan
class="TextPosition"
x="7228"
y="10969"
id="tspan255"><tspan
id="tspan257"
style="fill:#000080;stroke:none">V4L2_SEL_FLAG_LE</tspan></tspan></tspan></text>
</g></g><rect
class="BoundingBox"
x="13700"
y="7100"
width="7101"
height="101"
id="rect262"
style="fill:none;stroke:none" /><path
d="m 20750,7150 -7000,0"
id="path264"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000080;stroke-width:99.99134064;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;marker-end:url(#Arrow2Mend)" /><rect
class="BoundingBox"
x="3400"
y="7100"
width="2101"
height="101"
id="rect269"
style="fill:none;stroke:none" /><path
d="m 3450,7150 2000,0"
id="path271"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000080;stroke-width:100;stroke-linejoin:round;marker-end:url(#marker5575)" /><rect
class="BoundingBox"
x="9800"
y="2900"
width="101"
height="1501"
id="rect276"
style="fill:none;stroke:none" /><path
d="m 9850,2950 0,1400"
id="path278"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000080;stroke-width:100;stroke-linejoin:round;marker-end:url(#marker5259)" /><rect
class="BoundingBox"
x="9600"
y="10600"
width="101"
height="1301"
id="rect283"
style="fill:none;stroke:none" /><path
d="m 9650,11850 0,-1200"
id="path285"
inkscape:connector-curvature="0"
style="fill:none;stroke:#000080;stroke-width:100;stroke-linejoin:round;marker-end:url(#marker5469)" /><rect
class="BoundingBox"
x="450"
y="6850"
width="2051"
height="601"
id="rect290"
style="fill:none;stroke:none" /><path
d="m 2450,7150 -2000.8696,0"
id="path292"
inkscape:connector-curvature="0"
style="fill:none;stroke:#ff0000;stroke-width:132.48202515;stroke-linejoin:round;marker-end:url(#marker6125)" /><rect
class="BoundingBox"
x="21600"
y="6750"
width="2651"
height="601"
id="rect299"
style="fill:none;stroke:none" /><path
d="m 21650,7050 2522.609,0"
id="path301"
inkscape:connector-curvature="0"
style="fill:none;stroke:#ff0000;stroke-width:120.40660858;stroke-linejoin:round;marker-end:url(#marker6001)" /><rect
class="BoundingBox"
x="9550"
y="550"
width="601"
height="1451"
id="rect308"
style="fill:none;stroke:none" /><path
d="m 9836.957,1950 0,-1453.0435"
id="path310"
inkscape:connector-curvature="0"
style="fill:none;stroke:#ff0000;stroke-width:164.03721619;stroke-linejoin:round;marker-end:url(#marker6261)" /><rect
class="BoundingBox"
x="9350"
y="12500"
width="601"
height="1451"
id="rect317"
style="fill:none;stroke:none" /><path
d="m 9650,12550 0,1505.217"
id="path319"
inkscape:connector-curvature="0"
style="fill:none;stroke:#ff0000;stroke-width:166.95626831;stroke-linejoin:round;marker-end:url(#marker5693)" /></svg>
\ No newline at end of file
......@@ -53,8 +53,8 @@ Cropping Structures
.. _crop-scale:
.. figure:: crop_files/crop.*
:alt: crop.pdf / crop.gif
.. figure:: crop.png
:alt: crop.png
:align: center
Image Cropping, Insertion and Scaling
......
......@@ -221,8 +221,8 @@ and always returns default parameters as :ref:`VIDIOC_G_FMT <VIDIOC_G_FMT>` does
.. _vbi-hsync:
.. figure:: dev-raw-vbi_files/vbi_hsync.*
:alt: vbi_hsync.pdf / vbi_hsync.gif
.. figure:: vbi_hsync.png
:alt: vbi_hsync.png
:align: center
**Figure 4.1. Line synchronization**
......@@ -230,8 +230,8 @@ and always returns default parameters as :ref:`VIDIOC_G_FMT <VIDIOC_G_FMT>` does
.. _vbi-525:
.. figure:: dev-raw-vbi_files/vbi_525.*
:alt: vbi_525.pdf / vbi_525.gif
.. figure:: vbi_525.png
:alt: vbi_525.png
:align: center
**Figure 4.2. ITU-R 525 line numbering (M/NTSC and M/PAL)**
......@@ -240,8 +240,8 @@ and always returns default parameters as :ref:`VIDIOC_G_FMT <VIDIOC_G_FMT>` does
.. _vbi-625:
.. figure:: dev-raw-vbi_files/vbi_625.*
:alt: vbi_625.pdf / vbi_625.gif
.. figure:: vbi_625.png
:alt: vbi_625.png
:align: center
**Figure 4.3. ITU-R 625 line numbering**
......
......@@ -99,8 +99,8 @@ the video sensor and the host image processing hardware.
.. _pipeline-scaling:
.. figure:: dev-subdev_files/pipeline.*
:alt: pipeline.pdf / pipeline.png
.. figure:: pipeline.png
:alt: pipeline.png
:align: center
Image Format Negotiation on Pipelines
......@@ -404,8 +404,8 @@ selection will refer to the sink pad format dimensions instead.
.. _subdev-image-processing-crop:
.. figure:: dev-subdev_files/subdev-image-processing-crop.*
:alt: subdev-image-processing-crop.svg
.. figure:: subdev-image-processing-crop.*
:alt: subdev-image-processing-crop.pdf / subdev-image-processing-crop.svg
:align: center
**Figure 4.5. Image processing in subdevs: simple crop example**
......@@ -421,8 +421,8 @@ pad.
.. _subdev-image-processing-scaling-multi-source:
.. figure:: dev-subdev_files/subdev-image-processing-scaling-multi-source.*
:alt: subdev-image-processing-scaling-multi-source.svg
.. figure:: subdev-image-processing-scaling-multi-source.*
:alt: subdev-image-processing-scaling-multi-source.pdf / subdev-image-processing-scaling-multi-source.svg
:align: center
**Figure 4.6. Image processing in subdevs: scaling with multiple sources**
......@@ -437,8 +437,8 @@ an area at location specified by the source crop rectangle from it.
.. _subdev-image-processing-full:
.. figure:: dev-subdev_files/subdev-image-processing-full.*
:alt: subdev-image-processing-full.svg
.. figure:: subdev-image-processing-full.*
:alt: subdev-image-processing-full.pdf / subdev-image-processing-full.svg
:align: center
**Figure 4.7. Image processing in subdevs: scaling and composition with multiple sinks and sources**
......
......@@ -141,8 +141,8 @@ enum v4l2_field
Field Order, Top Field First Transmitted
========================================
.. figure:: field-order_files/fieldseq_tb.*
:alt: fieldseq_tb.pdf / fieldseq_tb.gif
.. figure:: fieldseq_tb.png
:alt: fieldseq_tb.png
:align: center
......@@ -151,7 +151,7 @@ Field Order, Top Field First Transmitted
Field Order, Bottom Field First Transmitted
===========================================
.. figure:: field-order_files/fieldseq_bt.*
:alt: fieldseq_bt.pdf / fieldseq_bt.gif
.. figure:: fieldseq_bt.png
:alt: fieldseq_bt.png
:align: center
......@@ -33,7 +33,7 @@ Layout of macroblocks in memory is presented in the following figure.
.. _nv12mt:
.. figure:: pixfmt-nv12mt_files/nv12mt.*
.. figure:: nv12mt.png
:alt: nv12mt.png
:align: center
......@@ -50,7 +50,7 @@ interleaved. Height of the buffer is aligned to 32.
.. _nv12mt_ex:
.. figure:: pixfmt-nv12mt_files/nv12mt_example.*
.. figure:: nv12mt_example.png
:alt: nv12mt_example.png
:align: center
......
......@@ -7,7 +7,7 @@ Selection targets
.. _sel-targets-capture:
.. figure:: selection-api-003_files/selection.*
.. figure:: selection.png
:alt: selection.png
:align: center
......
......@@ -1514,23 +1514,28 @@ be named ``MEDIA_BUS_FMT_SRGGB10_2X8_PADHI_LE``.
.. _bayer-patterns:
.. figure:: subdev-formats_files/bayer.*
.. figure:: bayer.png
:alt: bayer.png
:align: center
**Figure 4.8 Bayer Patterns**
The following table lists existing packed Bayer formats. The data
organization is given as an example for the first pixel only.
.. HACK: ideally, we would be using adjustbox here. However, Sphinx
.. is a very bad behaviored guy: if the table has more than 30 cols,
.. it switches to long table, and there's no way to override it.
.. raw:: latex
\newline\newline\begin{adjustbox}{width=\columnwidth}
\begingroup
\tiny
\setlength{\tabcolsep}{2pt}
.. tabularcolumns:: |p{7.6cm}|p{1.6cm}|p{0.7cm}|p{0.5cm}|p{0.5cm}|p{0.5cm}|p{0.5cm}|p{0.5cm}|p{0.5cm}|p{0.5cm}|p{0.5cm}|p{0.5cm}|p{0.5cm}|p{0.5cm}|p{0.5cm}|
.. tabularcolumns:: |p{4.0cm}|p{0.7cm}|p{0.3cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|
.. _v4l2-mbus-pixelcode-bayer:
......@@ -2314,7 +2319,7 @@ organization is given as an example for the first pixel only.
.. raw:: latex
\end{adjustbox}\newline\newline
\endgroup
Packed YUV Formats
......
......@@ -129,8 +129,8 @@ Selection targets and flags are documented in
.. _sel-const-adjust:
.. figure:: vidioc-g-selection_files/constraints.*
:alt: constraints.png
.. figure:: constraints.*
:alt: constraints.pdf / constraints.svg
:align: center
Size adjustments with constraint flags.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment