~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/userspace-api/media/v4l/dev-output.rst

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/userspace-api/media/v4l/dev-output.rst (Version linux-6.12-rc7) and /Documentation/userspace-api/media/v4l/dev-output.rst (Version linux-5.6.19)


  1 .. SPDX-License-Identifier: GFDL-1.1-no-invari    
  2 .. c:namespace:: V4L                              
  3                                                   
  4 .. _output:                                       
  5                                                   
  6 **********************                            
  7 Video Output Interface                            
  8 **********************                            
  9                                                   
 10 Video output devices encode stills or image se    
 11 signal. With this interface applications can c    
 12 process and move images from user space to the    
 13                                                   
 14 Conventionally V4L2 video output devices are a    
 15 device special files named ``/dev/video`` and     
 16 ``/dev/video63`` with major number 81 and mino    
 17 ``/dev/video`` is typically a symbolic link to    
 18 device.                                           
 19                                                   
 20 .. note:: The same device file names are used     
 21                                                   
 22 Querying Capabilities                             
 23 =====================                             
 24                                                   
 25 Devices supporting the video output interface     
 26 ``V4L2_CAP_VIDEO_OUTPUT`` or ``V4L2_CAP_VIDEO_    
 27 the ``capabilities`` field of struct              
 28 :c:type:`v4l2_capability` returned by the         
 29 :ref:`VIDIOC_QUERYCAP` ioctl. As secondary dev    
 30 functions they may also support the :ref:`raw     
 31 (``V4L2_CAP_VBI_OUTPUT``) interface. At least     
 32 streaming I/O methods must be supported. Modul    
 33 are optional.                                     
 34                                                   
 35 Supplemental Functions                            
 36 ======================                            
 37                                                   
 38 Video output devices shall support :ref:`audio    
 39 :ref:`modulator <tuner>`, :ref:`controls <cont    
 40 :ref:`cropping and scaling <crop>` and            
 41 :ref:`streaming parameter <streaming-par>` ioc    
 42 :ref:`video output <video>` ioctls must be sup    
 43 output devices.                                   
 44                                                   
 45 Image Format Negotiation                          
 46 ========================                          
 47                                                   
 48 The output is determined by cropping and image    
 49 former select an area of the video picture whe    
 50 the latter how images are stored in memory, i.    
 51 the number of bits per pixel or width and heig    
 52 define how images are scaled in the process.      
 53                                                   
 54 As usual these parameters are *not* reset at :    
 55 time to permit Unix tool chains, programming a    
 56 to it as if it was a plain file. Well written     
 57 they really get what they want, including crop    
 58                                                   
 59 Cropping initialization at minimum requires to    
 60 defaults. An example is given in :ref:`crop`.     
 61                                                   
 62 To query the current image format applications    
 63 a struct :c:type:`v4l2_format` to                 
 64 ``V4L2_BUF_TYPE_VIDEO_OUTPUT`` or ``V4L2_BUF_T    
 65 and call the :ref:`VIDIOC_G_FMT <VIDIOC_G_FMT>    
 66 to this structure. Drivers fill the struct        
 67 :c:type:`v4l2_pix_format` ``pix`` or the struc    
 68 :c:type:`v4l2_pix_format_mplane` ``pix_mp``       
 69 member of the ``fmt`` union.                      
 70                                                   
 71 To request different parameters applications s    
 72 struct :c:type:`v4l2_format` as above and init    
 73 fields of the struct :c:type:`v4l2_pix_format`    
 74 ``vbi`` member of the ``fmt`` union, or better    
 75 of :ref:`VIDIOC_G_FMT <VIDIOC_G_FMT>`, and cal    
 76 ioctl with a pointer to this structure. Driver    
 77 parameters and finally return the actual param    
 78 does.                                             
 79                                                   
 80 Like :ref:`VIDIOC_S_FMT <VIDIOC_G_FMT>` the :r    
 81 can be used to learn about hardware limitation    
 82 possibly time consuming hardware preparations.    
 83                                                   
 84 The contents of struct :c:type:`v4l2_pix_forma    
 85 struct :c:type:`v4l2_pix_format_mplane` are       
 86 discussed in :ref:`pixfmt`. See also the speci    
 87 :ref:`VIDIOC_G_FMT <VIDIOC_G_FMT>`, :ref:`VIDI    
 88 details. Video output devices must implement b    
 89 and :ref:`VIDIOC_S_FMT <VIDIOC_G_FMT>` ioctl,     
 90 requests and always returns default parameters    
 91 :ref:`VIDIOC_TRY_FMT <VIDIOC_G_FMT>` is option    
 92                                                   
 93 Writing Images                                    
 94 ==============                                    
 95                                                   
 96 A video output device may support the :ref:`wr    
 97 and/or streaming (:ref:`memory mapping <mmap>`    
 98 :ref:`user pointer <userp>`) I/O. See :ref:`io    
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php