€•«2Œsphinx.addnodes”Œdocument”“”)�”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)�”}”(hhh]”(hŒ pending_xref”“”)�”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…”�”}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ*/translations/zh_CN/admin-guide/media/cx88”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)�”}”(hhh]”hŒChinese (Traditional)”…”�”}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ*/translations/zh_TW/admin-guide/media/cx88”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒItalian”…”�”}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ*/translations/it_IT/admin-guide/media/cx88”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒJapanese”…”�”}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ*/translations/ja_JP/admin-guide/media/cx88”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒKorean”…”�”}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ*/translations/ko_KR/admin-guide/media/cx88”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒPortuguese (Brazilian)”…”�”}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ*/translations/pt_BR/admin-guide/media/cx88”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒSpanish”…”�”}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ*/translations/sp_SP/admin-guide/media/cx88”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒcomment”“”)�”}”(hŒ SPDX-License-Identifier: GPL-2.0”h]”hŒ SPDX-License-Identifier: GPL-2.0”…”�”}”hh·sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1hµhhh²hh³ŒD/var/lib/git/docbuild/linux/Documentation/admin-guide/media/cx88.rst”h´KubhŒsection”“”)�”}”(hhh]”(hŒtitle”“”)�”}”(hŒThe cx88 driver”h]”hŒThe cx88 driver”…”�”}”(hhÏh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhhÊh²hh³hÇh´KubhŒ paragraph”“”)�”}”(hŒAuthor: Gerd Hoffmann”h]”hŒAuthor: Gerd Hoffmann”…”�”}”(hhßh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KhhÊh²hubhÞ)�”}”(hŒ2This is a v4l2 device driver for the cx2388x chip.”h]”hŒ2This is a v4l2 device driver for the cx2388x chip.”…”�”}”(hhíh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KhhÊh²hubhÉ)�”}”(hhh]”(hÎ)�”}”(hŒCurrent status”h]”hŒCurrent status”…”�”}”(hhþh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhhûh²hh³hÇh´K ubhŒdefinition_list”“”)�”}”(hhh]”(hŒdefinition_list_item”“”)�”}”(hŒ*video - Works. - Overlay isn't supported. ”h]”(hŒterm”“”)�”}”(hŒvideo”h]”hŒvideo”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´KhjubhŒ definition”“”)�”}”(hhh]”hŒ bullet_list”“”)�”}”(hhh]”(hŒ list_item”“”)�”}”(hŒWorks.”h]”hÞ)�”}”(hj5h]”hŒWorks.”…”�”}”(hj7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´Khj3ubah}”(h]”h ]”h"]”h$]”h&]”uh1j1hj.ubj2)�”}”(hŒOverlay isn't supported. ”h]”hÞ)�”}”(hŒOverlay isn't supported.”h]”hŒOverlay isn’t supported.”…”�”}”(hjNh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KhjJubah}”(h]”h ]”h"]”h$]”h&]”uh1j1hj.ubeh}”(h]”h ]”h"]”h$]”h&]”Œbullet”Œ-”uh1j,h³hÇh´Khj)ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´Khjubj)�”}”(hŒÔaudio - Works. The TV standard detection is made by the driver, as the hardware has bugs to auto-detect. - audio data dma (i.e. recording without loopback cable to the sound card) is supported via cx88-alsa. ”h]”(j)�”}”(hŒaudio”h]”hŒaudio”…”�”}”(hjzh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´Khjvubj()�”}”(hhh]”j-)�”}”(hhh]”(j2)�”}”(hŒ`Works. The TV standard detection is made by the driver, as the hardware has bugs to auto-detect.”h]”hÞ)�”}”(hŒ`Works. The TV standard detection is made by the driver, as the hardware has bugs to auto-detect.”h]”hŒ`Works. The TV standard detection is made by the driver, as the hardware has bugs to auto-detect.”…”�”}”(hj’h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KhjŽubah}”(h]”h ]”h"]”h$]”h&]”uh1j1hj‹ubj2)�”}”(hŒeaudio data dma (i.e. recording without loopback cable to the sound card) is supported via cx88-alsa. ”h]”hÞ)�”}”(hŒdaudio data dma (i.e. recording without loopback cable to the sound card) is supported via cx88-alsa.”h]”hŒdaudio data dma (i.e. recording without loopback cable to the sound card) is supported via cx88-alsa.”…”�”}”(hjªh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´Khj¦ubah}”(h]”h ]”h"]”h$]”h&]”uh1j1hj‹ubeh}”(h]”h ]”h"]”h$]”h&]”jhjiuh1j,h³hÇh´Khjˆubah}”(h]”h ]”h"]”h$]”h&]”uh1j'hjvubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´Khjh²hubj)�”}”(hŒvbi - Works. ”h]”(j)�”}”(hŒvbi”h]”hŒvbi”…”�”}”(hjÔh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´KhjÐubj()�”}”(hhh]”j-)�”}”(hhh]”j2)�”}”(hŒWorks. ”h]”hÞ)�”}”(hŒWorks.”h]”hŒWorks.”…”�”}”(hjìh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´Khjèubah}”(h]”h ]”h"]”h$]”h&]”uh1j1hjåubah}”(h]”h ]”h"]”h$]”h&]”jhjiuh1j,h³hÇh´Khjâubah}”(h]”h ]”h"]”h$]”h&]”uh1j'hjÐubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´Khjh²hubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hhûh²hh³Nh´Nubeh}”(h]”Œcurrent-status”ah ]”h"]”Œcurrent status”ah$]”h&]”uh1hÈhhÊh²hh³hÇh´K ubhÉ)�”}”(hhh]”(hÎ)�”}”(hŒ How to add support for new cards”h]”hŒ How to add support for new cards”…”�”}”(hj#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhj h²hh³hÇh´KubhÞ)�”}”(hX#The driver needs some config info for the TV cards. This stuff is in cx88-cards.c. If the driver doesn't work well you likely need a new entry for your card in that file. Check the kernel log (using dmesg) to see whenever the driver knows your card or not. There is a line like this one:”h]”hX%The driver needs some config info for the TV cards. This stuff is in cx88-cards.c. If the driver doesn’t work well you likely need a new entry for your card in that file. Check the kernel log (using dmesg) to see whenever the driver knows your card or not. There is a line like this one:”…”�”}”(hj1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´Khj h²hubhŒ literal_block”“”)�”}”(hŒdcx8800[0]: subsystem: 0070:3400, board: Hauppauge WinTV \ 34xxx models [card=1,autodetected]”h]”hŒdcx8800[0]: subsystem: 0070:3400, board: Hauppauge WinTV \ 34xxx models [card=1,autodetected]”…”�”}”hjAsbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆŒforce”‰Œlanguage”Œnone”Œhighlight_args”}”uh1j?h³hÇh´K%hj h²hubhÞ)�”}”(hŒaIf your card is listed as "board: UNKNOWN/GENERIC" it is unknown to the driver. What to do then?”h]”hŒeIf your card is listed as “board: UNKNOWN/GENERICâ€� it is unknown to the driver. What to do then?”…”�”}”(hjTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K*hj h²hubhŒenumerated_list”“”)�”}”(hhh]”(j2)�”}”(hŒHTry upgrading to the latest snapshot, maybe it has been added meanwhile.”h]”hÞ)�”}”(hŒHTry upgrading to the latest snapshot, maybe it has been added meanwhile.”h]”hŒHTry upgrading to the latest snapshot, maybe it has been added meanwhile.”…”�”}”(hjkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K-hjgubah}”(h]”h ]”h"]”h$]”h&]”uh1j1hjdh²hh³hÇh´Nubj2)�”}”(hŒ‹You can try to create a new entry yourself, have a look at cx88-cards.c. If that worked, mail me your changes as unified diff ("diff -u").”h]”hÞ)�”}”(hŒ‹You can try to create a new entry yourself, have a look at cx88-cards.c. If that worked, mail me your changes as unified diff ("diff -u").”h]”hŒ�You can try to create a new entry yourself, have a look at cx88-cards.c. If that worked, mail me your changes as unified diff (“diff -uâ€�).”…”�”}”(hjƒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K/hjubah}”(h]”h ]”h"]”h$]”h&]”uh1j1hjdh²hh³hÇh´Nubj2)�”}”(hX¢Or you can mail me the config information. We need at least the following information to add the card: - the PCI Subsystem ID ("0070:3400" from the line above, "lspci -v" output is fine too). - the tuner type used by the card. You can try to find one by trial-and-error using the tuner= insmod option. If you know which one the card has you can also have a look at the list in CARDLIST.tuner”h]”(hÞ)�”}”(hŒgOr you can mail me the config information. We need at least the following information to add the card:”h]”hŒgOr you can mail me the config information. We need at least the following information to add the card:”…”�”}”(hj›h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K2hj—ubhŒ block_quote”“”)�”}”(hX-- the PCI Subsystem ID ("0070:3400" from the line above, "lspci -v" output is fine too). - the tuner type used by the card. You can try to find one by trial-and-error using the tuner= insmod option. If you know which one the card has you can also have a look at the list in CARDLIST.tuner”h]”j-)�”}”(hhh]”(j2)�”}”(hŒVthe PCI Subsystem ID ("0070:3400" from the line above, "lspci -v" output is fine too).”h]”hÞ)�”}”(hŒVthe PCI Subsystem ID ("0070:3400" from the line above, "lspci -v" output is fine too).”h]”hŒ^the PCI Subsystem ID (“0070:3400â€� from the line above, “lspci -vâ€� output is fine too).”…”�”}”(hj¶h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K5hj²ubah}”(h]”h ]”h"]”h$]”h&]”uh1j1hj¯ubj2)�”}”(hŒÊthe tuner type used by the card. You can try to find one by trial-and-error using the tuner= insmod option. If you know which one the card has you can also have a look at the list in CARDLIST.tuner”h]”hÞ)�”}”(hŒÊthe tuner type used by the card. You can try to find one by trial-and-error using the tuner= insmod option. If you know which one the card has you can also have a look at the list in CARDLIST.tuner”h]”hŒÊthe tuner type used by the card. You can try to find one by trial-and-error using the tuner= insmod option. If you know which one the card has you can also have a look at the list in CARDLIST.tuner”…”�”}”(hjÎh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K7hjÊubah}”(h]”h ]”h"]”h$]”h&]”uh1j1hj¯ubeh}”(h]”h ]”h"]”h$]”h&]”jhjiuh1j,h³hÇh´K5hj«ubah}”(h]”h ]”h"]”h$]”h&]”uh1j©h³hÇh´K5hj—ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j1hjdh²hh³hÇh´Nubeh}”(h]”h ]”h"]”h$]”h&]”Œenumtype”Œarabic”Œprefix”hŒsuffix”Œ)”uh1jbhj h²hh³hÇh´K-ubeh}”(h]”Œ how-to-add-support-for-new-cards”ah ]”h"]”Œ how to add support for new cards”ah$]”h&]”uh1hÈhhÊh²hh³hÇh´Kubeh}”(h]”Œthe-cx88-driver”ah ]”h"]”Œthe cx88 driver”ah$]”h&]”uh1hÈhhh²hh³hÇh´Kubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hÇuh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)�”}”(hÍNŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”Œentry”Œfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”j2Œerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hÇŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”Œnameids”}”(j j jjjjuŒ nametypes”}”(j ‰j‰j‰uh}”(j hÊjhûjj uŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ decoration”Nh²hub.