EP1013090A1 - Verfahren und system zur übertragung und dekodierung von daten in einem signal - Google Patents

Verfahren und system zur übertragung und dekodierung von daten in einem signal

Info

Publication number
EP1013090A1
EP1013090A1 EP98935775A EP98935775A EP1013090A1 EP 1013090 A1 EP1013090 A1 EP 1013090A1 EP 98935775 A EP98935775 A EP 98935775A EP 98935775 A EP98935775 A EP 98935775A EP 1013090 A1 EP1013090 A1 EP 1013090A1
Authority
EP
European Patent Office
Prior art keywords
data
signal
suitably
module
clock
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP98935775A
Other languages
English (en)
French (fr)
Other versions
EP1013090A4 (de
Inventor
Jean Etienne Gaudreau
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WAVO Corp
Original Assignee
WAVO Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by WAVO Corp filed Critical WAVO Corp
Publication of EP1013090A1 publication Critical patent/EP1013090A1/de
Publication of EP1013090A4 publication Critical patent/EP1013090A4/de
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
    • H04L25/497Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems by correlative coding, e.g. partial response coding or echo modulation coding transmitters and receivers for partial response systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/025Systems for the transmission of digital non-picture data, e.g. of text during the active part of a television frame
    • H04N7/035Circuits for the digital non-picture data signal, e.g. for slicing of the data signal, for regeneration of the data-clock signal, for error detection or correction of the data signal
    • H04N7/0352Circuits for the digital non-picture data signal, e.g. for slicing of the data signal, for regeneration of the data-clock signal, for error detection or correction of the data signal for regeneration of the clock signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/025Systems for the transmission of digital non-picture data, e.g. of text during the active part of a television frame
    • H04N7/035Circuits for the digital non-picture data signal, e.g. for slicing of the data signal, for regeneration of the data-clock signal, for error detection or correction of the data signal
    • H04N7/0355Circuits for the digital non-picture data signal, e.g. for slicing of the data signal, for regeneration of the data-clock signal, for error detection or correction of the data signal for discrimination of the binary level of the digital data, e.g. amplitude slicers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/025Systems for the transmission of digital non-picture data, e.g. of text during the active part of a television frame
    • H04N7/035Circuits for the digital non-picture data signal, e.g. for slicing of the data signal, for regeneration of the data-clock signal, for error detection or correction of the data signal
    • H04N7/0357Circuits for the digital non-picture data signal, e.g. for slicing of the data signal, for regeneration of the data-clock signal, for error detection or correction of the data signal for error detection or correction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/08Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
    • H04N7/087Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only
    • H04N7/088Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only the inserted signal being digital
    • H04N7/0882Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only the inserted signal being digital for the transmission of character code signals, e.g. for teletext
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/08Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
    • H04N7/087Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only
    • H04N7/088Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only the inserted signal being digital
    • H04N7/0884Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only the inserted signal being digital for the transmission of additional display-information, e.g. menu for programme or channel selection
    • H04N7/0885Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only the inserted signal being digital for the transmission of additional display-information, e.g. menu for programme or channel selection for the transmission of subtitles

Definitions

  • the invention relates to decoding signals, and more particularly, to methods and apparatus for decoding teletext and/or closed caption data embedded within signals such as video signals.
  • Decoder systems for extracting the teletext and closed caption information from the television signal have been developed and made publicly available. These decoder systems are typically hardware systems integrated into the television circuitry. As the television signal is received by the television, the decoder system continuously monitors the incoming signal for codes indicating that teletext or closed caption data follows. The decoder system then decodes the data "on the fly” and provides it to the user.
  • a teletext and closed caption data decoding system provides a software-oriented implementation of the decoding process.
  • the software-oriented implementation tends to reduce the cost of the implementation, as conventional circuitry may be used to perform the decoding and related functions.
  • the software-oriented decoding system provides for improved efficiency with respect to processing resources, which improves its usefulness in a computer environment. Further, the software may be relatively easily redesigned, tested, and implemented.
  • a decoder system includes a processing unit, such as a microprocessor or a microcontroller, which implements both a closed caption module and a teletext module.
  • the system also facilitates high speed data transmission.
  • the data transmission rate is enhanced using partial response coding.
  • the system may also facilitate the transfer of data at different rates. Lower rates may be used for robustness, whereas higher rates may be employed when the signal quality is sufficient.
  • the data distribution may be clocked to the color burst signal, providing high data clock speeds than conventional run-in clocks and greater portions of the vertical blanking available for data injection
  • Figure 1 is a block diagram of a general television system
  • Figures 2A-B are diagrams of portions of anNABTS video signal and a WST video signal, respectively;
  • Figure 3 is a diagram of a portion of a closed caption signal
  • Figures 4A-B are tables illustrating the position and amplitude of multi-level signals in mode 1 and mode 2;
  • Figure 5 is a block diagram of a television system including a secondary transmitter
  • Figure 6 is a block diagram of an encoder
  • Figure 7 is a functional diagram of the functions performed by an encoder
  • Figure 8 is a diagram of the data organization of a data bundle provided by an encoder
  • Figure 9 is a block diagram of a receiver according to various aspects of the present invention.
  • Figure 10 is a block diagram of a system for analyzing closed caption data
  • Figure 11 is a flow diagram of a process for tracking and extracting closed caption data from a digitized television signal
  • Figures 12A-E are flow diagrams of a process for recovering the clock synchronization signal in a closed caption signal
  • Figure 13 is a block diagram of a system for analyzing teletext data
  • Figure 14 is a flow diagram of a process for tracking and extracting teletext data from a digitized television signal
  • Figures 15 A-E are flow diagrams of a process for recovering the clock synchronization signal in a teletext signal
  • Figure 16 is a block diagram of a system for data interpolation
  • Figures 17A-C are block diagrams of systems for equalization
  • Figure 18 is a table listing of exemplary acceptable framing codes exhibiting a one-bit error
  • Figure 19 is a flow diagram of a process for extracting closed caption and teletext data from a television signal
  • Figure 20 is a block diagram of a system for analyzing partial code response encoded data
  • Figure 21 is a flow diagram of a process for tracking and extracting partial code response encoded data from a digitized television signal
  • Figure 22 is a table of characteristics for partial response code operating modes 1 and
  • Figure 23 is a graph of the relative amplitude of the partial response code signal as a function of frequency
  • Figure 24 is a graph of the impulse response of the spectrum of Figure 23;
  • Figure 25 is an eye diagram for a system using a binary partial response scheme
  • Figure 26 is an eye diagram for a system using a 4-ary partial response scheme.
  • a generalized signal transmission and reception system 100 comprises a transmitter 102, a communications medium 104, and a receiver 106.
  • the transmitter 102 suitably comprises a source of television or other video signals to be transmitted to the receiver via the communications medium 104.
  • the communications medium 104 transmits the signals generated by the transmitter 102 to the receiver 106.
  • the receiver 106 decodes the signals and provides the teletext, closed caption, and other data, and suitably video information, to a user.
  • the 525-line 60-fields-per-second NTSC television signal typically includes certain lines in the vertical blanking interval to allow the receiver to synchronize and perform vertical retrace before the active video picture begins.
  • the vertical blanking interval includes lines 1 through 21 which may contain vertical synchronization pulses (lines 1 to 9), vertical interval test signals (VITS), vertical interval reference (VIR) signals, and digital data signals.
  • Vertical blanking interval data transmission is commonly defined as any digitally coded information inserted between lines 10 through 21 (fields 1 and 2) of the analog television signal.
  • Full field data transmission uses the active part of the video signal as well as the VBI for data insertion.
  • Lines 10 through 262 in field 1 and the corresponding lines in field 2 may be used for data transmission.
  • Teletext information is suitably included in the VBI according to a conventional specification, such as North American Broadcast Teletext System (NABTS) or Word System Teletext (WST).
  • NABTS North American Broadcast Teletext System
  • WST Word System Teletext
  • the closed caption data may be integrated into the signal generated by the transmitter 102 in accordance with conventional standards for closed caption transmissions, for example EIA-608 standards.
  • EIA-608 EIA-608
  • the teletext data is suitably integrated into the VBI portion of the video signal.
  • the video signal is a standard NTSC video signal
  • the teletext information is suitably provided within a selected portion of the video signal, for example between lines 10 and 20 of both the odd and even fields of the video signal.
  • teletext information may be transmitted in any or all video lines in place of an actual video line, for example a full field teletext transmission.
  • the video signal in the VBI may include information, for example in the form of pulses or waveforms.
  • the teletext portion of the signal suitably comprises: a video synchronization pulse; a color burst; a clock synchronization signal; a byte synchronization signal; a set of prefix values; and a data block.
  • the video synchronization pulse is suitably provided in accordance with conventional television specifications to indicate the beginning of a line.
  • a color burst in the chroma carrier is transmitted to lock the phase of the receiver's 106 chroma oscillator for demodulation of the transmitted color signals.
  • the color burst may not be included in some types of signals, for example, black and white NTSC video signals.
  • the transmitter 102 may transmit the clock synchronization signal, suitably comprising a sine waveform, to facilitate synchronization of the receiver's 106 data reading components to the transmitted signal.
  • the clock synchronization signal suitably serves to mark the optimal bit position for the remaining portion of the signal.
  • the duration of the clock synchronization signal may vary according to the specifications for the signal. For NABTS and WST signals, however, the clock synchronization signal comprises eight cycles.
  • the receiver 106 can synchronize to track the following data. As described below, however, other signals, such as the color burst, may be used for synchronization purposes, allowing the clock synchronization signal to be ignored or omitted.
  • the transmitter 102 transmits the byte synchronization signal.
  • the byte synchronization signal suitably includes a framing code, for example an eight-bit code, to forecast the transmission of the prefix bytes and the data block.
  • the receiver 106 may determine when the prefix bytes and the data block are about to be received. Accordingly, the transmitter 102 transmits the prefix bytes and the data block after the framing code.
  • the prefix bytes suitably include Hamming encoded bytes. For example, an NABTS signal includes a five-byte packet, and a WST signal includes a two-byte packet, though the prefix's size is variable depending on the values in the first two bytes. Packet structure information, packet address, and continuity index information are suitably included in the prefix bytes.
  • the transmitter 102 transmits the data block, which optionally includes an appropriate suffix.
  • the data and optional suffix block comprise 28 bytes, while the corresponding block in a WST transmission is typically 29 bytes for an NTSC television system.
  • the data block suitably contains the actual data associated with the transmission and is to be analyzed by the receiver 106.
  • the closed caption signal structure is suitably similar to that of the teletext signal.
  • the signal frequency is lower and the data block includes only two bytes with no prefix bytes.
  • the closed caption information is conventionally integrated into line 21 of one or both (odd and even) fields.
  • the closed caption information may, however, be integrated into any VBI lines, or even any video line.
  • the video signal includes the closed caption signal following the byte synchronization signal.
  • the closed caption signal suitably comprises: a horizontal synchronization pulse; a color burst; a clock synchronization signal; a byte synchronization signal; and a data block.
  • the horizontal video synchronization pulse is suitably provided in accordance with conventional television specifications to indicate the beginning of the line. Following the video synchronization pulse, the color burst in the chroma carrier is transmitted for demodulation of the transmitted color signals as previously described.
  • the transmitter 102 transmits the run-in clock synchronization signal to facilitate synchronization of the receiver 106 with the video signal.
  • the duration of the closed caption clock synchronization signal is typically seven cycles long.
  • the transmitter 102 transmits the byte synchronization signal.
  • the byte synchronization signal suitably comprises a three-bit framing code.
  • the arrival of the three-bit framing code indicates that the data block is about to follow. Accordingly, the transmitter 102 transmits the data.
  • the data block comprises only two bytes containing the actual data associated with the closed caption transmission.
  • An alternative embodiment of a data transmission and reception system can deliver higher net data rates than conventional systems.
  • net data rates may exceed 192 kbps in the VBI, or 12 Mbps in full field mode.
  • the major differences between the present high-speed system and other systems are filtering, multi-level coding, synchronization with the color burst, and multiline packetizing.
  • the signal in the vertical blanking interval may include a run-in clock
  • the data frequency may be any suitable frequency.
  • the data frequency is associated with a signal integrated in to the television signal, such as the color burst, so that the run-in clock may be omitted from the signal.
  • the present system suitably includes a clock doubler associated with the color burst so that the actual data clock signal oscillates at 7.15909 MHz.
  • the system further may also operate in conjunction with various operating modes facilitating the transfer of data at different rates.
  • mode 1 has one bit encoded per symbol and can be used for improved robustness
  • mode 2 has two bits per symbol and may be used for higher transfer rates.
  • mode 1 the capacity of each line is suitably 360 bits for a throughput of 21.6 kbps per line.
  • mode 2 the capacity of each line is suitably 720 bits for a throughput of 43.2 kbps per line, with a bit transmission rate of 14.31818 Mbps.
  • Mode 2 may require better signal quality than mode 1 or conventional NABTS signals.
  • the symbol clock rate may be any suitable frequency. As described above, in a color television system in accordance with the present embodiment, the symbol rate may be taken as double the color burst frequency, conventionally 3.579545 MHz, to generate a symbol clock rate of 7.159090 MHz +/- 25 Hz. Thus, in mode 1, each symbol contains one bit of information and is transmitted every symbol clock. The instantaneous bit rate obtained is 7.159090 Mbits/s +/- 25 bits/sec. In mode 2, each symbol contains 2 bits of information.
  • the instantaneous bit rate obtained is 14.31818 Mbits/s +/- 50 bits/sec.
  • the half-amplitude point of the first transition from level 0 to the highest level (in both modes) of the clock synchronization sequence is 9.778 microseconds +/- 0.014 microseconds. Characteristics for both system operating modes are further set forth in Figure 22.
  • the partial response coding modulation with class 1 signaling has a cosine-shaped bell spectrum for relative amplitude as a function of frequency.
  • T is the period of the symbol clock rate, or (1/7.15909).
  • T is the period of the symbol clock rate, or (1/7.15909).
  • the corresponding impulse response of that spectrum is shown in Figure 24, wherein each vertical line represents a sample point.
  • the impulse response in the present embodiment may be expressed in accordance with the following equation:
  • the present system uses class 1 partial response coding, for example as classified by E.R. Kretzmer, "Generalization of a Technique for Binary Data Communication,” IEEE Trans. Comm. Tech., vol. COM- 14, February 1966, pp. 67-68.
  • the partial response coding also called correlative coding, introduces a correlation between the amplitude of successive pulses to form a multilevel signal. This technique increases the bandwidth efficiency, and may be implemented without requiring an excessively high-quality low-pass filter.
  • a class 1 correlative digital filter is relatively simple to implement and its spectral energy distribution is suitable for implementation on television signals.
  • partial response coding is suitably performed by adding two successive impulses:
  • This coding results in a cosine-shaped energy spectrum such that all of the energy distribution tends to fall under half the symbol frequency, which is approximately 3.58 Mhz in the present embodiment.
  • this coding can be realized with a cosine-shaped low-pass filter. Because correct decoding of each symbol depends on the correct decoding of the previous symbol, the above modulation tends to propagate errors. To avoid this problem, the data may be pre-coded prior to the partial response coding.
  • the pre-coding for operating mode 2 is implemented as:
  • the nominal data levels are 70 +/- 2 IRE units and 0 +/- 2 IRE units for the highest and the lowest levels respectively.
  • the seven levels of the multi-level modulation used are suitably equally spaced between these two levels, which result in approximately 11.7 IRE units between each level for mode 2.
  • the three levels are equally spaced between these maximum and minimum levels so that approximately 35 IRE units separate the levels for mode 1.
  • Figure 4A The data waveform may contain minimal overshoot due to modulation filtering; consequently, the peak-to-peak data amplitude may exceed the nominal data amplitude.
  • Figures 25 and 26 illustrate eye diagrams for a system using a binary and 4-ary partial response scheme clocked at 5.727272MHz. As described above, in the present embodiment, all of the energy in the frequency spectrum falls under 4.2 MHz in the video baseband, so there are no out-of-band emissions. Thus, audible artifacts or adjacent channel interference are minimized because no out-of-band emissions are induced. Further, visual degradation of the television signal is minimized because the data are transmitted during the vertical blanking interval. Data is suitably extracted from the video signal by the receiver 106 and made available immediately.
  • Implementation issues may induce delays between the moment that data is acquired by the receiver 106 and the moment that it is made available to the application. For instance, some receiver 106 implementations may signal the application upon each vertical synchronization pulse to indicate that data has accumulated, thus inducing an artificial delay of up to 28 frames, about a half-second.
  • the structure of the data line suitably consists of a string of 368 symbols.
  • the first seven symbols constitute the synchronization sequence, the next 360 symbols are the data and the last symbol is the "forced zero" symbol.
  • Symbols 0 through 7 constitute the framing code and may be selected to distinguish mode 1 from mode 2.
  • the receiver is initiated in one mode, such as mode 2, and remains in its current mode until a framing code designating another mode is received.
  • the framing code is suitably used as a reference for byte synchronization.
  • the synchronization sequence designating mode 1 is 0011012.
  • the synchronization sequence is 3035552.
  • the forced zero symbol brings the signal back to a blank level. Two clock pulses are necessary to do so, which is the purpose of the forced zero bit.
  • the forced zero is suitably inserted after the pre-coding.
  • the transmitter 102 suitably comprises any source of signals, such as video signals including a television signal or the like, including a television broadcast company, a cable service provider, a television camera, or a videocassette system.
  • the transmitter 102 suitably generates a conventional video signal, for example according to NTSC standards.
  • the signals generated by the transmitter 102 suitably include an integrated secondary signal, such as teletext and/or closed caption data in selected blanking intervals.
  • the transmitter suitably generates signals having baseband teletext and/or closed caption information transmitted in a vertical blanking interval (VBI) of the video signal.
  • VBI vertical blanking interval
  • an alternative exemplary signal transmission and reception system 550 comprises includes a primary transmitter 552, the communication medium 104, and a secondary transmitter 554.
  • the primary transmitter 552 suitably transmits a main television signal, such as a national broadcast, with an embedded data signal.
  • the signal is modulated by a modulator 556 and transmitted via the communications medium 104 to the secondary transmitter 554.
  • the secondary transmitter 554 receives the signal, demodulates it, and retrieves the data embedded in the television signal.
  • the secondary transmitter 554 then suitably combines the received television signal with a secondary television signal, such as a local television signal, and encodes the digital data into the secondary television signal.
  • the secondary television signal with the embedded data is then transmitted to the receiver 106. This embodiment accommodates inclusion of the original data signal in local television signals.
  • the primary transmitter 552 may comprise any suitable system for embedding a data signal in the vertical blanking interval of a television signal.
  • the primary transmitter 552 comprises a communications server 560 and an encoder 562.
  • the server 560 suitably performs several tasks, including receiving data from one or more data sources, storing the data, and providing the data to the encoder 562.
  • the server 560 may also perform various other tasks according to the particular needs or desires of a service provider.
  • the server 560 comprises a suitable processing system, such as an INTEL PENTIUM-based computer, executing server software designed to perform selected tasks.
  • the server 560 may comprise software running in a multi-tasking environment including a collection of modules that can be combined to assemble different packages according to a service provider's needs.
  • the server 560 may be configured to accomplish most of its tasks associated with the higher levels of a layered architecture compliant with the seven-layered reference model of the International Organization for Standardization (OSI), including data acquisition, user administration, addressing/encryption, file management, transmission, scheduling, and stream support (real-time or pass-through data transmission).
  • OSI International Organization for Standardization
  • the server 560 may also include other modules, such as network monitoring and management, data compression, billing, hybrid network support, and optimization.
  • the server 560 preferably includes support for multiple data broadcasting protocols, such as NABTS.
  • the encoder 562 suitably comprises a high-speed encoder configured to accept data from the server 560, for example via an RS-422 port at speeds of up to 384kbps, encode them, and insert them at the baseband level on the lines of the television signal reserved for data broadcasting.
  • the net throughput of the encoder 562 depends on the operating mode and the number of lines allocated to data transmission.
  • the encoder 562 suitably performs the operations generally associated with the two lower layers of the OSI reference model, physical and data link.
  • the encoder 562 is capable of handling, on the output side, the complete VBI bandwidth.
  • the encoder 562 comprises a signal generator 550.
  • the signal generator 550 receives the main television signal and the data and embeds the data in the vertical blanking interval.
  • the signal generator 550 may include any suitable component for inserting the data into the vertical blanking interval, such as a Tektronix VITS 200 NTSC VITS Inserter.
  • the signal generator 550 suitably comprises: a multiplexer 552; a digital-to-analog converter (DAC) 554; a pattern generator 556; and a codec 558.
  • the multiplexer 552 selects an input signal from multiple input signals and transmits it to a single output, and may comprise any device for performing this function.
  • the multiplexer 552 receives the main television signal at a first input and the digital data signal at a second input.
  • the multiplexer 552 transmits either the main television signal or the digital data according to a control signal.
  • the control signal selects the digital data for transmission by the multiplexer 552 at selected times, for example during the vertical blanking interval and when digital data is available to be transmitted, and otherwise suitably transmits the main television signal.
  • the pattern generator 556 suitably generates a conventional vertical interval test signal
  • the pattern generator 556 may comprise any suitable mechanism for generating any desired pattern or signal. Signals from the pattern generator 556 and the codec 558 are provided to the DAC 554, which converts the digital data to a corresponding analog signal. The output of the DAC 554 is provided to the multiplexer 552.
  • Codec 558 receives data from a data source and formats it for transmission.
  • the codec 558 includes a serial controller 570 and a data generator 572.
  • the serial controller 570 receives the data and processes the data according to selected criteria.
  • the serial controller 570 suitably comprises a universal asynchronous receiver/transmitter (UART) which receives the serial data, transmits the data to the data generator 572, and performs various functions, for example identifying start bits.
  • the data generator 572 receives the serial data and creates a corresponding waveform for conversion to analog format and insertion into the television signal.
  • the data generator 572 may convert the serial data into multi-bit words and separate the data into lines for transmission.
  • the resulting multi-bit digital signal is then provided to the DAC 554 via a bus 564.
  • the encoder 562 suitably performs several functions to facilitate transmission of the data in the VBI. For example, referring now to Figures 7 and 8, the encoder 562 accumulates data into blocks (step 750) and randomizes the data (step 752), which improves transmission characteristics of the resulting signal. A correction code is then suitably added to the end of each line of data, such as a nine-byte Reed-Solomon code to facilitate forward error correction (step 754). A final line of forward error correction codes, such as Reed-Solomon codes, is also suitably appended to the end of the block. In the present embodiment, each block includes 27 lines of data, wherein each line includes 83 bytes. The error correction codes are suitably based on data organization. In this configuration, the block of data is independent of the video timing.
  • the encoder further suitably adds a block header, such as a low frequency five-byte block header, and a known training sequence for training an equalizer associated with the receiver 106 is also suitably added to the beginning of each block of data (step 756).
  • the header may include any desired information.
  • the header includes indicia to identify which lines of the signal include data to form multi-line data packets. As a result, the receiver 106 can determine which lines contain data by checking the information in the header, and then only processing those lines. Lines that do not contain data are suitably ignored, thus reducing processor requirements.
  • the encoder 562 further converts the serial data bits into symbols for transmission (step 758).
  • Data transmitted in accordance with various aspects of the present invention may be coded using partial response coding (PRC).
  • PRC partial response coding
  • PRC signals suitably include multiple magnitude levels, such as three or seven, in contrast to conventional binary signals.
  • the encoder 562 further suitably pre-codes the signals for error detection and correction (step 756)
  • the encoder 562 may further include pre- equalization filtering (step 764), for example to improve the signal strength and/or clarity.
  • pre- equalization filtering for example to improve the signal strength and/or clarity.
  • the bit-to-symbol conversion and the pre-coding are performed using suitable hardware. Further, multiple functions, such as the bit-to-symbol conversion, the pre- coding, and the filtering may be performed using a lookup table associated with the encoder 562.
  • the resulting data is then combined with the television signal in the VBI.
  • the television signal is provided to a color clock phase lock loop (step 766) which generates a signal based on the color burst frequency.
  • This signal is provided to a clock doubler (step 768), which suitably generates a signal at double the frequency of the color burst.
  • the resulting signal is provided to a VBI injector (step 770), such as the multiplexer 552, which injects the data signal into the television signal during the VBI in conjunction with the doubled color burst signal as a clock signal for the data insertion.
  • the secondary transmitter 554 receives the combined television and data signal, demodulates it, and provides for the addition or substitution of a local television signal.
  • the secondary transmitter 554 suitably includes a demodulator 580; a signal selector 582; and a signal bridge system 584.
  • the demodulator 580 receives the signal received from the primary transmitter 552, demodulates it, and provides the demodulated combined television and data signal to the signal selector 582 and the signal bridge system 584.
  • the signal selector 582 replaces the received television signal with a local television signal, for example at the option of the station operator.
  • the resulting signal is then provided to the signal bridge system 584, which embeds the data signal into the VBI of the signal transmitted by the signal selector 582.
  • the signal bridge system 584 decodes the data from the received television signal and encodes the same information into the television signal generated by the signal selector 582. To effect these tasks, the signal bridge system 584 includes a data decoder 586, like the decoder associated with the receiver 106 described in greater detail below. Further, the signal bridge system 584 includes an encoder 588, such as the encoder 562 described above with respect to the primary transmitter 552. The data decoded from the primary transmitter 552
  • the transmitter 102 transmits the video signal including the teletext and/or the closed caption information to the receiver 106 via the communications medium 104.
  • the communications medium 104 suitably comprises any type of medium, system and/or technique for transmitting signals.
  • the communications medium 104 suitably comprises a broadcast system, cable, wireless communications, fiber optics, cellular systems, microwave transmissions, or any other type of communication system.
  • the signal generated by the transmitter 102 is transmitted via the communications medium 104 to the receiver 106.
  • the receiver 106 is preferably configured to extract the teletext and/or the closed caption data from the video signal.
  • the receiver 106 suitably comprises a decoder and, if desired, various peripherals, such as a printer, display, and the like.
  • the decoder suitably comprises software running on a processor, such as an INTEL PENTIUM microprocessor.
  • the receiver 106 suitably includes a front end card to receive the television signal, demodulate it, digitize it, and store the results in memory.
  • a receiver 106 suitably comprises: a sampling unit 404 for sampling the incoming signal; a memory 406; a processing unit 408, such as a microprocessor; and a set of output buffers 410A-B.
  • the receiver 106 may optionally include a conventional video unit 402 for generating images on a display based on the video signal.
  • the video unit 402 is suitably a conventional video system for receiving the incoming signal and generating an image on a display.
  • the video unit 402 is not a necessary component of a decoding system according to the present invention, and is included in the present embodiment solely for purposes of illustrating a possible configuration of a decoding system according to various aspects of the present invention. In many configurations, the video unit is entirely omitted.
  • the receiver comprises a conventional, general purpose, non-dedicated computer.
  • a "general purpose” or “non-dedicated” computer comprises any processor-based system that is not configured primarily to decode the signal from the transmitter 102, such as a standalone desktop or laptop personal computer, a client-server network terminal, or a processor-based or "smart" television system.
  • the video signal is suitably provided to the sampling unit 404 via a conventional receiving apparatus, such as a broadcast receiver, a cable receiver, or a satellite receiver.
  • the sampling unit 404 samples the video signal at periodic intervals and stores the samples in the main memory 406.
  • the processing unit 408 periodically retrieves data from the main memory 406 and processes some or all of the information.
  • the processing unit 408 suitably comprises any component capable of performing the present functions, including a microprocessor, a digital signal processor, or a microcontroller.
  • the processing unit 408 comprises a microprocessor.
  • the processing unit 408 may be configured to perform other functions, such as execution of conventional computer functions, as the sampling unit 404 stores video signal information in the main memory 406.
  • the processing unit 408 suitably periodically reads the information from the main memory 406, processes the information, and returns to the execution of conventional computer functions.
  • the processing unit 408 may be programmed to extract the teletext and closed caption data from the incoming signal and provide the resulting data to the output buffers 410A-B.
  • the data in the output buffers 410A-B may be used in any manner like any digital data signals, for example, to receive news, download files or programs, accumulate data, and the like.
  • the sampling unit 404 suitably collects data from the incoming signal, for example by sampling, converts the analog signal to a digital representation, and transfers the digital data to the main memory 406.
  • the sampling unit 404 comprises a video grabber unit dedicated to acquiring raw data.
  • the video grabber is a component of another system as well, such as a television or computer video system.
  • the video grabber samples the incoming signal and performs a transfer of the data to the main memory 406, for example at a rate of 24.5454 million samples per second during the VBI.
  • the sampling unit 404 may suitably comprise any system for providing digital data to the processing unit 408 for analysis.
  • the main memory 406 suitably comprises any sort of memory, but preferably provides high speed access and storage, such as a conventional random access memory (RAM).
  • the processing unit 408 suitably comprises a conventional microprocessor for analyzing the digitized signal and extracting the closed caption and teletext data.
  • the microprocessor may be a PENTIUM ® processor from INTEL ® Corporation.
  • the extracted data is written to the buffers 410A-B, which suitably comprise memory blocks.
  • the size of the memory blocks may be configured, suitably dynamically, according to the number of lines containing data in the incoming signal.
  • the data is now ready to be used by the application 412.
  • the processing unit 408 suitably performs multiple functions in the present system.
  • the processing unit 408 suitably comprises the central processing unit for a conventional computer system.
  • the processing unit 408 also extracts the closed caption and teletext data from the video signal.
  • the processing unit 408 includes two software modules to extract the relevant data from the signal. It should be noted that the extraction process described is implemented in software and executed by the processing unit 408. Although discrete components are disclosed, the present embodiment implements the components as software modules executed by the processing unit 408. Nonetheless, alternative embodiments may include dedicated hardware components or a programmable device for performing various individual functions that are executed by the processing unit 408 in the present embodiment.
  • the processing unit 408 suitably includes a closed caption module 500 for identifying portions of the video signal including closed caption data and extracting the data.
  • the closed caption module 500 suitably reads the digital representation of the signal from the main memory 406, recovers the clock synchronization signal, identifies the framing code, and extracts the data from the incoming signal.
  • the closed caption module 500 initially executes a clock recovery process to identify the clock synchronization portion of the video signal (step 602). If the clock synchronization signal is not recovered, for example, if the clock synchronization signal is not detected in the sampled data by the closed caption module 500, the analysis terminates (step 604). It should be noted that this automatic signal detection feature may be configured to be selectively disabled. If the clock synchronization signal is detected in the incoming signal (step 605), the closed caption module 500 uses the clock synchronization signal to extract the closed caption data from the signal via a bit slicing and shifting process (step 606).
  • the closed caption module 500 suitably monitors the extracted data to identify a synchronization pattern from the extracted bits (step 607).
  • the closed caption module 500 of the present embodiment may analyze the binary data for the three-bit framing code preceding the data block.
  • the closed caption module 500 suitably analyzes the binary data for a preselected period or number of bits. If the framing code is not detected within the preselected period, the analysis is discontinued. If the framing code is detected, the closed caption module 500 continues to perform the bit slicing process to extract the incoming closed caption data, for example the conventional 16 closed caption binary bits, from the incoming signal.
  • the extracted information is then written to the output buffer 410A (step 609).
  • the closed caption data retrieval process is suitably implemented by a set of software modules executed by the processing unit 408.
  • the closed caption module 500 suitably includes a clock recovery module 502; a data extraction module 506; a framing code detection module 504; and a serial-to-parallel module 508.
  • the clock recovery module 502 is suitably configured to determine whether the clock synchronization signal is present, determine phase characteristics of the incoming signal relative to the samples, and to provide information to the data extraction module 506 to synchronize the bit slicing function.
  • the clock recovery module 502 suitably measures the amplitude of the incoming signal and determines the DC signal offset.
  • the clock recovery module 502 is suitably configured to suspend the analysis if the input signal does not include closed caption data.
  • the clock recovery module 502 reads samples of the digitized video signal from the main memory 406 and processes them according to a suitable algorithm to recover the clock synchronization signal.
  • a conventional closed caption signal has a bit rate of 0.5035 MHz.
  • the sampling unit 404 suitably samples the incoming signal at a sufficiently high rate to track and recover the clock synchronization signal and the binary data in the video signal. In the present embodiment, the sampling unit 404 acquires samples at 24.5454 MHz. Thus, the sampling unit 404 acquires approximately 48.75 samples per bit of the closed caption data. Preferably, the sampling unit 404 acquires data at a rate at least four times higher than the data rate of the incoming binary signal.
  • the clock synchronization signal operates at the same frequency as the bit rate, so the sampling unit 404 acquires 24.375 samples per half-cycle of the clock synchronization signal. Consequently, the clock recovery module 500 may analyze the closed caption signal to a phase error of less than eight degrees, which is sufficiently precise to effectively provide bit synchronization information to the data extraction module 506. If greater precision is required or desired, however, the sampling rate may be increased and/or the clock recovery module may provide enhanced signal analysis, such as through an interpolation analysis of the sampled data.
  • the clock recovery module 502 analyzes only a portion of the signal to ensure analysis of valid data. For example, in the present embodiment, the clock recovery module 502 suitably ignores the samples acquired during the first 9.4 microseconds after the falling edge of the horizontal synchronization pulse, to account for the minimum delay between the synchronization pulse to the rising edge of the first cycle of the clock synchronization signal. In addition, because the initial cycles of the clock signal may not be stable, for example due to attenuation caused by a superimposed echo, the clock recovery module 502 may discard some of the initial clock synchronization signal cycles prior to recovering the clock synchronization signal, for example the first two cycles, and reserve analysis for the remaining cycles. The clock recovery module 502 then suitably analyzes the sample data to identify certain characteristics of the incoming signal to facilitate bit synchronization or bit decoding.
  • the clock recovery module 502 suitably first seeks the rising edge of the first cycle (step 702), for example by searching for the first sample exceeding a threshold value ( Figure 12B).
  • the threshold is preferably selected to reduce the likelihood that the preceding color burst is not mistaken for the rising edge of the clock synchronization signal, for example a value signifying 0.44 volt (based on a one volt peak-to-peak video signal).
  • the sampling unit 404 acquires over 48 samples per cycle of the closed caption clock synchronization signal, certain samples may be selected for analysis and the remainder ignored to improve the efficiency of the analysis.
  • the clock recovery module 502 initially reads a first sample from main memory 406 following the initial 9.4 microsecond delay and advances to the next sample to be analyzed.
  • the clock recovery module 502 advances to the next sample to be analyzed, in this example skips four samples, and again compares the value of the sample to the threshold. Thus, the present clock recovery module 502 analyzes only one of every four samples in this example for the clock synchronization signal. The process repeats until a sample value exceeds the threshold. Upon identifying a sample having a value exceeding the selected threshold, the clock recovery module 502 designates the sample as the rising edge of the cycle. After detection of the rising edge, the clock recovery module 502 then seeks a maximum point in the clock synchronization cycle (step 704).
  • the clock recovery module 502 reads the values of the current sample and a sample that preceded the current sample by a selected number of samples.
  • the number of preceding samples is selected to enhance the extracted data, for example to provide optimal gain. If the sampling unit takes signals at a much higher frequency than the data signal or clock signal frequency, for example about an order of magnitude higher, the number of preceding samples may be selected to correspond to a 180-degree phase shift.
  • the sample 24 samples prior to the current sample is read, which corresponds to a 180-degree shift at a sampling rate of 24.375 samples per half-cycle of the clock synchronization signal. Again, four samples are skipped.
  • the clock recovery module 502 thus operates as a comb filter where the center of the first lobe of the frequency response corresponds to the closed caption clock synchronization signal's frequency. This improves the selectivity of the clock for the peak detector.
  • the clock recovery module 502 Upon detection of the maximum, the clock recovery module 502 advances to the maximum of the next cycle, for example by skipping the next 48 samples (for a 24.5454 MHz sampling rate) following the detected maximum (step 705). The clock recovery module 502 then seeks the falling edge of the present cycle (step 706).
  • This process suitably amounts to the converse of the process for identifying the rising edge of the clock synchronization signal. For example, referring now to Figure 12D, the clock recovery module 502 reads the current sample and skips four samples. If the amplitude of the read sample exceeds the selected threshold, the clock recovery module 502 continues searching for the falling edge at the next sample, and again skips four samples. This process suitably repeats until a sample value does not exceed the threshold. If the present sample is below the threshold, however, the falling edge, or at least an approximation of the falling edge, has been identified.
  • the clock recovery module 502 Upon identification of the falling edge, the clock recovery module 502 suitably seeks the minimum portion of the cycle (step 708). Referring now to Figure 12E, this process suitably comprises the converse of the process to find the maximum.
  • the clock recovery module 502 reads the value of a current sample and a sample that preceded the current sample by 24 samples, and then skips four samples. If the value of the current sample is greater than that of the preceding sample, then the minimum has not been identified. The clock recovery module 502 consequently repeats the process. If the value of the current sample is less than or equal to the value of the older sample, the current value is designated as the minimum.
  • the clock recovery module 502 identifies the rising edge and the maximum of the first cycle to exceed the threshold and the falling edge and minimum of the second. At this point, the detection of the clock synchronization signal is considered verified.
  • the first two cycles have been processed for initial estimates of the positions of the maximum and minimum and the rising and falling edges.
  • the data is assumed to be stable after the first two cycles to exceed the threshold defining the rising edge. It should be noted that if the initial cycles of the clock synchronization signals are so attenuated as to never exceed the threshold, the attenuated cycles are ignored.
  • the clock recovery module 502 then suitably proceeds to establish the optimal clock position by tracking the maximum and minimum portions of the signal. For example, a counter is suitably set according to the number of cycles in the closed caption clock synchronization signal to be analyzed, such as four (step 710). Next, the next rising edge and the maximum of the next cycle are identified, for example as described above
  • the clock recovery module 502 now suitably stores a value corresponding to the duration between the previous minimum and the most recently identified maximum. For example, with each repetition of the searches for the rising edge and the maximum, the position value is incremented by four.
  • the position value is compared to the ideal duration between the previous minimum and the current maximum, which in this case is 24+3/8 samples.
  • the clock recovery module 502 then adds the results of the comparison to an adjustment value, which is ultimately used to determine the optimal clock position or phase position adjustment (step 716).
  • the clock recovery module 502 suitably adds the value of each sample to a data average value stored, for example, in memory 406.
  • the accumulated data average value may be ultimately used to determine an average sample value and a DC offset.
  • the value of the sample at the maximum is stored.
  • the difference between the value of the maximum and the preceding minimum is suitably compared to a selected threshold amplitude to ensure the analysis of valid data. If no value for a preceding minimum has been stored, then a default minimum, such as 0.28 volt (for a peak-to-peak video signal of 1.0 volt) may be provided. If the difference is less than the threshold amplitude, such as 0.14 volt, then an error message is returned and the data discarded. If the difference is greater than or equal to the threshold amplitude, however, the analysis continues.
  • the clock recovery module 502 then suitably proceeds to find the falling edge (step 718) and the minimum (step 720). Like the rising edge and maximum analyses, the falling edge and minimum analyses continue to update the data average value and the position value with each repetition.
  • the clock recovery module 502 then suitably checks the amplitude of the difference between the preceding maximum and the current minimum to ensure that it is at least equal to 0.14 volt.
  • the clock recovery module 502 then suitably computes the optimal position of the minimum and adds it to the optimal clock position adjustment value (step 722).
  • the repetition counter is then decremented (step 723). This process repeats four times, suitably once for each of the remaining clock synchronization cycles.
  • the clock recovery module 502 Upon completion of the four repetitions, the clock recovery module 502 suitably checks the frequency of the tracked signal to ensure the detection of valid data. For example, the clock recovery module 502 suitably determines the duration between the sample at which the search for the first rising edge began (following the discarded initial cycles) and the sample at which the final minimum was detected. If the duration is out of range compared to that required for four cycles of the clock synchronization signal, then an error message is returned and the data is discarded.
  • the adjustment value is averaged, for example by dividing the adjustment value by eight, which corresponds to the number of adjustments added to the adjustment value.
  • the averaged adjustment value corresponds to an approximate phase error from the maximum or minimum of the incoming signal.
  • the averaged adjustment value may then be used to determine an optimal clock position (step 724), which may then be used to synchronize the extraction of the binary data bits from the byte synchronization and data block portions of the signal.
  • the clock recovery module 502 suitably determines the average data value for the samples analyzed. The data value average may be compared to an expected amplitude average, and the difference stored as a DC offset value.
  • the DC offset value may be used by the data slicing process to establish the appropriate thresholds for determining logical values of the binary data and to remove DC offset prior to signal processing.
  • the closed caption module 500 initiates the data extraction module 506 using the recovered clock synchronization signal information to synchronize the extraction of the binary data.
  • the data extraction module 506 suitably implements a bit slicing process which operates in conjunction with the clock synchronization signal information to reconstruct the binary data embedded in the video signal (step 606).
  • the data extraction module 506 suitably uses the data generated by the clock recovery module 502 to identify relevant samples and recover binary data in the signal. The bit slicing process is then applied to the identified relevant samples to assign appropriate binary values to the corresponding bits.
  • the data extraction module 506 selects particular samples for analysis based on the adjusted clock synchronization signal information. For example, the samples most likely to be closest to the rising and falling edges of the data bits may be identified based on the clock synchronization information. Similarly, the samples closest to the projected center of each bit signal, and hence those with the highest integrity, may be identified. Thus, the data extraction module 506 selects a suitable number of samples corresponding to each bit, for example one, for analysis in the bit slicing process.
  • the bit slicing process suitably assigns a binary value to each relevant sample. Alternatively, in systems using partial response coding, the bit slicing process assigns a value corresponding to one of multiple possible values.
  • the data extraction module 506 compares each relevant sample of the incoming signal to a selected threshold, for example a binary data threshold corresponding to 0.52 volt (based on a peak-to- peak voltage of 1.0 volt) to establish a logical value for the signal. If the sample exceeds the threshold, it is designated as a logical "one", and if not, the signal is designated as a logical "zero".
  • the data extraction module suitably assigns the binary value according to a suitable algorithm, for example a majority value with respect to the threshold.
  • the data extraction module 506 then suitably provides the serial binary data to the framing code detection and serial-to-parallel modules.
  • the framing code detection module 504 searches the resulting binary data for a valid framing code indicating that closed caption data is to follow (step 607).
  • the framing code provides byte synchronization information to align the incoming bit stream on a byte boundary. It is also used to verify that a closed caption line has been identified.
  • the framing code comprises the three bit code 1-0-0.
  • the framing code detection module 504 reads the bits in the register as they are stored and compares them to the desired framing code.
  • the serial-to-parallel module 508 begins converting the following 16 serially received bits into two bytes of parallel data (step 609 in Figure 6). If the framing code is not detected, the framing code detection module 504 suitably waits for the next bit to be received in the register, and repeats the analysis. The framing code detection module 504 suitably repeats the analysis for a selected number of bits or time period. If the framing code is not detected within the selected period or number of bits, the analysis process terminates.
  • the processing unit 408 also suitably includes an analogous system for teletext data extraction.
  • the processing unit 408 suitably includes a teletext module 800 for identifying portions of the video signal including teletext data and extracting the data.
  • the teletext module 800 suitably reads the signal from the main memory 406, recovers the clock synchronization signal from the incoming signal, identifies the framing code in the byte synchronization signal, and extracts the data.
  • the teletext module 800 suitably performs several other signal processing steps, such as data interpolation, equalization, echo cancellation, and error detection.
  • a suitable teletext module 800 comprises: a clock recovery module 802; a data interpolation module 804; an equalizer module 806; an echo cancellation module 808; a framing code detection module 810; a data extraction module 812; a Hamming decoder module 814; and a serial-to-parallel module 816.
  • the clock recovery module 812 suitably identifies the clock synchronization signal to provide bit synchronization for the teletext module 800 (step 902). If the clock synchronization signal is not present, the clock recovery module suspends further processing of the current line of the incoming signal (step 904). It should be noted, however, that this automatic data detection function is suitably configured to be selectively disabled.
  • the clock recovery module 802 identifies the clock synchronization signal, it provides clock synchronization signal information to the data interpolation module 804, which suitably refines the synchronization of the bit slicing function with the embedded binary data.
  • the data interpolation module 804 suitably interpolates the data from the incoming samples to facilitate optimal synchronization of the sample analysis with the teletext data position and to convert the data bit rate to the original frequency (step 906).
  • the equalizer module 806 and the echo cancellation module 808 further perform filtering and amplitude normalization to correct errors induced by echo signals (steps 908 and 910).
  • the data extraction module 812 then suitably performs a bit slicing process on the amplitude normalized data sample (step 912).
  • the framing code detection module 810 suitably surveys the incoming bit stream to identify the framing code in the signal (step 913). When (and if) the framing code is identified, the framing code detection module 810 generates byte synchronization information, which may be used by the serial -to-parallel module 816.
  • the serial-to-parallel module 816 suitably accumulates data (step 914) as the data is extracted from the data extraction module 812 and aligns bits on the byte boundaries with the signal byte synchronization information from the framing code module 810.
  • the Hamming decode module 814 suitably extracts the data information from the Hamming encoded byte (step 916).
  • the Hamming decode module 814 and the serial-to-parallel module 816 store data bytes in the output buffer 410B (step 918).
  • the clock recovery module 802 and data interpolation module 804 are suitably configured to determine the optimal position for identifying the binary data embedded in the signal and synchronize the bit slicing function accordingly.
  • the clock recovery module 802 may further measure information such as a DC signal offset and signal amplitude, as well as detect an invalid input signal and, if so, terminate further analysis of the signal.
  • the clock recovery module 802 reads the digitized samples of the video signal from a buffer in the main memory 406 and processes the samples according to a suitable algorithm to recover the clock synchronization signal.
  • a teletext signal has a bit rate of 5.7272 MHz, and in the present embodiment, the sampling unit 404 acquires samples at 24.5454 MHz. Thus, the sampling unit acquires approximately 4.2857 samples per bit of the teletext data. The samples acquired during the first 9.4 microseconds after the falling edge of the horizontal synchronization pulse are suitably ignored to account for the minimum delay between the synchronization pulse to the rising edge of the first cycle of the clock synchronization signal.
  • the teletext recovery module 802 suitably analyzes only a portion of the signal to ensure analysis of valid data.
  • the first two cycles of the clock synchronization signal are suitably subjected to minimal processing and the remaining cycles are analyzed to generate the clock synchronization information.
  • the clock recovery module 802 first seeks the rising edge of the first cycle (step 1002), for example by searching for the first sample exceeding a threshold value ( Figure 15B).
  • the amplitude of the teletext clock synchronization signal is typically higher than that of the closed caption clock synchronization signal, so the threshold is accordingly higher, for example approximately 0.52 volt (based on a one volt peak-to-peak video signal). If the amplitude of the first sample does not exceed the selected threshold, the clock recovery module 802 advances to and reads the next sample in the buffer. Because the teletext clock synchronization signal is a much higher frequency than that of the closed caption clock synchronization signal, all of the samples in the teletext clock synchronization signal may be analyzed.
  • the clock recovery module 802 When the rising edge is detected, the clock recovery module 802 then seeks a maximum point in the clock synchronization cycle (step 1004). For example, referring now to Figure 15C, the clock recovery module 802 compares the value of a current sample and a preceding sample. If the value of the current sample is greater than or equal to that of the preceding sample, then the cycle value is still rising and the maximum has not yet been identified. The clock recovery module 802 advances to the next sample, and repeats the process. If the value of the current sample is less than the value of the preceding sample, the preceding value is designated as the maximum.
  • the clock recovery module 802 Upon detection of the maximum, the clock recovery module 802 advances to look for the next maximum of the next cycle, for example by skipping the next eight samples following the first identified maximum (step 1005). The clock recovery module 802 then seeks the falling edge of the present cycle (step 1006). This process suitably amounts to the converse of the process for identifying the rising edge. For example, referring now to Figure 15D, the clock recovery module 802 reads the current sample and compares it to the selected threshold. If the amplitude of the sample exceeds the selected threshold, the data is ignored and the clock recovery module begins searching for the falling edge again with the next sample. If the present sample is below the threshold, however, the falling edge has been identified.
  • the clock recovery module 802 Upon identification of the falling edge, the clock recovery module 802 seeks the minimum portion of the cycle (step 1008). Referring now to Figure 15E, this process is suitably the converse of the process to find the maximum.
  • the clock recovery module 802 reads the value of a current sample and a preceding sample. If the value of the current sample is less than or equal to that of the preceding sample, then the minimum has not been identified. The clock recovery module 802 advances to the next sample, and repeats the process. If the value of the current sample is greater than the value of the preceding sample, the preceding value is designated as the minimum. Thus, the clock recovery module 802 has identified the maximum of the first cycle to exceed the threshold and the minimum of the second cycle to exceed the threshold.
  • the clock recovery module 802 attempts to establish the optimal clock position by tracking the maximum and minimum portions of the signal.
  • a counter is suitably set to four, which is equal to the number of cycles to be analyzed in the teletext clock synchronization signal (step 1010).
  • the clock recovery module 802 then computes the optimal position of the maximum and adds it to the optimal clock position adjustment (step 1016). Further, the clock recovery module suitably accumulates data to facilitate validation of the amplitude and frequency of the signal and to compute the DC offset of the signal. Moreover, the clock recovery module 802 collects data to facilitate the data interpolation process. For example, the clock recovery module 802 suitably searches for the rising edge of the present cycle as described above. After each sample is read and compared to the threshold, the value of the sample is added to an accumulator to compute, at a later point in the analysis, a data average value. The accumulated data average value is suitably ultimately used to determine an average sample value and a DC offset. In addition, for each repetition of the search for the rising edge, a position value is incremented to reflect the addition of one sample.
  • the clock recovery module 802 searches for the maximum of the cycle. Like the search for the rising edge, after each sample is read and compared to the preceding sample value, the value of the sample is added to a data average value. Likewise, for each repetition of the search for the maximum, the position value is incremented to reflect the addition of one sample. In addition, as each sample is compared to the preceding sample, the value of the sample preceding the current sample by two samples is stored. Thus, the value of the current sample and the two preceding samples are stored in a buffer.
  • the position value is then compared to the ideal duration between the previous minimum and the current maximum, which in this case is 4+2/7 samples.
  • the clock recovery module 802 then provides the values corresponding to the current sample and the preceding two samples to the data interpolation module 804.
  • the data interpolation module 806 calculates a fractional adjustment of the position to approximate the value of the cycle at its center using a suitable algorithm. For example, in the present embodiment, if:
  • DATA_A value of the sample preceding DATA
  • ADJ K*(DATA - DATA_B)/(2*DATA_A - DATA - DATA_B)
  • K is a constant, suitably related to the sampling rate relative to the data rate.
  • K is suitably set at 3.5.
  • the calculation of the ADJ value may be performed using a lookup table.
  • This equation generates a fractional adjustment that is proportional to the phase offset between the actual center of the cycle and the sample nearest the center point. If the sample is very near the actual centerpoint, then (DATA - DATA B) is very small, generating a very small fractional adjustment. If the phase offset is large, the fractional adjustment value is large.
  • the denominator comprises a normalizing factor to cancel variations in signal amplitude.
  • the fractional adjustment value and the results of the comparison of the position value to the ideal position are then added to an adjustment value (step 1016). Upon identification of the maximum, the difference between the value of the maximum and the preceding minimum is suitably compared to a threshold amplitude to ensure the analysis of valid data.
  • a default minimum such as 0.28 volt (for a peak-to-peak video signal of 1.0 volt) may be provided. If the difference is less than the threshold amplitude, such as 0.14 volt, then an error message is returned and the data discarded. If the difference is greater than or equal to the threshold amplitude, however, the analysis continues.
  • the clock recovery module 802 then suitably proceeds to find the falling edge (step 1018) and the minimum (step 1020). Like the rising edge and maximum analyses, the falling edge and minimum analyses continue to update the data average value and the position value with each repetition.
  • the clock recovery module 802 then suitably checks the amplitude of the difference between the preceding maximum and the current minimum to ensure that it is at least equal to 0.14 volt.
  • the clock recovery module 802 then suitably computes the optimal position of the minimum and adds it to the optimal clock position adjustment value (step 1022).
  • the repetition counter is then decremented (step 1023). This process repeats four times, once for each of the remaining clock synchronization cycles.
  • the clock recovery module 802 Upon completion of the four repetitions, the clock recovery module 802 suitably checks the frequency of the tracked signal to ensure the detection of valid data. For example, the clock recovery module 802 suitably determines the duration between the sample at which the search for the first rising edge began (following the discarded initial cycles) and the sample at which the final minimum was detected. If the duration is out of range compared to that required for four cycles of the clock synchronization signal, then an error message is returned and the decoding process for the current video line terminates.
  • the adjustment value is averaged, for example by dividing the adjustment value by the number of values added to the accumulator, such as eight in the present example.
  • the averaged adjustment value may then be used to determine an optimal clock position (step 724), which may then be used to synchronize the extraction of the binary data bits for the byte synchronization and data block portions of the signal.
  • the clock recovery module 802 suitably determines the average data value for the samples analyzed.
  • the data average may be compared to an ideal average, and the difference stored as a DC offset value.
  • the DC offset value may be used by the data slicing process to establish the appropriate thresholds for determining logical values of the binary data and to remove DC offset prior to signal processing.
  • the data interpolation module 804 performs an interpolation function, such as described above, to identify the optimal clock position of the signal and more closely approximate the value of the signal at the exact center position of the data symbols.
  • the value at the center position provides for maximum effectiveness of the equalizer module 806, echo cancellation module 808, and the data extraction module 812.
  • the data interpolation module 804 suitably performs a conversion of the sampling rate to the original data rate.
  • the conversion process is suitably implemented using a digital interpolator filter, which is suitably a function performed by the processing unit 408.
  • the interpolator filter 1102 is suitably comprised of a sampling rate converter 1104, a low pass filter 1106, and a decimation filter 1108.
  • the interpolator filter preferably uses zero padding to provide a higher rate that is an exact multiple of the data rate.
  • the sampling rate converter 1104 receives the input signal at the sampling rate (i.e. 24.5454 MHz), and generates an output signal at 28.6363 MHz, which is five times the data rate.
  • the output of the sampling rate converter 1104 is provided to the low pass filter 1106, suitably comprising a finite-impulse response (FIR) filter, which suitably corrects the amplitude of every sample.
  • the FIR filter 1106 provides an output signal at 28.6363 MHz to the decimation filter 1108, which generates a corresponding signal at an output rate corresponding to that of the teletext data rate, i.e. 5.7272 MHz.
  • the equalizer module 806 receives the interpolated data from the data interpolation module 804 and transfers processed data to the echo cancellation module 808.
  • the equalizer module 806 compensates for amplitude and phase distortion caused by intersymbol interference.
  • the equalizer module 806 is suitably configured as a digital adaptive equalizer, and is preferably adaptable to any amount of attenuation or DC offset of the incoming signal.
  • the equalizer module 806 comprises a modified zero-forcing equalizer including a transversal filter (or a finite impulse response filter) 1204, a decision device 1206, a coefficients compute unit 1208, and a coefficients damping unit 1210.
  • the equalizer module 806 suitably includes various features, such as a variable number of taps associated with the transversal filter 1204 and an error clipping component 1212.
  • the transversal filter 1204 suitably comprises a delay line tapped at data rate (or symbol rate) intervals. Each tap along the delay line is connected through an amplifier to a summing device that provides the output.
  • the transversal filter 1204 is suitably programmable in three different lengths or numbers of taps. When the incoming data signal is clean, the transversal filter 1204 is configured to operate using zero taps. Using zero taps provides the fastest decoding, which facilitates the reduction of the load on the CPU. For more indistinct signals, the transversal filter 1204 may be configured using a greater number of taps, for example five taps ( Figure 17B). The greater number of taps provides better filtering but requires greater computing resources.
  • a third mode configures the FIR filter with eleven taps (Figure 17C).
  • the number of taps may be set according to a preselected default parameter.
  • the adjustment of the number of taps is suitably performed automatically based on the quality of the incoming signal.
  • the quality of the incoming signal may be assessed according to any suitable technique, for example, according to the number of detected Hamming code errors, number of framing code errors, and/or the magnitude of the tap coefficients.
  • the values of the samples at the taps are multiplied by coefficients stored in the main memory 406.
  • the amplification coefficients at the taps are controlled by the coefficient compute unit 1208 to subtract the effects of interference from symbols that are adjacent in time to the desired symbol.
  • the coefficients damping unit 1210 multiplies all coefficients by pre-determined damping values at regular intervals, for example every 1/60 of a second. This allows the equalizer module 806 to gradually reset the amplifier coefficients when no data signal is being received or the teletext module is unable to detect the received teletext data. This is useful to avoid divergence in the coefficients and helps to re-establish the proper coefficients when the signal reception changes, for example in the event that a TV antenna is rotated.
  • the summed output of the transversal filter 1204 is sampled at the symbol rate and then provided to the decision device 1206.
  • the decision device 1206 computes the difference between the projected amplitude of a symbol and the data sample output of the transversal filter 1204. The resulting difference is used to calculate a new set of coefficients. The new set of coefficients is stored in a table in the main memory 406 for use by the coefficient compute unit 1208.
  • the equalizer module 806 may further include an error clipping component 1212 which compares the magnitude of the calculated error to a maximum threshold. If the magnitude exceeds the maximum threshold, the amount of correction applied to the incoming signal is reduced, for example limited to the value of the threshold. If the magnitude is below the maximum threshold, however, the correction is applied without modification.
  • the error clipping component 1212 suitably compares the error magnitude to a minimum threshold. If the error magnitude is below the minimum threshold, no correction is applied to the incoming signal. If the magnitude exceeds the minimum threshold, however, the correction is applied without modification.
  • other types of adaptive filters can be used to perform similar functions, such as adaptive equalizers like an infinite impulse response (IIR), reverse adaptive equalizer, or any other suitable component.
  • a non-linear error table may be used to update the coefficients to avoid divergence when the transversal filter compensation is small.
  • the echo cancellation module 808 suitably receives the signal generated by the equalizer module and processes the signal to reduce the "ghost" effect caused by microrefiection.
  • the echo cancellation module 808 suitably comprises a module for implementing a method for ghost cancellation as described in U.S. Patent Application Serial No. 08/631,346, filed April 12, 1996.
  • the echo cancellation module 808 suitably uses a last ten bits pattern in conjunction with a lookup table stored in the main memory 406 to provide the relevant correction.
  • the echo cancellation module 808 is called following the equalizer module 806, as the equalizer module 806 typically performs amplitude correction which facilitates the proper operation of the echo cancellation module 808.
  • the equalizer module 806 which typically consumes significant processing unit resources, especially when using a large number of taps, may be omitted or limited to a relatively low number of taps.
  • the echo cancellation module 808, is typically relatively efficient, as it employs a lookup table to provide the signal processing function, but may not provide sufficient correction for certain applications and signals.
  • the data interpolation module 804 performs a type of noise filtering function, and may be used without either of the equalizer module 806 or the echo cancellation module 808, with either individually, or with both.
  • the equalizer module 806 uses data from the data interpolation module 804 to identify the optimal clock position; thus, if the data interpolation module 804 is omitted, the equalizer module 806 may be similarly omitted or reconfigured.
  • any suitable interpolation algorithm may be implemented by the data interpolation module 804 to generate the appropriate signal.
  • other components may be used to perform the various functions of the data interpolation module 804, equalizer module 806, and/or echo cancellation module 808, including a matching filter, a linear interpolation filter, or other suitable filter.
  • the signal provided by the echo cancellation module 808 is suitably provided to the data extraction module 812, which slices the symbol data to extract the value of the symbol.
  • the data provided by the data extraction module 812 is suitably provided to the serial-to- parallel module and the framing code detection module 810.
  • the framing code detection module 810 searches for a valid framing code to provide for byte synchronization.
  • the byte synchronization facilitates the alignment of the incoming bit stream on a byte boundary in the output buffer 410B.
  • the framing code comprises an eight bit code.
  • the framing code is 1-1-1-0-0-1-1-1 (E7h).
  • the framing code for WST is 1-1-1-0-0-1-0-0 (E4h).
  • the data extraction module 812 transfers the following data to the serial-to-parallel module.
  • the serial-to-parallel module converts the serial data stream into 8-bit (one byte) parallel data. If the data byte is Hamming encoded, the Hamming decode module decodes the data. The data is then provided to the output buffer 410B such that the first bit of the data signal is aligned with the first bit of the buffer 410B.
  • the framing code detection module 810 suitably operates in conjunction with a lookup table of values which indicate receipt of a framing code.
  • the framing code detection module 810 suitably collects the incoming serial bits in an 8-bit buffer. Each set of bits collected in the buffer may be looked up in the lookup table to detect whether the framing code has been received.
  • This lookup table may be also used to correct errors in the framing code byte.
  • an algorithm to minimize the length error between bytes is used to generate correspondence between a decoded framing code byte versus a known acceptable framing code byte.
  • the current eight bits are suitably looked up in the lookup table to detect a valid framing code. If the lookup table indicates that the current 8-bit value matches a framing code, such as one of the four conventional teletext framing codes described above, a result is returned indicating that the framing code has been received. If not, the framing code detection module exits and waits until a new bit is shifted into the register.
  • a framing code such as one of the four conventional teletext framing codes described above
  • an error counter is suitably incremented to track the number of Hamming code errors.
  • the list of codes corresponding to valid codes and erroneous-but-acceptable codes may be stored in a lookup table for efficient access.
  • the framing code error detection function may be enabled or disabled, for example according to the desires of the user.
  • the data is subject to error checking, for example by the Hamming decode module 814, if the Hamming decode module 814 is enabled.
  • the Hamming decode module 814 may be selectively enabled or disabled, or particular functions, such as error correction, may be selectively enabled or disabled.
  • An NABTS packet includes five Hamming encoded bytes, whereas a WST packet includes two Hamming encoded bytes.
  • the Hamming decode module 814 suitably operates in conjunction with a lookup table to detect errors. If a one-bit error occurs, the Hamming code decoder module 814 suitably corrects the error prior to writing the data to the output buffer 41 OB .
  • the Hamming decode module 814 analyzes the data according to a logical algorithm to decide whether to reject or retain the data packet. For example, if one of the first three Hamming bytes in a NABTS packet have two-bit errors, the packet is rejected. Alternatively, the Hamming decode module suitably counts the number of Hamming bits in error. If the total of number of errors exceeds, for example, four errors, the packet is rejected.
  • a Hamming decode scheme can detect two-bit errors and correct one-bit errors.
  • the first three bytes of the five Hamming encoded bytes represent a packet address value. Once they are decoded, the result is 12 bits to represent the packet address which is used to filter the service channel.
  • Each of the 4096 service channels may be enabled or disabled by the software interface. The only information required is whether to accept or reject a specific packet based on its address value, which can be established a lookup table in the main memory 406.
  • the processing unit 408 and other relevant components of the receiver 106 are suitably initialized to prepare for operation. For example, various parameters such as a framing code table and a Hamming code table may be loaded into main memory 406. In addition, the various other internal operating parameters, such as a multiplication lookup table, the filter coefficients for the equalization module, and the echo cancellation module lookup table, may also be loaded.
  • the receiver 106 then begins processing data to process each line of raw video data. To optimize efficiency, the decoder functions may not be called for each line of data; instead, the data may be stored in a buffer that contains, for example, 20 lines.
  • the processing unit 408 may then initiate the decoding functions to decode all of the information in the buffer and store the decoded information in the output buffer. If some lines of data are rejected, the rejected lines may also be noted.
  • the receiver 106 initially executes an initialization routine to perform various initialization functions, such as those described above (step 1310).
  • a data processing module is then suitably initiated to process each line of raw video data that may contain VBI information.
  • the receiver 106 commences collecting data and storing it in a buffer, for example in the main memory 406.
  • an input pointer is set at the beginning of the input buffer in the main memory 406 and an output pointer is set at the beginning of the output buffer, such as output buffer 41 OB (step 1312).
  • the processing unit 408 initially determines whether the current line in the input buffer corresponds to line 21 of the video signal (step 1314). If not, the processing unit 408 calls the teletext module 800. The teletext module 800 searches for a valid clock synchronization signal (step 1316). If none is identified, the processing unit 408 proceeds to the next line in the buffer (step 1318).
  • the line of data is decoded and provided to the output buffer 410B (step 1320).
  • the processing unit 408 determines whether the current line of data is the last line in the buffer. If so, the process terminates until the input buffer fills with data, and the processing unit 408 is released to perform other duties (step 1322). If not, the pointers are set to the next entries, and the analysis process is renewed.
  • the processing unit 408 calls the closed caption module 500.
  • the closed caption module 500 searches for a valid closed caption clock synchronization signal (step 1324). If none is identified, the processing unit 408 proceeds to the next line in the input buffer (step 1326). If the clock synchronization signal is detected, the line of data is decoded and provided to the output buffer 410A (step 1328). The processing unit 408 then proceeds with determining whether the current line of data is the last line in the buffer and processing the data accordingly as described above.
  • the present decoding system may be programmed to decode any line with any type of data, including closed caption and/or teletext data. For example, if the decoder system is programmed to decode teletext data on line 21, the system attempts to decode the data as teletext before trying to decode the data as closed caption data. Similarly, if the system is programmed to decode closed caption on line 50, it attempts to decode the data as closed caption data on this line.
  • the decoder of the present system may be adapted to support other television standards, for example PAL, SECAM, and other types of data transmission systems associated with a video signal.
  • the decoder may be programmed to collect information relating to the performance of the system, such as the quality of the incoming signal, whether lines of data are rejected, and processing time. The collected information may be processed to generate statistics, stored to be downloaded or processed later, or otherwise manipulated.
  • An alternative embodiment of the receiver 106 is configured to receive and decode multi-level PRC data. The receiver 106 suitably performs the tasks associated with the first two layers of the OSI reference model. The data is then passed on to a computer application for further processing, including forward error correction.
  • the receiver 106 may also include a more sophisticated decoder system to relieve the computer of certain processing tasks or support other applications.
  • the receiver 106 may perform any required data processing, possibly up to the presentation layer of the OSI model.
  • the decoder system may also operate in conjunction with any suitable interface, such as serial RS-232, parallel, Ethernet, or any other appropriate interface, depending on the application.
  • the processing unit 408 also suitably includes a system analogous to the teletext data extraction system.
  • the processing unit 408 suitably includes a buffer 2010 for receiving the data; a filter 2012; a data interpolation module 804; an equalizer module 806; a data extraction module 812; an error correction module 814; and a framing code detection module 810.
  • the data interpolation module 804, the equalizer module 806, the data extraction module 812, and the framing code detection module 810 are suitably identical or analogous to and perform similar functions as the corresponding elements described above in conjunction with the binary closed caption and teletext data extraction.
  • the analog combined television and data signal is provided to a VBI extractor 2110, such as a frame grabber, to temporarily store samples of the signal.
  • the combined signal is also provided to a color clock phase lock loop 2112 to generate a clock signal synchronized with the color burst frequency.
  • the color burst signal is then doubled by a clock doubler 2114, and the resulting signal is used to synchronize other signal processing tasks, such as the operations of the equalizer module 806 and the data extraction module 812.
  • Signal samples from the vertical blanking interval are sampled and stored in the buffer 2010.
  • the data samples are then filtered, suitably comprising a cosine-shaped or root square filter 2012, for filtering out-of-band noise from the incoming signal. Further, the samples may also be filtered by a pre-equalizing filter 2116 for improving the signal quality.
  • the data interpolation module 804, the equalizer module 806, the data extraction module 812, and the framing code detection module 810 process the incoming data samples to extract the digital data from the samples.
  • the present data extraction module 812 suitably performs a bit slicing process to assign particular values to each relevant sample. In mode 1, the data extraction module 812 assigns a three-level value to the sample, and in mode 2, it assigns a seven-level value to the sample.
  • the data extraction module 812 then suitably provides the serial binary data to the framing code detection module 810. The symbols are then decoded and subjected to error detection and correction by the error correction module 814. Finally, the data is derandomized
  • the present embodiment suitably further includes forward error correction processing.
  • forward error correction may be based on Reed-Solomon codes (28, 26) for horizontal coding and (18, 16) for vertical coding. It defines an intermediate network layer, comprising 16 data packets and 2 check packets. Decoding this layer allows error correction such that any error in a single byte can be corrected, any pair of two-bit errors may be corrected, and one or two missing or uncorrectable packets can be replaced.
  • a receiver provides a software-implemented system for decoding partial code response data transmitted with a video signal.
  • the system is especially suited for time critical applications, such as in a computer environment.
  • the system is also particularly suited to a system in which the sampling of the incoming signal is not synchronized to the incoming signal.
  • processor resources may be dedicated to other tasks in the system.
  • conventional circuitry may be used to provide the decode functions.
  • the present system is capable of detecting whether the incoming video line contains teletext or closed caption data, the system may more quickly relinquish the processing resources to other tasks if no data is included in the current video line.
  • the system is easily and inexpensively upgraded and maintained.
  • the decoder system may be easily reconfigured to adapt to a particular environment by simply adjusting portions of the code and operating parameters. These changes may be provided in any manner.
  • upgrades to the operation of the decoder system may be downloaded to the system using the decoder system itself. Further, any sort of data may be received via the decoder system, including computer files, applications, and the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Computer Interaction (AREA)
  • Television Systems (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
EP98935775A 1997-07-17 1998-07-17 Verfahren und system zur übertragung und dekodierung von daten in einem signal Withdrawn EP1013090A4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US5289097P 1997-07-17 1997-07-17
US52890P 1997-07-17
PCT/US1998/014854 WO1999021359A1 (en) 1997-07-17 1998-07-17 Method and system for transmitting and decoding data in a signal

Publications (2)

Publication Number Publication Date
EP1013090A1 true EP1013090A1 (de) 2000-06-28
EP1013090A4 EP1013090A4 (de) 2002-09-04

Family

ID=21980583

Family Applications (1)

Application Number Title Priority Date Filing Date
EP98935775A Withdrawn EP1013090A4 (de) 1997-07-17 1998-07-17 Verfahren und system zur übertragung und dekodierung von daten in einem signal

Country Status (5)

Country Link
EP (1) EP1013090A4 (de)
JP (1) JP2001521338A (de)
AU (1) AU8495698A (de)
CA (1) CA2296146A1 (de)
WO (1) WO1999021359A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6067122A (en) * 1998-04-23 2000-05-23 Intel Corporation Host-based anti-ghosting of teletext data based on non-oversampled data
ATE511785T1 (de) * 2000-03-08 2011-06-15 Given Imaging Ltd Vorrichtung zur invivo-bildgebung
IL177045A (en) 2005-07-25 2012-12-31 Daniel Gat Device, system and method for receiving, recording and displaying in-body information with user-entered information
JP2007221210A (ja) * 2006-02-14 2007-08-30 Matsushita Electric Ind Co Ltd テレテキストデコード装置、並びにこれを内蔵するテレビジョン受像装置、ビデオ装置及びパーソナルコンピュータ
US11126861B1 (en) * 2018-12-14 2021-09-21 Digimarc Corporation Ambient inventorying arrangements
CN114079539B (zh) * 2021-07-28 2023-11-28 珠海市杰理科技股份有限公司 一种无线信息交流方法及无线通信设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0165498A1 (de) * 1984-05-24 1985-12-27 Kabushiki Kaisha Toshiba Abtast-Taktimpulsgenerator
US4713689A (en) * 1984-06-04 1987-12-15 Centre National D'etudes Des Telecommunications Frequency demodulator for television receiver with time multiplexing
US5543850A (en) * 1995-01-17 1996-08-06 Cirrus Logic, Inc. System and method for displaying closed caption data on a PC monitor

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4605961A (en) * 1983-12-22 1986-08-12 Frederiksen Jeffrey E Video transmission system using time-warp scrambling
US4694489A (en) * 1983-12-22 1987-09-15 Frederiksen Jeffrey E Video transmission system
US4742543A (en) * 1983-12-22 1988-05-03 Frederiksen Jeffrey E Video transmission system
US4682360A (en) * 1983-12-22 1987-07-21 Frederiksen Jeffrey E Video transmission system
NL9000338A (nl) * 1989-06-02 1991-01-02 Koninkl Philips Electronics Nv Digitaal transmissiesysteem, zender en ontvanger te gebruiken in het transmissiesysteem en registratiedrager verkregen met de zender in de vorm van een optekeninrichting.
US5404172A (en) * 1992-03-02 1995-04-04 Eeg Enterprises, Inc. Video signal data and composite synchronization extraction circuit for on-screen display
GB9206495D0 (en) * 1992-03-25 1992-05-06 Philips Electronics Uk Ltd Receiving data signals
US5521712A (en) * 1993-02-12 1996-05-28 Sony Corporation Teletext signal recording and reproducing apparatus
US5519780A (en) * 1993-12-03 1996-05-21 Scientific-Atlanta, Inc. System and method for providing compressed digital teletext services and teletext support services
JP3393356B2 (ja) * 1995-05-26 2003-04-07 ソニー株式会社 受信装置および受信方法
US5699124A (en) * 1995-06-28 1997-12-16 General Instrument Corporation Of Delaware Bandwidth efficient communication of user data in digital television data stream

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0165498A1 (de) * 1984-05-24 1985-12-27 Kabushiki Kaisha Toshiba Abtast-Taktimpulsgenerator
US4713689A (en) * 1984-06-04 1987-12-15 Centre National D'etudes Des Telecommunications Frequency demodulator for television receiver with time multiplexing
US5543850A (en) * 1995-01-17 1996-08-06 Cirrus Logic, Inc. System and method for displaying closed caption data on a PC monitor

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of WO9921359A1 *

Also Published As

Publication number Publication date
AU8495698A (en) 1999-05-10
CA2296146A1 (en) 1999-04-29
WO1999021359A1 (en) 1999-04-29
EP1013090A4 (de) 2002-09-04
JP2001521338A (ja) 2001-11-06

Similar Documents

Publication Publication Date Title
US6239843B1 (en) Method and system for decoding data in a signal
US5371548A (en) System for transmission of digital data using orthogonal frequency division multiplexing
US5387941A (en) Data with video transmitter
US6072532A (en) Method and apparatus for generic insertion of data in vertical blanking intervals
US5497205A (en) Apparatus for processing BPSK signal transmitted with NTSC TV on quadrature-phase video
US5511099A (en) Passband sync block recovery
CA2082654A1 (en) Television signal transmission system with carrier offset compensation
KR0162611B1 (ko) Ntsc tv 신호에 실린 디지털 데이타를 복구하기 위한 디지털 신호 수신기에 있어서 기호 클럭 재생 회로
US6094461A (en) Data transmission
JPH06225341A (ja) ビデオ信号のオーバースキャン部分のディジタルデータを伝送するシステムおよびその方法
KR100523663B1 (ko) 동기검출장치
KR100244221B1 (ko) 디지털 티브이의 인접 채널 간섭유무 판별장치
CA2226821C (en) Vsb symbol sync recovery system
WO1999021359A1 (en) Method and system for transmitting and decoding data in a signal
CN1285993A (zh) 用于高清晰度电视接收机的同信道干扰检测网络
CN1178485C (zh) 高清晰度电视残留边带接收机
CN1285992A (zh) 用于高清晰度电视接收机的段同步恢复网络
CN1187964C (zh) 用于消除所接收的高清晰电视信号中的直流偏置的网络
JP3841832B2 (ja) データ送信
EP0546628B1 (de) Erweitertes Fernsehsystem
KR100481799B1 (ko) 데이터전송시스템
KR101208512B1 (ko) 디지털 방송 수신 시스템 및 수신 방법
KR20080004935A (ko) 디지털 방송 시스템 및 처리 방법

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20000217

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE DE DK FR GB IE IT NL SE

A4 Supplementary search report drawn up and despatched

Effective date: 20020719

AK Designated contracting states

Kind code of ref document: A4

Designated state(s): AT BE DE DK FR GB IE IT NL SE

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20030201