Video4Linux (V4L) driver-specific documentation¶
Copyright © 1999-2016 : LinuxTV Developers
This documentation is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation version 2 of the License.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
For more details see the file COPYING in the source distribution of Linux.
Table of Contents
- 1. Guidelines for Video4Linux pixel format 4CCs
- 2. Infrared remote control support in video4linux drivers
- 3. Using with lircd
- 4. Using without lircd
- 5. Tuner drivers
- 6. Cards List
- 7. BCM2835 ISP Driver
- 8. The bttv driver
- 8.1. Release notes for bttv
- 8.2. Make bttv work with your card
- 8.3. Autodetecting cards
- 8.4. Still doesn’t work?
- 8.5. Modprobe options
- 8.6. If the box freezes hard with bttv
- 8.7. Bttv quirks
- 8.8. bttv and sound mini howto
- 8.9. Cards
- 8.9.1. Supported cards: Bt848/Bt848a/Bt849/Bt878/Bt879 cards
- 8.9.2. MATRIX Vision
- 8.9.3. Miro/Pinnacle PCTV
- 8.9.4. Hauppauge Win/TV pci
- 8.9.5. Askey CPH-Series
- 8.9.6. Lifeview Flyvideo Series:
- 8.9.7. Typhoon TV card series:
- 8.9.8. Guillemot
- 8.9.9. Mentor
- 8.9.10. Prolink
- 8.9.11. Dynalink
- 8.9.12. Phoebemicro
- 8.9.13. Genius/Kye
- 8.9.14. Tekram
- 8.9.15. Lucky Star
- 8.9.16. Leadtek
- 8.9.17. KNC One
- 8.9.18. Provideo
- 8.9.19. Highscreen
- 8.9.20. Zoltrix
- 8.9.21. AVerMedia
- 8.9.22. Aimslab
- 8.9.23. IXMicro (former: IMS=Integrated Micro Solutions)
- 8.9.24. Lifetec/Medion/Tevion/Aldi
- 8.9.25. Modular Technologies (www.modulartech.com) UK
- 8.9.26. Terratec
- 8.9.27. Technisat
- 8.9.28. Siemens
- 8.9.29. Powercolor
- 8.9.30. Pinnacle
- 8.9.31. Lenco
- 8.9.32. Iomega
- 8.9.33. LML
- 8.9.34. Grandtec
- 8.9.35. Koutech
- 8.9.36. IODATA (jp)
- 8.9.37. Canopus (jp)
- 8.9.38. www.sigmacom.co.kr
- 8.9.39. www.sasem.co.kr
- 8.9.40. hama
- 8.9.41. Sigma Designs
- 8.9.42. Formac
- 8.9.43. ATI
- 8.9.44. Diamond Multimedia
- 8.9.45. Aopen
- 8.9.46. Intel
- 8.9.47. STB
- 8.9.48. Videologic
- 8.9.49. Technotrend
- 8.9.50. Teles
- 8.9.51. Remote Vision
- 8.9.52. Boeder
- 8.9.53. Media-Surfer (esc-kathrein.de)
- 8.9.54. Jetway (www.jetway.com.tw)
- 8.9.55. Galaxis
- 8.9.56. Hauppauge
- 8.9.57. Matrix-Vision
- 8.9.58. Conceptronic (.net)
- 8.9.59. BestData
- 8.9.60. Gallant (www.gallantcom.com) www.minton.com.tw
- 8.9.61. Asonic (www.asonic.com.cn) (website down)
- 8.9.62. Hoontech
- 8.9.63. Teppro (www.itcteppro.com.tw)
- 8.9.64. Kworld (www.kworld.com.tw)
- 8.9.65. JTT/ Justy Corp.(http://www.jtt.ne.jp/)
- 8.9.66. ADS www.adstech.com
- 8.9.67. AVEC www.prochips.com
- 8.9.68. NoBrand
- 8.9.69. Mach www.machspeed.com
- 8.9.70. Eline www.eline-net.com/
- 8.9.71. Spirit
- 8.9.72. Boser www.boser.com.tw
- 8.9.73. Satelco www.citycom-gmbh.de, www.satelco.de
- 8.9.74. Sensoray www.sensoray.com
- 8.9.75. CEI (Chartered Electronics Industries Pte Ltd [CEI] [FCC ID HBY])
- 8.9.76. AITech
- 8.9.77. MAXRON
- 8.9.78. www.ids-imaging.de
- 8.9.79. www.sknet-web.co.jp
- 8.9.80. A-Max www.amaxhk.com (Colormax, Amax, Napa)
- 8.9.81. Cybertainment
- 8.9.82. VCR (http://www.vcrinc.com/)
- 8.9.83. Twinhan
- 8.9.84. MSI
- 8.9.85. Focus www.focusinfo.com
- 8.9.86. Sdisilk www.sdisilk.com/
- 8.9.87. www.euresys.com
- 8.9.88. PMC/Pace
- 8.9.89. Mercury www.kobian.com (UK and FR)
- 8.9.90. TEC sound
- 8.9.91. Lorenzen www.lorenzen.de
- 8.9.92. Origo (.uk) www.origo2000.com
- 8.9.93. I/O Magic www.iomagic.com
- 8.9.94. Arowana
- 8.9.95. iTVC15 boards
- 8.9.96. Asus www.asuscom.com
- 8.9.97. Hoontech
- 8.10. Chips used at bttv devices
- 8.11. Specs
- 8.12. Thanks
- 8.13. Contributors
- 9. The cafe_ccic driver
- 10. The cpia2 driver
- 11. The cx18 driver
- 12. The cx2341x driver
- 12.1. Memory at cx2341x chips
- 12.2. Missing documentation
- 12.3. The cx2341x firmware upload
- 12.4. How to call the firmware API
- 12.5. OSD firmware API description
- 12.5.1. CX2341X_OSD_GET_FRAMEBUFFER
- 12.5.2. CX2341X_OSD_GET_PIXEL_FORMAT
- 12.5.3. CX2341X_OSD_SET_PIXEL_FORMAT
- 12.5.4. CX2341X_OSD_GET_STATE
- 12.5.5. CX2341X_OSD_SET_STATE
- 12.5.6. CX2341X_OSD_GET_OSD_COORDS
- 12.5.7. CX2341X_OSD_SET_OSD_COORDS
- 12.5.8. CX2341X_OSD_GET_SCREEN_COORDS
- 12.5.9. CX2341X_OSD_SET_SCREEN_COORDS
- 12.5.10. CX2341X_OSD_GET_GLOBAL_ALPHA
- 12.5.11. CX2341X_OSD_SET_GLOBAL_ALPHA
- 12.5.12. CX2341X_OSD_SET_BLEND_COORDS
- 12.5.13. CX2341X_OSD_GET_FLICKER_STATE
- 12.5.14. CX2341X_OSD_SET_FLICKER_STATE
- 12.5.15. CX2341X_OSD_BLT_COPY
- 12.5.16. CX2341X_OSD_BLT_FILL
- 12.5.17. CX2341X_OSD_BLT_TEXT
- 12.5.18. CX2341X_OSD_SET_FRAMEBUFFER_WINDOW
- 12.5.19. CX2341X_OSD_SET_CHROMA_KEY
- 12.5.20. CX2341X_OSD_GET_ALPHA_CONTENT_INDEX
- 12.5.21. CX2341X_OSD_SET_ALPHA_CONTENT_INDEX
- 12.6. Encoder firmware API description
- 12.6.1. CX2341X_ENC_PING_FW
- 12.6.2. CX2341X_ENC_START_CAPTURE
- 12.6.3. CX2341X_ENC_STOP_CAPTURE
- 12.6.4. CX2341X_ENC_SET_AUDIO_ID
- 12.6.5. CX2341X_ENC_SET_VIDEO_ID
- 12.6.6. CX2341X_ENC_SET_PCR_ID
- 12.6.7. CX2341X_ENC_SET_FRAME_RATE
- 12.6.8. CX2341X_ENC_SET_FRAME_SIZE
- 12.6.9. CX2341X_ENC_SET_BIT_RATE
- 12.6.10. CX2341X_ENC_SET_GOP_PROPERTIES
- 12.6.11. CX2341X_ENC_SET_ASPECT_RATIO
- 12.6.12. CX2341X_ENC_SET_DNR_FILTER_MODE
- 12.6.13. CX2341X_ENC_SET_DNR_FILTER_PROPS
- 12.6.14. CX2341X_ENC_SET_CORING_LEVELS
- 12.6.15. CX2341X_ENC_SET_SPATIAL_FILTER_TYPE
- 12.6.16. CX2341X_ENC_SET_VBI_LINE
- 12.6.17. CX2341X_ENC_SET_STREAM_TYPE
- 12.6.18. CX2341X_ENC_SET_OUTPUT_PORT
- 12.6.19. CX2341X_ENC_SET_AUDIO_PROPERTIES
- 12.6.20. CX2341X_ENC_HALT_FW
- 12.6.21. CX2341X_ENC_GET_VERSION
- 12.6.22. CX2341X_ENC_SET_GOP_CLOSURE
- 12.6.23. CX2341X_ENC_GET_SEQ_END
- 12.6.24. CX2341X_ENC_SET_PGM_INDEX_INFO
- 12.6.25. CX2341X_ENC_SET_VBI_CONFIG
- 12.6.26. CX2341X_ENC_SET_DMA_BLOCK_SIZE
- 12.6.27. CX2341X_ENC_GET_PREV_DMA_INFO_MB_10
- 12.6.28. CX2341X_ENC_GET_PREV_DMA_INFO_MB_9
- 12.6.29. CX2341X_ENC_SCHED_DMA_TO_HOST
- 12.6.30. CX2341X_ENC_INITIALIZE_INPUT
- 12.6.31. CX2341X_ENC_SET_FRAME_DROP_RATE
- 12.6.32. CX2341X_ENC_PAUSE_ENCODER
- 12.6.33. CX2341X_ENC_REFRESH_INPUT
- 12.6.34. CX2341X_ENC_SET_COPYRIGHT
- 12.6.35. CX2341X_ENC_SET_EVENT_NOTIFICATION
- 12.6.36. CX2341X_ENC_SET_NUM_VSYNC_LINES
- 12.6.37. CX2341X_ENC_SET_PLACEHOLDER
- 12.6.38. CX2341X_ENC_MUTE_VIDEO
- 12.6.39. CX2341X_ENC_MUTE_AUDIO
- 12.6.40. CX2341X_ENC_SET_VERT_CROP_LINE
- 12.6.41. CX2341X_ENC_MISC
- 12.7. Decoder firmware API description
- 12.7.1. CX2341X_DEC_PING_FW
- 12.7.2. CX2341X_DEC_START_PLAYBACK
- 12.7.3. CX2341X_DEC_STOP_PLAYBACK
- 12.7.4. CX2341X_DEC_SET_PLAYBACK_SPEED
- 12.7.5. CX2341X_DEC_STEP_VIDEO
- 12.7.6. CX2341X_DEC_SET_DMA_BLOCK_SIZE
- 12.7.7. CX2341X_DEC_GET_XFER_INFO
- 12.7.8. CX2341X_DEC_GET_DMA_STATUS
- 12.7.9. CX2341X_DEC_SCHED_DMA_FROM_HOST
- 12.7.10. CX2341X_DEC_PAUSE_PLAYBACK
- 12.7.11. CX2341X_DEC_HALT_FW
- 12.7.12. CX2341X_DEC_SET_STANDARD
- 12.7.13. CX2341X_DEC_GET_VERSION
- 12.7.14. CX2341X_DEC_SET_STREAM_INPUT
- 12.7.15. CX2341X_DEC_GET_TIMING_INFO
- 12.7.16. CX2341X_DEC_SET_AUDIO_MODE
- 12.7.17. CX2341X_DEC_SET_EVENT_NOTIFICATION
- 12.7.18. CX2341X_DEC_SET_DISPLAY_BUFFERS
- 12.7.19. CX2341X_DEC_EXTRACT_VBI
- 12.7.20. CX2341X_DEC_SET_DECODER_SOURCE
- 12.7.21. CX2341X_DEC_SET_PREBUFFERING
- 12.8. PVR350 Video decoder registers 0x02002800 -> 0x02002B00
- 12.9. The cx231xx DMA engine
- 12.10. Non-compressed file format
- 12.11. Format of embedded V4L2_MPEG_STREAM_VBI_FMT_IVTV VBI data
- 13. The cx88 driver
- 14. The VPBE V4L2 driver design
- 15. The Samsung S5P/EXYNOS4 FIMC driver
- 16. i.MX Video Capture Driver
- 16.1. Introduction
- 16.2. Features
- 16.3. Entities
- 16.4. imx6-mipi-csi2
- 16.5. ipuX_csiY_mux
- 16.6. ipuX_csiY
- 16.7. Cropping in ipuX_csiY
- 16.8. Frame Skipping in ipuX_csiY
- 16.9. Frame Interval Monitor in ipuX_csiY
- 16.10. ipuX_vdic
- 16.11. ipuX_ic_prp
- 16.12. ipuX_ic_prpenc
- 16.13. ipuX_ic_prpvf
- 16.14. Capture Pipelines
- 16.15. Unprocessed Video Capture:
- 16.16. IC Direct Conversions:
- 16.17. Motion Compensated De-interlace:
- 16.18. Usage Notes
- 16.19. SabreLite with OV5642 and OV5640
- 16.20. SabreAuto with ADV7180 decoder
- 16.21. SabreSD with MIPI CSI-2 OV5640
- 16.22. Known Issues
- 16.23. File list
- 16.24. References
- 16.25. Authors
- 17. i.MX7 Video Capture Driver
- 18. Intel Image Processing Unit 3 (IPU3) Imaging Unit (ImgU) driver
- 19. The ivtv driver
- 20. Maxim Integrated MAX2175 RF to bits tuner driver
- 21. Vaio Picturebook Motion Eye Camera Driver
- 22. OMAP 3 Image Signal Processor (ISP) driver
- 22.1. Introduction
- 22.2. Split to subdevs
- 22.3. Controlling the OMAP 3 ISP
- 22.4. Events
- 22.5. Private IOCTLs
- 22.6. CCDC and preview block IOCTLs
- 22.7. Statistic blocks IOCTLs
- 22.8. VIDIOC_OMAP3ISP_STAT_EN
- 22.9. VIDIOC_OMAP3ISP_AEWB_CFG, VIDIOC_OMAP3ISP_HIST_CFG and VIDIOC_OMAP3ISP_AF_CFG
- 22.10. VIDIOC_OMAP3ISP_STAT_REQ
- 22.11. Technical reference manuals (TRMs) and other documentation
- 22.12. References
- 23. OMAP4 ISS Driver
- 24. Philips webcams (pwc driver)
- 25. The pvrusb2 driver
- 26. PXA-Camera Host Driver
- 27. Qualcomm Camera Subsystem driver
- 28. The Radiotrack radio driver
- 29. Renesas R-Car Fine Display Processor (FDP1) Driver
- 30. The saa7134 driver
- 31. Cropping and Scaling algorithm, used in the sh_mobile_ceu_camera driver
- 32. The Silicon Labs Si470x FM Radio Receivers driver
- 33. The Silicon Labs Si4713 FM Radio Transmitter Driver
- 34. The SI476x Driver
- 35. The Soc-Camera Drivers
- 36. The Linux USB Video Class (UVC) driver
- 37. The Virtual Media Controller Driver (vimc)
- 38. The Virtual Video Test Driver (vivid)
- 38.1. Configuring the driver
- 38.2. Video Capture
- 38.3. Video Output
- 38.4. VBI Capture
- 38.5. VBI Output
- 38.6. Radio Receiver
- 38.7. Radio Transmitter
- 38.8. Software Defined Radio Receiver
- 38.9. Controls
- 38.10. Video, VBI and RDS Looping
- 38.11. Cropping, Composing, Scaling
- 38.12. Formats
- 38.13. Capture Overlay
- 38.14. Output Overlay
- 38.15. CEC (Consumer Electronics Control)
- 38.16. Some Future Improvements
- 39. Zoran 364xx based USB webcam module