Skip to content

Commit

Permalink
Lots more work on the camera hardware chapter
Browse files Browse the repository at this point in the history
Incorporating various bits from 6by9 and jamesh's reviews
  • Loading branch information
waveform80 committed Jan 4, 2017
1 parent 72a687f commit 2a82582
Show file tree
Hide file tree
Showing 9 changed files with 2,715 additions and 212 deletions.
514 changes: 431 additions & 83 deletions docs/fov.rst

Large diffs are not rendered by default.

Binary file modified docs/images/camera_architecture.pdf
Binary file not shown.
Binary file modified docs/images/camera_architecture.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1,085 changes: 966 additions & 119 deletions docs/images/camera_architecture.svg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/gpu_architecture.pdf
Binary file not shown.
Binary file added docs/images/gpu_architecture.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1,306 changes: 1,306 additions & 0 deletions docs/images/gpu_architecture.svg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
20 changes: 11 additions & 9 deletions picamera/camera.py
Original file line number Diff line number Diff line change
Expand Up @@ -934,11 +934,11 @@ def start_recording(
additional options:
* *profile* - The H.264 profile to use for encoding. Defaults to
'high', but can be one of 'baseline', 'main', 'high', or
'high', but can be one of 'baseline', 'main', 'extended', 'high', or
'constrained'.
* *level* - The H.264 level to use for encoding. Defaults to '4', but
can be one of '4', '4.1', or '4.2'.
* *level* - The `H.264 level`_ to use for encoding. Defaults to '4',
but can be any H.264 level up to '4.2'.
* *intra_period* - The key frame rate (the rate at which I-frames are
inserted in the output). Defaults to ``None``, but can be any 32-bit
Expand Down Expand Up @@ -970,10 +970,10 @@ def start_recording(
All encoded formats accept the following additional options:
* *bitrate* - The bitrate at which video will be encoded. Defaults to
17000000 (17Mbps) if not specified. The maximum value is 25000000
(25Mbps), except for H.264 level 4.2 for which the maximum is
62500000 (62.5Mbps). Bitrate 0 indicates the encoder should not use
bitrate control (the encoder is limited by the quality only).
17000000 (17Mbps) if not specified. The maximum value depends on the
selected `H.264 level`_ and profile. Bitrate 0 indicates the encoder
should not use bitrate control (the encoder is limited by the quality
only).
* *quality* - Specifies the quality that the encoder should attempt
to maintain. For the ``'h264'`` format, use values between 10 and 40
Expand All @@ -998,6 +998,8 @@ def start_recording(
.. versionchanged:: 1.11
Support for buffer outputs was added.
.. _H.264 level: https://en.wikipedia.org/wiki/H.264/MPEG-4_AVC#Levels
"""
if 'quantization' in options:
warnings.warn(
Expand Down Expand Up @@ -1304,8 +1306,8 @@ def capture(
specifies the port of the video splitter that the image encoder will be
attached to. This defaults to ``0`` and most users will have no need to
specify anything different. This parameter is ignored when
*use_video_port* is ``False``. See :ref:`under_the_hood` for more
information about the video splitter.
*use_video_port* is ``False``. See :ref:`mmal` for more information
about the video splitter.
If *resize* is not ``None`` (the default), it must be a two-element
tuple specifying the width and height that the image should be resized
Expand Down
2 changes: 1 addition & 1 deletion picamera/mmalobj.py
Original file line number Diff line number Diff line change
Expand Up @@ -1641,7 +1641,7 @@ class MMALConnection(MMALObject):
The connection will automatically negotiate the most efficient format
supported by both ports (implicitly handling the incompatibility of some
OPAQUE sub-formats). See :ref:`under_the_hood` for more information.
OPAQUE sub-formats). See :ref:`mmal` for more information.
"""
__slots__ = ('_connection',)

Expand Down

0 comments on commit 2a82582

Please sign in to comment.