18c2ecf20Sopenharmony_ci.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 28c2ecf20Sopenharmony_ci.. c:namespace:: DTV.dmx 38c2ecf20Sopenharmony_ci 48c2ecf20Sopenharmony_ci.. _DMX_GET_STC: 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci=========== 78c2ecf20Sopenharmony_ciDMX_GET_STC 88c2ecf20Sopenharmony_ci=========== 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ciName 118c2ecf20Sopenharmony_ci---- 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ciDMX_GET_STC 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ciSynopsis 168c2ecf20Sopenharmony_ci-------- 178c2ecf20Sopenharmony_ci 188c2ecf20Sopenharmony_ci.. c:macro:: DMX_GET_STC 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci``int ioctl(int fd, DMX_GET_STC, struct dmx_stc *stc)`` 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ciArguments 238c2ecf20Sopenharmony_ci--------- 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci``fd`` 268c2ecf20Sopenharmony_ci File descriptor returned by :c:func:`open()`. 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci``stc`` 298c2ecf20Sopenharmony_ci Pointer to :c:type:`dmx_stc` where the stc data is to be stored. 308c2ecf20Sopenharmony_ci 318c2ecf20Sopenharmony_ciDescription 328c2ecf20Sopenharmony_ci----------- 338c2ecf20Sopenharmony_ci 348c2ecf20Sopenharmony_ciThis ioctl call returns the current value of the system time counter 358c2ecf20Sopenharmony_ci(which is driven by a PES filter of type :c:type:`DMX_PES_PCR <dmx_ts_pes>`). 368c2ecf20Sopenharmony_ciSome hardware supports more than one STC, so you must specify which one by 378c2ecf20Sopenharmony_cisetting the :c:type:`num <dmx_stc>` field of stc before the ioctl (range 0...n). 388c2ecf20Sopenharmony_ciThe result is returned in form of a ratio with a 64 bit numerator 398c2ecf20Sopenharmony_ciand a 32 bit denominator, so the real 90kHz STC value is 408c2ecf20Sopenharmony_ci``stc->stc / stc->base``. 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ciReturn Value 438c2ecf20Sopenharmony_ci------------ 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ciOn success 0 is returned. 468c2ecf20Sopenharmony_ci 478c2ecf20Sopenharmony_ciOn error -1 is returned, and the ``errno`` variable is set 488c2ecf20Sopenharmony_ciappropriately. 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{2.5cm}|p{15.0cm}| 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci.. flat-table:: 538c2ecf20Sopenharmony_ci :header-rows: 0 548c2ecf20Sopenharmony_ci :stub-columns: 0 558c2ecf20Sopenharmony_ci :widths: 1 16 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ci - .. row 1 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_ci - ``EINVAL`` 608c2ecf20Sopenharmony_ci 618c2ecf20Sopenharmony_ci - Invalid stc number. 628c2ecf20Sopenharmony_ci 638c2ecf20Sopenharmony_ciThe generic error codes are described at the 648c2ecf20Sopenharmony_ci:ref:`Generic Error Codes <gen-errors>` chapter. 65