Corrected various spelling mistakes in comments, documentation, and
variable names across the project. Changes include:
- Documentation files (CONTRIBUTING.md, README.md, etc.)
- Source code comments in C/C++ files
- Function parameter names and descriptions
No functional changes were made.
```
ultragrid/src/video_capture/ximea.c:100:27: warning: variable length array folded to constant array as an extension [-Wgnu-folding-constant]
100 | char path[strlen(XIMEA_LIBRARY_PATH) + 1 + strlen(XIMEA_LIBRARY_NAME) + 1];
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
```
Both XIMEA_LIBRARY_PATH and XIMEA_LIBRARY_NAME are actually char[]
defined in config.h.
Since now the options can be specified generically by FourCC 'cfpr' (capture) and 'pfpr'
(display), there is no need to have this explicitly.
Also it doesn't seem to be much useful (at least with the PsF stream from
XDCAM, the stream is detected to be interlaced, not progressive, even
though decklink reports BMDDeckLinkSupportsAutoSwitchingPPsFOnInput=yes).
Print separate seaction with deveices in :help as it is common in other
modules (eg. decklink). Previously, this was written as a part of the
option describing "device:", but it doesn't seem appropriate.
+ 2 tab indent for (optional) device channel listing (parent 1 tab)
For bidirectional cards (eg. deltacast hd elp-d 80), the channels can be
configured in a layout that lower indices are assigned to RX and higher
to TX (so 0-8 lower-indexed pins are RX and the rest is TX).
So if using RX channel=2 (zero-indexed), at least 3 RX channels need
to be taken in order for the 3rd channel to be RX.
- if quad channel not enabled, do not disable bypass relay on channel
other than selected
- assume that quad-channel starts from channel=0 (== channel is not
explicitly specified)
- delta_set_nb_channels called with 4 rx channels, not one (as in
Sample_RX4K.cpp)
- fixed a leak of s->devices (CID 472157)
- fix partial display_done (when eg. second device from 2 fail to init,
do not call the vidcap_done on this - assumes non-NULL)
- remove s!=NULL after assertion on that
If font is not set explicitly, MagickQueryFontMetrics fails with:
```
[text vo_pp.] MagickQueryFontMetrics failed: unable to read font `helvetica' @ error/annotate.c/RenderFreetype/1658!
```
(using ImageMagick 7.1.1)
1. to SDL3 nv12 (not supported before)
2. to_lavc - use rgba_to_bgra - the vc_copyline version was not keeping alpha
(if ever used - this may cause regressions, unfortunately, if alpha is
assumed to be 100%, because the orig version set it always)
3. uyvy_to_i420 use by testcard and to_lavc
uyvy_to_i420: do not write out of bounds
If width % 2 = 1, 1 extra luma on first line of pair will override the
first luma on the second.
Sync the h264_stream source with [upstream] (commit 70124d30) because
the decoding of 4:4:4 subsampled H.264 video fails. Problematic stream
can be generated with:
```
docker run --rm -it --network=host bluenviron/mediamtx
ffmpeg -re -f lavfi -i smptebars=s=1920x1080 -pix_fmt yuv444p \
-vcodec libx264 -f rtsp rtsp://localhost:8554/mystream
```
For that the read_seq_parameter_set_rbsp() called on PPS NALU from SDP
(sprop-parameter-sets) gave completly wrong resolution 16x160 - evidently
the header was misinterpreted.
The code is taken mostly unmodified (just internal functions set static
in prototype). debug_sps() not updated (no longer compiles so commented
out).
[upstream]: https://github.com/aizvorski/h264bitstream