EP1766985A1 - Übertragung von bilddaten bei application sharing - Google Patents
Übertragung von bilddaten bei application sharingInfo
- Publication number
- EP1766985A1 EP1766985A1 EP05759653A EP05759653A EP1766985A1 EP 1766985 A1 EP1766985 A1 EP 1766985A1 EP 05759653 A EP05759653 A EP 05759653A EP 05759653 A EP05759653 A EP 05759653A EP 1766985 A1 EP1766985 A1 EP 1766985A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- image data
- computer
- image
- images
- data
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/414—Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
- H04N21/4143—Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a Personal Computer [PC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2402—Monitoring of the downstream path of the transmission network, e.g. bandwidth available
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/637—Control signals issued by the client directed to the server or network components
- H04N21/6373—Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44227—Monitoring of local network, e.g. connection or bandwidth variations; Detecting new devices in the local network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/462—Content or additional data management e.g. creating a master electronic programme guide from data received from the Internet and a Head-end or controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
- H04N21/4621—Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
Definitions
- the invention relates to a method and an arrangement for transmitting image data, the image data being generated partially or completely by at least one application (computer program) executed on a first computer, in particular on a conventional personal computer (PC).
- the image data may be displayed on an image display device of the first computer as a sequence of images or displayed thereon.
- an application sharing on an image display device of a second computer images are displayed, which correspond to the image data generated on the first computer.
- control signals the at least one application can be controlled, so that the further generation of the image data is influenced. These control signals are generated or triggered by a user of the second computer.
- At least one application is executed on the first computer, the results of which should be at least partially available on a second computer or other device (which is self-contained and remote from the first computer).
- the actual application will not run on the second computer or other device. Therefore, as a rule, no license fees are payable for the execution on the second computer or the other device.
- Another advantage of application sharing is that the second computer or other device is not responsible for the execution of the Application must be prepared. For example, the data required to run the application does not have to be present and / or it does not have to have the same processing power as the first computer. Also, it is thus possible to provide the results of the application of a plurality of second computers and / or other devices, selectively and / or sequentially.
- second computer always means the case of the other device as well.
- the other device is, for example, a station that has all the usual operating and display elements of a computer, but to which only limited computing power or a computer that specializes in the operation of the operating and display elements is available. In particular, however, the other device should be able to receive the data transmission signals and display the corresponding images.
- the present invention has for its object to provide a method and an arrangement of the type mentioned, which allow application sharing with a high quality representation of image data on the image display device of the second computer.
- a fine local resolution namely, a fine local resolution, a small required bandwidth of the transmission link between the first computer and the second computer, the capability that on the first Computer generated images in real time on the second computer, and a high refresh rate.
- a method is proposed for transmitting image data, wherein
- a first computer continuously generates first image data that can be displayed or displayed on an image representation device of the first computer as a first temporal sequence of first images
- the third image data are output to a data transmission device which generates the third image data corresponding data transmission signals, so that after receiving the data transmission signals and after decompression by a second computer a third image data corresponding second temporal sequence of second images can be generated , based on the continuous generation of the first image data, can be displayed in real time, and
- control information sent by the second computer is received by the data transmission device and used to control the operation of the first computer so that the generation of the first image data is influenced.
- Real-time means that the second sequence of images can be generated within a defined period of time.
- a length of the period which begins imagewise with the continuous generation of the first image data or with the representation of the first temporal sequence of images and within which at least the acquisition of the image, the compression of the second image data and the data transfer are completed.
- the length of the period is set to a value such that a viewer can perceive only slight differences between the representation of the first sequence of images and the representation of the second sequence of images or so that the temporal difference of the representations as in other remote data transmissions of data (eg B. the transmission of acoustic signals during a telephone conversation) is.
- Such a small time difference of the representations is a decisive advantage for the application sharing.
- the second sequence of images can be displayed continuously with the same time delay or the same maximum time delay compared to the generation or presentation of the first sequence of images visible.
- second image data corresponding to a part of the first sequence with a plurality of the first images are continuously considered. Due to the majority of the first images taken into account by the compression of the second image data, the compression can be performed more effectively, with a higher degree of compression. It can particular temporal developments in the change of image content are taken into account.
- the majority of images can be two images. Preferably, however, more than two images (i.e., a plurality of images) are contemplated during compression (especially at many different times of compression), e.g. For example, four to eight pictures. Exceptions can be made temporarily and repeatedly, for example to transfer a so-called keyframe or I-frame (image whose image data is independent of other images).
- the number of images taken into account during compression may change and / or fluctuate as time progresses.
- lossy compression of the second image data is performed depending on the content of the second image data.
- the lossy compression of the second image data may also be performed depending on the available data transmission capacity of the signal transmission.
- compression (s) may use one or more of the following measures:
- Information about objects moving in the first temporal sequence of images is transmitted at finer spatial resolution and / or greater color depth than still parts of the images.
- Compression is dynamically adjusted to the data transfer rate.
- Information about partial contents of images which remain constant in the first temporal sequence over a given period of time is at least partially eliminated by the compression.
- Statistical information about contents of individual images and / or contents of a plurality of images in the first sequence of images is used for compression. For example, correlations between temporally (i.e., in different images) and spatially (i.e., in the same portion of one or more images) adjacent pixels (pixels) are used.
- statistically more frequent image structures may be encoded using shorter codewords (i.e., data structures having fewer file bits) than image structures that are statistically less common.
- a (particularly forward-looking discrete) cosine transform is applied to determine for which portions of images a larger data capacity is provided in the transmission.
- the compression can be performed according to the standard MPEG (Moving Picture Experts Group) -4.
- MPEG-4 Motion Picture Experts Group
- the MPEG-4 standard was developed to compress audio and video data for storage on CD-ROM and DVD and for digital television. The present invention is based on the finding that such compression is suitable for application sharing.
- the invention is not limited to MPEG-4. Rather, for example, a compression according to the MPEG-2 standard can be performed.
- the computational overhead of decompression on the receive side is typically less than the computational cost of compression.
- An advantage is therefore that the computing power of the second computer may be lower than the computing power of the first computer.
- an application is executed on the first computer, which generates at least temporarily graphically representable objects that move continuously and / or the three-dimensional objects, wherein the objects or the movement is displayed with the first sequence of images or can be displayed.
- the compression according to the invention with consideration of a plurality of the first images has proven to be expedient.
- a lossy compression can be performed without a user of the second computer perceives this as a significant reduction in the quality of the presentation.
- different image areas of the same image and / or different images of the sequence of images to different local Image resolutions are compressed and / or a motion prediction is used during compression.
- the first image data are, in particular, image data intended for display on a screen.
- the first image data is generated by the first computer itself, in particular by one or more applications.
- a plurality of computer programs can be executed simultaneously and / or quasi-simultaneously by the first computer, for example under the management of a screen-window-based operating system such as Windows® from Microsoft Corporation, Unix or Linux.
- a preferred embodiment of the invention is specifically designed for use on computers having such operating systems.
- the first images that are the result of a plurality of computer programs executed on the first computer are continuously detected, and second image data corresponding to these first images are continuously transmitted to the compression device.
- the second image data can in particular be stored in a main random access memory (usually a RAM).
- the first images each correspond to the representation on a screen that is associated with the first computer and z.
- Windows displays the desktop and / or the contents of the active windows.
- the continuous acquisition of the first images therefore produces, in particular, a temporal sequence of screen shots.
- one or more individual parts (eg sub-frames) of the first images can each be cut out and / or isolated from the first images, and this part or these parts can be compressed and with the data transmission signals are transmitted.
- the first images are continuously acquired by an image acquisition program executed on the first computer and the second image data is generated therefrom.
- an image acquisition program executed on the first computer and the second image data is generated therefrom.
- hardware such as a frame grabber card
- the image acquisition program has the advantage that the first computer can be prepared in a simple and cost-effective manner for capturing the first images according to the invention.
- commercially available frame grabber cards are not suitable without further measures to capture images of the computer in which they are arranged. Rather, they serve to capture images from external applications or devices (eg, video devices, web cameras, video cameras).
- the image acquisition program is an application program that operates independently under the operating system and uses only the interfaces available for any application programs to the operating system (for example, unlike application programs that use Windows interfaces to DirectX under the operating system).
- the first computer may be a commercially available personal computer (PC), from the central processing unit (CPU) of which the image acquisition program is executed.
- the image acquisition program can be executed quasi-parallel to other applications.
- Application sharing with the image transmission according to the invention is thus possible with a commercial PC (eg with a Pentium 4 processor as the CPU at a clock frequency of 3 GHz).
- commercially available PCs achieve transmission rates of at least 25 frames per second, with a resolution of 800 x 600 pixels and a color depth of 16 bits. There are also higher image resolution achievable.
- the image capturing program may be a program that can be independently executed by the application program (eg, the graphics program) that generates the first image data.
- the image acquisition program is therefore not in the particular Integrated application program. This has the advantage that the image acquisition program can capture the image data of any application programs and that the application programs themselves do not need to be modified.
- image information about the first images are used, which are provided directly by the operating system of the first computer.
- the image information has the following information:
- Image properties of the respective first image in particular image size, local image resolution, color depth and / or image format,
- a procedure provided by the operating system can be used with which the image data of a specific first image, in particular the current image for output on a screen, can be accessed.
- the image data is expediently image data in a pixel-based image format (eg bitmap or pixmap).
- an image is understood in particular to be an entirety of image data which contains the complete information about how a corresponding visible image is to be displayed on an image display device.
- the entirety of image data for an image in a pixel-based image format has complete information about the color value and the brightness of each individual pixel.
- the present invention not only the data transmission signals from the first computer to the second one Computer, wherein the data transmission signals have the corresponding information about the first image data. Rather, it is also possible (for example via one or more additional channels of the same data transmission connection) to send control information for controlling the application from the second computer to the first computer.
- control information for controlling the application from the second computer to the first computer.
- commands of a user of the second computer in particular keyboard commands and / or commands of a pointing device (eg mouse) are transmitted from the second computer to the first computer as control information with which the application is controlled.
- additional information about results and / or states of the application may be transferred from the first computer to the second computer.
- information about acoustic signals may be transmitted over an additional channel (in one or both directions), the audible signals being audible in synchronism with portions of the sequences of images (eg, via a speaker connected to the computer).
- the acoustic signals from the same compression means as the image data can be compressed.
- the second sequence of images need not be identical to the first sequence of images. For example, when capturing the images, individual images may be omitted and / or otherwise a reduction of the image information that is being transmitted may take place.
- the data transmission signals may be transmitted via a data remote transmission link, e.g. As a data line of a computer network and / or a DSL data connection, are transmitted to the second computer.
- a data remote transmission link e.g. As a data line of a computer network and / or a DSL data connection, are transmitted to the second computer.
- at least partial sections of the connection for example the last section before reaching the second computer, as Links with wireless signal transmission to be configured (eg wireless LAN).
- control signals are repeatedly transmitted from the first computer to the data transmission signals.
- the control signals can be designed such that it can be determined on the receiving side (from the second computer) whether the control signals and thus the actual data transmission signals are received in the correct chronological order.
- the second computer can use the control signals to determine whether individual data packets will be received later than other data packets sent later.
- the second computer may decide to discard the data packets received too late, or sort them by their temporal signature and, if possible, use them for image creation.
- control signals or corresponding response signals may be sent back from the second computer to the first computer. This allows the first computer to determine that certain portions of the one originally sent by it
- Data transmission signals have reached the second computer, at least with high probability.
- control signals are sent at regular time intervals from the first computer and / or have other time information. Based on the time information, the first computer can determine at what time and / or at which time interval the control signals were generated or sent by the first computer. Time information is also understood to mean the information about which particular control signal is involved. In this case, the first computer can determine by evaluating further information when the control signal is generated or has been sent or how much time has elapsed since the date of dispatch or production.
- each control signal (or the corresponding response signal) received from the second computer is not retransmitted to the first computer so as not to unnecessarily increase the amount of data in transmitting data from the second computer to the first computer.
- the first computer may change the compression rate in the compression of the second image data and / or the data rate of the third image data output by the compression device.
- the compression of the second image data can be adapted to the transmission conditions to the second computer.
- it prevents the compression from generating too much data that can not be transmitted or can not be transmitted within a reasonable time.
- an upper limit may be set for the period of time between generation or dispatch of a control signal by the first computer until receipt of the response signal or until receipt of the control signal by the first computer. If the upper limit z. B. exceeded once or more times, the compression is adjusted. Accordingly, a lower limit for the period can also be specified. If the limit z. B. exceeded once or more times, the compression rate is increased and / or increased the data transfer rate of compressed data. As an alternative to the lower limit value, the data transmission rate and / or the compression rate can be increased even if the upper limit value is not reached or not exceeded.
- a transmission device of the first computer that converts the third image data into the data transmission signals according to a transmission protocol (eg, the User Datagram Protocol - UDP) generates the control signals and evaluates when the corresponding response signals or the returned control signals from the second computer arrive.
- a transmission protocol eg, the User Datagram Protocol - UDP
- Application sharing is not limited to the case where a single computer receives the data transmission signals and corresponding second images are generated and displayed. Rather, a plurality of second computers (devices that do not self-execute the application) can be operated simultaneously. Also, the application may be controlled by a plurality of the second computers, with respective control information transmitted to the first computer.
- the arrangement for transmitting image data has:
- a first computer storing an application configured to continuously generate, upon execution by the first computer, first image data that can be displayed on an image display device of the first computer as a first temporal sequence of first images
- detection means connected to or forming part of the first computer and configured to continuously acquire at least a part number of the first images and to generate and transmit therefrom corresponding second image data to a compression means
- the compression means connected to the detection means and configured to compress the second image data for data transmission to yield third image data, the compression taking into account second image data corresponding to a part of the first sequence containing a plurality of the first sequence match first pictures,
- a transmission device which is connected to the compression device and which is configured, the third image data to a
- a receiving device connected to the first computer or part of the first computer and configured to receive control information sent from a second computer from the data transmission device, wherein the first computer is configured to use the control information to control the operation of the application, so that the generation of the first image data is affected.
- the compression device may be designed to perform compression of the second image data in the compression, depending on the contents of the first images, with loss of image information.
- the compression device is designed as an application program that is executed on the first computer.
- the compression program may be executed by the same processor (eg, the CPU) of the first computer.
- the acquisition of the first images is also performed by the same processor.
- tests have shown that even a commercial PC is sufficient.
- the already mentioned transmission rates of at least 25 frames per second can be achieved, with a resolution of 800 x 600 pixels and a color depth of 16 bits.
- the compression device may alternatively be implemented at least partially by hardware, for example by a card designed for compression, which is connected to a bus system of the first computer.
- the application program that realizes the compression device also the Detection device on.
- the same computer program thus controls both the acquisition of the first images and the compression of the second image data.
- the second image data after its generation are first stored completely in a memory of the computer and the compression device accesses this stored image data.
- the detection device is designed as an application program which is stored on the first computer and which, when executed, continuously records at least a part number of the first images.
- the arrangement may be completely contained in a personal computer.
- the scope of the invention also includes a corresponding application sharing system, with the described arrangement and with a second computer.
- the second computer has a receiving device for receiving the data transmission signals, a decompressing device for decompressing the data transmission signals, and an image display device.
- the decompressor is configured to generate decompressed fourth image data from the data transmission signals.
- the second computer is configured to generate from the fourth image data a second temporal sequence of second images which corresponds to at least part of the first temporal sequence of first images and which can be displayed in real time, based on the continuous generation of the first image data.
- FIG. 1 shows an application sharing system according to the present invention
- Fig. 2 is a flowchart with a procedure for detecting an image and Fig. 3 is a schematic diagram illustrating the transmission and return of control signals (Syncmarken).
- Fig. 1 shows a first computer PC1, which is equipped with a working memory ST, an image capture device FG and with a compression device CO.
- the computer is a commercially available PC with an Intel Pentium 4 CPU (clock frequency 3 GHz) or a similarly powerful Intel Centrino CPU, wherein the main memory ST is a RAM and has a memory capacity of 512 MB.
- the transmission device processes image signals in accordance with a transmission protocol and transmits corresponding transmission signals via a transmission link L.
- transmission according to the transmission protocol is represented symbolically by a block denoted by PR.
- the transmission link L terminates at a second computer PC2 equipped with a decompressor DEC, a speaker SP and a screen SC.
- the second computer PC2 may be equipped with the usual controls such as keyboard and mouse, trackball or the like pointer instruments.
- the application sharing system is operated, for example, as follows: An application executed by the central processor of the first computer (for example a graphical 3D application) continuously generates first image data as a function of control signals.
- the control signals are triggered by a user of the second computer PC2 using the keyboard and / or the pointer instrument.
- the user of the second computer PC2 controls the application executed on the first computer PC1.
- the first image data may enable a graphic representation recognizable to the user as three-dimensional, and the screen SC (and / or other image presentation means of the second computer PC2) may be designed accordingly.
- the first image data (possibly together with further image data from other applications and / or image data of the operating system) is converted by the operating system and the graphics card of the first computer PC1 into a first sequence of images which are displayed on a screen of the first one not shown in FIG Computers PC1 can be displayed.
- the image capture device FG continuously records individual of these first images from the graphics card and places them in the main memory ST.
- the compression device CO accesses a plurality of these second image data, compresses it and thus reduces the amount of data to be transmitted.
- compression rates of e.g. B. 1: 40 can be achieved, despite high-loss compression high image quality can be achieved.
- the data transmission signals generated by the compression device CO are output to the transmission device, which generates transmission signals therefrom according to the transmission protocol, which are transmitted via the transmission link L.
- the signals are received by the second computer PC2 and supplied to the decompression device DEC in accordance with the transmission protocol, which generates the fourth image data therefrom.
- the second computer PC2 From the fourth image data, the second computer PC2 generates a second series of (second) images, which are displayed on the screen SC.
- audio signals synchronized with the image data become received from the second computer PC2, decompressed and output from the speaker SP in synchronism with the second images.
- the transmission protocol PR is preferably the User Datagram Protocol (UDP).
- UDP like the Transport Control Protocol (TCP), is classified in Layer 4 of the Open Systems Interconnection Standard (OSI). UDP is used here in conjunction with the Internet Protocol (IP, in layer 3 of the OSI).
- IP Internet Protocol
- UDP itself is not related to the transmission connection. Since it is not checked at the transmitter side whether the receiver exists at all or whether the receiver receives data packets, independent of disturbances of the transmission connection with a progressive change of the image contents of the first images can be kept pace. For application sharing, it can be accepted that parts of the image information generated by the compression device are lost.
- Fig. 2 shows a flowchart by means of which a preferred embodiment of a procedure is to be described.
- the procedure can capture a single one of the first images using image information.
- u. U In repeating the capture procedure to capture more of the first sequence of the first images, u. U. each of the following steps are omitted because z.
- Step S1 Determine the location where the image properties are stored and / or determine equivalent information that can be used to access the image properties
- Step S2 reading out the image properties required for acquiring the first image, in particular the image size (in the case of Windows, the step is carried out, for example, using the function GetDC),
- Step S3 creation (in particular reservation of storage space) of a memory structure for the image properties of the first image to be acquired (in Windows the step is carried out, for example, with the function CreateCompatibleDC),
- Step S4 creation (in particular reservation of memory space) of a memory structure for the image data of the first image to be acquired (in Windows the step is carried out, for example, with the function CreateCompatibleBitmap),
- Step S5 Assigning the first image to be acquired to the created memory structures (in Windows, the step is carried out, for example, using the function SelectObject),
- Step S6 Copy the image data of the first image to be acquired into the created memory structure.
- the image acquisition program of the present invention can be executed on a standard personal computer (PC) without removing the CPU (Central Processing Unit) too much.
- the CPU can thus fulfill its actual tasks, namely the execution of the current application programs without disturbances or delays. This is an important requirement for application sharing that is accepted by users.
- the transmission device PR1 is connected via the transmission link L to a second transmission device PR2 of the second computer PC2.
- the transmission devices PR1, PR2 carry out operations corresponding to a transmission protocol (in particular UDP via IP) in order to generate data transmission signals from image data or, conversely, to generate image data from data transmission signals.
- a transmission protocol in particular UDP via IP
- data packets PA and control signals are transmitted via the transmission link L, the control signals being referred to below as sync marks SY.
- the data packets PA and the sync marks SY are transmitted from the first computer to the second computer (in the representation from left to right).
- Via a transmission channel of the same transmission link L available for data transmission in the reverse direction only some of the sync marks SY are transmitted from the second computer back to the first computer (in the representation from right to left), but not the associated data packets PA.
- FIG. 3 shows a total of three data packets PA1, PA2, PA3, representative of a continuous stream of data packets.
- Each of the data packets PA1, PA2, PA3 is assigned one of the sync marks SY1, SY2, SY3.
- the sync marks SY1, SY2, SY3 are transmitted connected to the respective data packet PA1, PA2, PA3 (eg as part of the data packet, for example in a data packet header).
- the data packets are transmitted in the embodiment described here by the first computer with a constant data transmission rate as long as the data transmission rate is not adapted to the transmission conditions.
- the second transmission device PR2 When the second transmission device PR2 has received one of the data packets PA1, PA2, PA3 with the sync marks SY1, SY2, SY3, it decides whether the sync flag SY1, SY2, SY3 is to be sent back to the first transmission device PR1.
- the sync flags SY1, SY3 of every other received data packet PA1, PA3 are sent back.
- the second transmission device PR2 can determine, for example, exclusively on the basis of a consecutive numbering of the data packets or exclusively on the basis of the sync marks, whether the respective sync mark is to be sent back.
- a sync mark is returned only if it is associated with a second or tenth (generally nth, where n is a natural number) data packet (or an integer multiple of 2, 10, or n) in the order of the data packets is.
- the first transmission device PR1 checks, based on the sync stamps received back, how much time has elapsed since the transmission or generation of the respective sync mark.
- the transmission frequency of the data packets can be used.
- it can be determined, for example, based on the removable information from the sync mark information on the serial number of the associated data packet, when the data packet was sent (or generated) or how much time has elapsed since then.
- the first transmission means PR1 decides whether the rate of the third image data generated by the compression of the second image data is adjusted to the current transmission conditions. For example, the review and decision may be ongoing, at regular intervals, or at the start of application sharing. In the following, an embodiment for a configuration of the compression device and the corresponding
- the exemplary embodiment was executed on a computer with the operating system Windows.
- MPEG 4 specifies different profiles for encoding video material, such as video clips. As so-called simple profiles and advanced real-time simple profiles. The profiles are used to use various features of MPEG-4 as efficiently as possible. The profiles limit the tools that are available to a compression device in order to achieve the best possible quality for certain application areas. These profiles have one or more subdivisions called levels that can be combined as desired. Corresponding profiles also exist for the MPEG-2 standard.
- VHQ Mode was disabled because the quality gain is out of proportion to the additional processor load.
- the compression device is to force the transmission of an I-frame in the event of large changes in the image content in the temporal sequence of images.
- this image transmission rate depends on the computing power currently available for the acquisition of the first images and for the compression (in particular the computing power of the CPU) on the first computer.
- the application that generates the first image data performs a test after it is started. In the test, it is determined with which speed an image is detected by the detection device and compressed by the compression device. The application then sets the value for the number of frames until the next I-frame is transmitted. This value is dynamically adjusted if there is a large change.
- Target Bitrate is adjusted according to the available bandwidth of the data transmission connection or according to the available data transmission rate.
- the user can set the value himself or the value is measured automatically via a bandwidth measurement or data transmission rate in the background (eg from the as Computer program configured compression application).
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Die Erfindung betrifft die Übertragung von Bilddaten, wobei von einem ersten Computer (PC1) fortlaufend erste Bilddaten erzeugt werden, die auf einer Bilddarstellungseinrichtung des ersten Computers als erste zeitliche Folge von ersten Bildern dargestellt werden oder dargestellt werden können. Fortlaufend wird zumindest eine Teilanzahl der ersten Bilder erfasst und werden daraus entsprechende zweite Bilddaten erzeugt und zu einer Komprimierungseinrichtung (CO) übertragen. Die zweiten Bilddaten werden von der Komprimierungseinrichtung für eine Datenübertragung komprimiert, sodass dritte Bilddaten entstehen, wobei bei der Komprimierung fortlaufend zweite Bilddaten berücksichtigt werden, die einem Teil der ersten Folge mit einer Mehrzahl der ersten Bilder entsprechen. Die dritten Bilddaten werden an eine Datenübertragungseinrichtung (PR) ausgegeben, die den dritten Bilddaten entsprechende Datenübertragungssignale erzeugt. Auf diese Weise kann nach einem Empfang der Datenübertragungssignale und nach einer Dekomprimierung (DEC) durch einen zweiten Computer (PC2) eine den dritten Bilddaten entsprechende zweite zeitliche Folge von zweiten Bildern erzeugt werden, die, bezogen auf die fortlaufende Erzeugung der ersten Bilddaten, in Echtzeit dargestellt werden kann. Von dem zweiten Computer (PC2) gesendete Steuerinformationen werden von der Datenübertragungseinrichtung (PR) empfangen und zur Steuerung des Betriebs des ersten Computers verwendet, sodass die Erzeugung der ersten Bilddaten beeinflusst wird.
Description
Übertragung von Bilddaten bei Application Sharing
Beschreibung
Die Erfindung betrifft ein Verfahren und eine Anordnung zum Übertragen von Bilddaten, wobei die Bilddaten teilweise oder vollständig von zumindest einer auf einem ersten Computer, insbesondere auf einem konventionellen Personal Computer (PC), ausgeführten Anwendung (Computerprogramm) erzeugt werden. Die Bilddaten können auf einer Bilddarstellungseinrichtung des ersten Computers als Folge von Bildern dargestellt werden oder werden darauf dargestellt. Außerdem werden im Zuge eines Application Sharing auf einer Bilddarstellungseinrichtung eines zweiten Computers Bilder dargestellt, die den auf dem ersten Computer erzeugten Bilddaten entsprechen. Durch Steuersignale kann die zumindest eine Anwendung gesteuert werden, sodass die weitere Erzeugung der Bilddaten beeinflusst wird. Diese Steuersignale werden von einem Benutzer des zweiten Computers erzeugt oder ausgelöst.
Im Fall des Application Sharing wird auf dem ersten Computer zumindest eine Anwendung ausgeführt, deren Resultate zumindest teilweise auf einem zweiten Computer oder einer anderen Einrichtung (die eigenständig ist und entfernt von dem ersten Computer angeordnet ist) zur Verfügung stehen sollen. Die eigentliche Anwendung wird also nicht auf dem zweiten Computer oder der anderen Einrichtung ausgeführt. Daher sind i. d. R. auch keine Lizenzgebühren für die Ausführung auf dem zweiten Computer oder der anderen Einrichtung zu zahlen. Ein weiterer Vorteil des Application Sharing besteht darin, dass der zweite Computer oder die andere Einrichtung nicht für die Ausführung der
Anwendung vorbereitet sein muss. Beispielsweise müssen nicht die für die Ausführung der Anwendung erforderlichen Daten vorhanden sein und/oder muss nicht dieselbe Rechenleistung wie bei dem ersten Computer zur Verfügung stehen. Auch ist es somit möglich, die Resultate der Anwendung einer Mehrzahl von zweiten Computern und/oder anderen Einrichtungen zur Verfügung zu stellen, und zwar wahlweise und/oder zeitlich nacheinander. In dieser Beschreibung wird unter dem Begriff "zweiter Computer" auch immer der Fall der anderen Einrichtung mit verstanden. Bei der anderen Einrichtung handelt es sich beispielsweise um eine Station, die alle üblichen Bedien- und Anzeigeelemente eines Computers hat, an der jedoch nur begrenzte Rechenleistung oder eine auf den Betrieb der Bedien- und Anzeigeelemente spezialisierte Recheneinrichtung zur Verfügung steht. Insbesondere soll jedoch die andere Einrichtung in der Lage sein, die Datenübertragungssignale zu empfangen und die entsprechenden Bilder darzustellen.
Derzeit existiert kein Application Sharing-System, mit dem Bilder, die die Bewegung von Objekten darstellen, in zufrieden stellender Weise bei einer heute üblichen Farbtiefe von zumindest 16 Bit und bei Auflösungen von mindestens 800*600 Pixeln auf der Bilddarstellungseinrichtung des zweiten Computers dargestellt werden können, sodass ein Benutzer des zweiten Computers die auf dem ersten Computer ausgeführte Anwendung in Echtzeit steuern kann. Insbesondere kommt es bei Anwendungen der grafischen Datenverarbeitung - z.B. CAD (Computer Aided Design), CAS (Computer Aided Styling) - darauf an, dass der Benutzer die Bewegung kontinuierlich und ohne erkennbare Zeitverzögerung sehen kann. Andernfalls wird er unter Umständen Steuerbefehle (z. B. mit einer Maus erzeugte Steuerbefehle) auslösen, die nicht mehr dem aktuellen Ausführungszustand der Anwendung entsprechen.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, ein Verfahren und eine Anordnung der eingangs genannten Art anzugeben, die ein Application Sharing mit einer qualitativ hohen Darstellung von Bilddaten auf der Bilddarstellungseinrichtung des zweiten Computers ermöglichen. Insbesondere
sollen die Merkmale eines Application Sharing-Systems erreicht werden können, das die in dem vorangegangenen Absatz beschriebenen Merkmale aufweist, nämlich eine feine örtliche Auflösung, eine geringe erforderliche Bandbreite der Übertragungsverbindung zwischen dem ersten Computer und dem zweiten Computer, die Fähigkeit, die auf dem ersten Computer erzeugten Bilder in Echtzeit auf dem zweiten Computer darstellen zu können, und eine hohe Bildwiederholrate.
Es wird ein Verfahren zur Übertragung von Bilddaten vorgeschlagen, wobei
(a) von einem ersten Computer fortlaufend erste Bilddaten erzeugt werden, die auf einer Bilddarstellungseinrichtung des ersten Computers als erste zeitliche Folge von ersten Bildern dargestellt werden oder dargestellt werden können,
(b) fortlaufend zumindest eine Teilanzahl der ersten Bilder erfasst wird und daraus entsprechende zweite Bilddaten erzeugt und zu einer Komprimierungseinrichtung übertragen werden,
(c) die zweiten Bilddaten von der Komprimierungseinrichtung für eine Datenübertragung komprimiert werden, sodass dritte Bilddaten entstehen, wobei bei der Komprimierung fortlaufend zweite Bilddaten berücksichtigt werden, die einem Teil der ersten Folge mit einer Mehrzahl der ersten Bilder entsprechen,
(d) die dritten Bilddaten an eine Datenübertragungseinrichtung ausgegeben werden, die den dritten Bilddaten entsprechende Datenübertragungssignale erzeugt, sodass nach einem Empfang der Datenübertragungssignale und nach einer Dekomprimierung durch einen zweiten Computer eine den dritten Bilddaten entsprechende zweite zeitliche Folge von zweiten Bildern erzeugt werden kann, die, bezogen auf die fortlaufende Erzeugung der ersten Bilddaten, in Echtzeit dargestellt werden kann, und
(e) von dem zweiten Computer gesendete Steuerinformationen von der Datenübertragungseinrichtung empfangen werden und zur Steuerung des Betriebs des ersten Computers verwendet werden, sodass die Erzeugung der ersten Bilddaten beeinflusst wird.
-A -
Es ist nicht erforderlich, dass die ersten Bilder mit derselben Frequenz erfasst werden, die als Bildwiederholfrequenz von modernen Computerbildschirmen üblich ist. Vielmehr reicht es für das Application Sharing beispielsweise aus, 15 erste Bilder pro Sekunde zu erfassen und daraus die zweiten Bilddaten zu erzeugen.
Unter Echtzeit wird verstanden, dass die zweite Folge von Bildern innerhalb eines definierten Zeitraumes erzeugt werden kann. Insbesondere kann eine Länge des Zeitraumes definiert werden, der bildweise mit der fortlaufenden Erzeugung der ersten Bilddaten oder mit der Darstellung der ersten zeitlichen Folge von Bildern beginnt und innerhalb dessen zumindest die Erfassung des Bildes, die Komprimierung der zweiten Bilddaten und die Datenübertragung abgeschlossen sind. Vorzugsweise ist die Länge des Zeitraumes auf einen Wert festgelegt, sodass ein Betrachter nur geringfügige Unterschiede zwischen der Darstellung der ersten Folge von Bildern und der Darstellung der zweiten Folge von Bildern wahrnehmen kann oder sodass der zeitliche Unterschied der Darstellungen wie bei anderen Datenfernübertragungen von Daten (z. B. der Übertragung von akustischen Signale während eines Telefongesprächs) ist. Ein derartig geringer zeitlicher Unterschied der Darstellungen ist für das Application Sharing ein entscheidender Vorteil.
Unter Echtzeit wird insbesondere auch verstanden, dass die zweite Folge von Bildern fortlaufend mit derselben zeitlichen Verzögerung oder derselben maximalen zeitlichen Verzögerung gegenüber der Erzeugung oder Darstellung der ersten Folge von Bildern sichtbar dargestellt werden kann.
Gemäß einem wesentlichen Gedanken der vorliegenden Erfindung werden bei der Komprimierung fortlaufend zweite Bilddaten berücksichtigt, die einem Teil der ersten Folge mit einer Mehrzahl der ersten Bilder entsprechen. Aufgrund der Mehrzahl der ersten Bilder, die durch die Komprimierung der zweiten Bilddaten berücksichtigt werden, kann die Komprimierung effektiver, mit höherem Komprimierungsgrad durchgeführt werden. Dabei können
insbesondere zeitliche Entwicklungen bei der Veränderung der Bildinhalte berücksichtigt werden.
Bei der Mehrzahl der Bilder kann es sich um zwei Bilder handeln. Vorzugsweise werden bei der Komprimierung jedoch fortlaufend (insbesondere zu vielen verschiedenen Zeitpunkten der Komprimierung) mehr als zwei Bilder (d.h. eine Vielzahl von Bildern) berücksichtigt, z. B. vier bis acht Bilder. Ausnahmen davon können zeitweise und wiederholt gemacht werden, etwa um einen so genannten Keyframe oder I-Frame (Bild, dessen Bilddaten unabhängig von anderen Bildern sind) zu übertragen. Die Anzahl der Bilder, die bei der Komprimierung berücksichtigt werden, kann sich mit fortschreitender Zeit verändern und/oder schwanken.
Bevorzugtermaßen wird dabei abhängig vom Inhalt der zweiten Bilddaten eine verlustbehaftete Komprimierung der zweiten Bilddaten durchgeführt. Optional kann die verlustbehaftete Komprimierung der zweiten Bilddaten außerdem abhängig von der zur Verfügung stehenden Datenübertragungskapazität der Signalübertragung durchgeführt werden.
Insbesondere kann/können bei der Komprimierung eine oder mehrere der folgenden Maßnahmen angewendet werden:
• Informationen über Objekte, die sich in der ersten zeitlichen Folge von Bildern bewegen, werden mit feinerer örtlicher Auflösung und/oder größerer Farbtiefe übertragen als ruhende Teile der Bilder. Vorzugsweise wird nur die Farbtiefe reduziert und/oder die Farbtiefe stärker reduziert als die örtliche Auflösung. Dem entspricht die Fähigkeit des menschlichen Auges, Helligkeitsunterschiede besser auflösen zu können als Farbunterschiede.
• Informationen über Objekte, die sich vor einem Hintergrund bewegen, werden aus der Folge von Bildern gewonnen und zumindest zeitweise separat übertragen.
- S -
Es wird bei der Komprimierung, eine Wavelet-Transformation angewendet.
Die Komprimierung wird dynamisch an die Datenübertragungsrate angepasst.
Informationen über Teilinhalte von Bildern, die in der ersten zeitlichen Folge über einen gegebenen Zeitraum konstant bleiben, werden durch die Komprimierung zumindest teilweise eliminiert. Es werden statistische Informationen über Inhalte einzelner Bilder und/oder über Inhalte einer Mehrzahl von Bildern in der ersten Folge von Bildern zur Komprimierung verwendet. Beispielsweise werden hierbei Korrelationen zwischen zeitlich (d. h. in verschiedenen Bildern) und räumlich (d. h. in demselben Teilbereich eines oder mehrerer Bilder) benachbarten Bildelementen (Pixeln) verwendet. Insbesondere können statistisch häufiger auftretende Bildstrukturen unter Verwendung von kürzeren Codewörtern (d.h. Datenstrukturen mit weniger Dateiibits) codiert werden als Bildstrukturen, die statistisch seltener auftreten. Es wird eine (insbesondere vorwärts gerichtete diskrete) Kosinus- Transformation angewendet, um festzustellen, für welche Teilbereiche von Bildern eine größere Datenkapazität bei der Übertragung zur Verfügung gestellt wird.
Es werden bei der Komprimierung Informationen darüber erzeugt, mit denen auf der Empfangsseite (durch Dekomprimierung) zeitlich zwischen anderen Bildern liegende Bilder oder zeitlich in der Zukunft liegende Bilder errechnet werden können. Insbesondere kann bei der Erzeugung der Informationen nach Teilbildern gesucht werden, die sich gegenüber zeitlich benachbarten Bildern nicht verändert haben bzw. verändern werden. Ein weiterer Anwendungsfall betrifft die Situation, dass sich bewegende Objekte in der Regel über einen Zeitraum kontinuierlich und in ähnlicher Weise weiter bewegen (so genanntes Motion Prediction, deutsch: Bewegungsvorhersage). Diese Situation tritt häufig bei Anwendungen der grafischen Datenverarbeitung auf.
Insbesondere kann die Komprimierung gemäß dem Standard MPEG (Moving Picture Experts Group)-4 durchgeführt werden. Der MPEG-4 Standard wurde entwickelt, um Audio- und Videodaten zur Speicherung auf CD-ROM und DVD und für das digitale Fernsehen zu komprimieren. Der vorliegenden Erfindung liegt die Erkenntnis zu Grunde, dass eine derartige Komprimierung für ein Application Sharing geeignet ist. Damit wird insbesondere der Meinung der Fachwelt begegnet, dass bei einem Application Sharing eine verlustlose Komprimierung anzuwenden ist, also eine Reduktion der in den übertragenen Signalen enthaltenen Informationen nicht zulässig ist. Die Erfindung ist jedoch nicht auf MPEG-4 beschränkt. Vielmehr kann beispielsweise auch eine Komprimierung gemäß dem MPEG-2 Standard durchgeführt werden.
Der Rechenaufwand für die Dekomprimierung auf der Empfangsseite ist in der Regel geringer als der Rechenaufwand für die Komprimierung. Ein Vorteil besteht also darin, dass die Rechenleistung des zweiten Computers geringer sein kann als die Rechenleistung des ersten Computers.
Bei einer speziellen Ausgestaltung der Erfindung wird auf dem ersten Computer eine Anwendung ausgeführt, die zumindest zeitweise grafisch darstellbare Objekte erzeugt, die sich kontinuierlich bewegen und/oder die dreidimensionale Objekte sind, wobei die Objekte bzw. die Bewegung mit der ersten Folge von Bildern dargestellt wird bzw. dargestellt werden kann. Insbesondere bei dieser Ausgestaltung hat sich die erfindungsgemäße Komprimierung mit Berücksichtigung einer Mehrzahl der ersten Bilder als zweckmäßig erwiesen. Insbesondere hierbei kann eine verlustbehaftete Komprimierung durchgeführt werden, ohne dass ein Benutzer des zweiten Computers dies als erhebliche Minderung der Qualität bei der Darstellung empfindet. Dies betrifft vor allem Bilddaten aus Zeiträumen, in denen der Benutzer selbst eine Bewegung eines Objekts herbeiführt und/oder eine Veränderung des Objekts herbeiführt (beispielsweise unter Verwendung einer Zeigereinrichtung). Insbesondere zu diesem Zweck werden verschiedene Bildbereiche desselben Bildes und/oder verschiedene Bilder der Folge von Bildern auf unterschiedliche örtliche
Bildauflösungen komprimiert und/oder eine Bewegungsvorhersage bei der Komprimierung verwendet.
Bei den ersten Bilddaten handelt es sich insbesondere um Bilddaten, die zur Anzeige auf einem Bildschirm bestimmt sind. Im Gegensatz zu Systemen, bei denen die ersten Bilddaten dem Computer zugeführt werden (beispielsweise von einer externen Kamera), werden die ersten Bilddaten von dem ersten Computer selbst erzeugt, insbesondere von einer oder mehreren Anwendungen. Dabei kann eine Mehrzahl von Computerprogrammen gleichzeitig und/oder quasi-gleichzeitig von dem ersten Computer ausgeführt werden, beispielsweise unter Verwaltung eines Bildschirmfenster-basierten Betriebssystems wie Windows® von der Microsoft Corporation, Unix oder Linux.
Eine- bevorzugte Ausführungsform der Erfindung ist speziell für den Einsatz auf Computern mit solchen Betriebssystemen ausgestaltet. Beispielsweise werden fortlaufend die ersten Bilder erfasst, die das Resultat von mehreren auf dem ersten Computer ausgeführten Computerprogrammen sind, und es werden diesen ersten Bildern entsprechende zweite Bilddaten fortlaufend zu der Komprimierungseinrichtung übertragen. Die zweiten Bilddaten können insbesondere in einem Haupt-Arbeitsspeicher (meist ein RAM) gespeichert werden.
Vorzugsweise entsprechen die ersten Bilder jeweils der Darstellung auf einem Bildschirm (Screen), der dem ersten Computer zugeordnet ist und z. B. bei Windows den Desktop und/oder die Inhalte der aktiven Fenster zeigt. Die fortlaufende Erfassung der ersten Bilder erzeugt daher insbesondere eine zeitliche Folge von Screen-Shots. Bei der Weiterverarbeitung der zweiten Bilddaten können jedoch jeweils auch ein oder mehrere einzelne Teile (z. B. Teil-Frames) der ersten Bilder ausgeschnitten und/oder aus den ersten Bildern isoliert werden und kann dieser Teil bzw. können diese Teile komprimiert werden und mit den Datenübertragungssignalen übertragen werden.
- S -
Bei einer bevorzugten Ausführungsform werden die ersten Bilder von einem auf dem ersten Computer ausgeführten Bilderfassungsprogramm fortlaufend erfasst und daraus die zweiten Bilddaten erzeugt. Prinzipiell kann auch Hardware, beispielsweise eine Framegrabber-Karte, hierfür verwendet werden. Die Verwendung des Bilderfassungsprogramms (also von Software) hat jedoch den Vorteil, dass der erste Computer auf einfache und kostengünstige Weise für die erfindungsgemäße Erfassung der ersten Bilder vorbereitet werden kann. Außerdem sind im Handel erhältliche Framegrabber-Karten nicht ohne weitere Maßnahmen dazu geeignet, Bilder des Computers zu erfassen, in dem sie angeordnet sind. Vielmehr dienen sie dazu, Bilder von externen Anwendungen oder Geräten (z. B. Videogeräten, Webkameras, Videokameras) zu erfassen.
Bei dem Bilderfassungsprogramm handelt es sich insbesondere um ein Anwendungsprogramm, das selbständig unter dem Betriebssystem arbeitet und lediglich die für beliebige Anwendungsprogramme zur Verfügung stehenden Schnittstellen zu dem Betriebssystem nutzt (beispielsweise im Gegensatz zu Anwendungsprogrammen, die unter dem Betriebssystem Windows Schnittstellen zu DirectX nutzen). Insbesondere kann der erste Computer ein handelsüblicher Personal Computer (PC) sein, von dessen zentraler Prozessoreinheit (CPU) das Bilderfassungsprogramm ausgeführt wird. Dabei kann das Bilderfassungsprogramm quasi-parallel zu anderen Anwendungen ausgeführt werden. Ein Application Sharing mit der erfindungsgemäßen Bildübertragung ist somit bei einem handelsüblichen PC möglich (z. B. mit einem Pentium 4-Prozessor als CPU bei einer Taktfrequenz von 3 GHz). Bei einem Ausführungsbeispiel der Erfindung werden mit handelsüblichen PCs auf diese Weise Übertragungsraten von zumindest 25 Bildern pro Sekunde erreicht, bei einer Auflösung von 800 x 600 Pixeln und einer Farbtiefe von 16 Bit. Es sind auch höhere Bildauflösungen erreichbar.
Das Bilderfassungsprogramm kann ein Programm sein, das selbständig von demjenigen Anwendungsprogramm (z. B. dem grafischen Programm) ausgeführt werden kann, das die ersten Bilddaten erzeugt. Das Bilderfassungsprogramm ist also insbesondere nicht in das
Anwendungsprogramm integriert. Dies hat den Vorteil, dass das Bilderfassungsprogramm die Bilddaten beliebiger Anwendungsprogramme erfassen kann und dass die Anwendungsprogramme selbst nicht modifiziert werden müssen.
Bei einer besonders bevorzugten Ausgestaltung des Bilderfassungsprogramms werden Bildinformationen über die ersten Bilder verwendet, die unmittelbar von dem Betriebssystem des ersten Computers zur Verfügung gestellt werden. Die Bildinformationen weisen die folgenden Informationen auf:
• Bildeigenschaften des jeweiligen ersten Bildes, insbesondere Bildgröße, örtliche Bildauflösung, Farbtiefe und/oder Bildformat,
• Speicheradresse und/oder Pointer auf Speicheradresse des Bilddatenspeichers, unter der die Bilddaten des jeweiligen ersten Bildes gespeichert sind bzw. über den der Speicherort der Bilddaten gefunden werden kann.
Anstelle der Speicheradresse (des Pointers) kann alternativ eine von dem Betriebssystem zur Verfügung gestellte Prozedur genutzt werden, mit der auf die Bilddaten eines bestimmten ersten Bildes, insbesondere des aktuellen Bildes zur Ausgabe auf einem Bildschirm, zugegriffen werden kann. Bei den Bilddaten handelt es sich zweckmäßigerweise um Bilddaten in einem pixel¬ basierten Bildformat (z. B. Bitmap oder Pixmap).
Unter einem Bild wird in der vorliegenden Beschreibung insbesondere eine Gesamtheit von Bilddaten verstanden, die die vollständigen Informationen darüber enthält, wie ein entsprechendes sichtbares Bild auf einer Bilddarstellungseinrichtung darzustellen ist. Beispielsweise weist die Gesamtheit von Bilddaten für ein Bild in einem pixel-basierten Bildformat die vollständigen Informationen über den Farbwert und die Helligkeit jedes einzelnen Pixels auf.
Wie bereits erwähnt werden bei der vorliegenden Erfindung nicht nur die Datenübertragungssignale von dem ersten Computer zu dem zweiten
Computer gesendet, wobei die Datenübertragungssignale die entsprechenden Informationen über die ersten Bilddaten aufweisen. Vielmehr besteht außerdem die Möglichkeit (beispielsweise über einen oder mehrere zusätzliche Kanäle derselben Datenübertragungsverbindung) Steuerinformationen zur Steuerung der Anwendung von dem zweiten Computer zu dem ersten Computer zu senden. So ist es möglich, dass von dem zweiten Computer zu dem ersten Computer Befehle eines Benutzers des zweiten Computers, insbesondere Tastaturbefehle und/oder Befehle einer Zeigereinrichtung (z. B. Maus), als Steuerinformationen übertragen werden, mit denen die Anwendung gesteuert wird.
Optional können auch zusätzliche Informationen über Resultate und/oder Zustände der Anwendung von dem ersten Computer zu dem zweiten Computer übertragen werden. Beispielsweise können Informationen über akustische Signale über einen zusätzlichen Kanal übertragen werden (in eine oder beide Richtungen), wobei die akustischen Signale zeitlich synchron mit Teilen der Folgen von Bildern hörbar zu machen sind (beispielsweise über einen an dem Computer angeschlossenen Lautsprecher). Es ist jedoch auch möglich, die akustischen Signale zeitlich synchronisiert mit der ersten Folge von Bildern über denselben Übertragungskanal wie die Bilddaten zu übertragen. Beispielsweise können die akustischen Signale von derselben Komprimierungseinrichtung wie die Bilddaten komprimiert werden.
Die zweite Folge von Bildern muss nicht mit der ersten Folge von Bildern identisch sein. Beispielsweise können bei der Erfassung der Bilder einzelne Bilder ausgelassen werden und/oder kann auf sonstige Weise eine Reduktion der Bildinformationen stattfinden, die übertragen werden.
Die Datenübertragungssignale können über eine Daten- Femübertragungsverbindung, z. B. eine Datenleitung eines Computemetzwerks und/oder eine DSL-Datenverbindung, zu dem zweiten Computer übertragen werden. Dabei können zumindest Teilstrecken der Verbindung, beispielsweise das letzte Teilstück vor dem Erreichen des zweiten Computers, als
Verbindungsstrecken mit drahtloser Signalübertragung ausgestaltet sein (z. B. Wireless LAN).
Vorzugsweise werden von dem ersten Computer mit den Datenübertragungssignalen wiederholt Kontrollsignale übertragen.
Die Kontrollsignale können derart ausgestaltet sein, dass auf der Empfangsseite (von dem zweiten Computer) festgestellt werden kann, ob die Kontrollsignale und damit die eigentlichen Datenübertragungssignale in der richtigen zeitlichen Reihenfolge empfangen werden. Anhand der Kontrollsignale kann der zweite Computer beispielsweise feststellen, ob einzelne Datenpakete später empfangen werden als andere Datenpakete, die später gesendet wurden. In diesem Fall kann der zweite Computer entscheiden, die zu spät empfangenen Datenpakete auszusondern oder sie anhand ihrer zeitlichen Signatur sortieren und wenn möglich zur Bilderstellung zu verwenden.
Alternativ oder zusätzlich können die Kontrollsignale oder entsprechende Antwortsignale von dem zweiten Computer zu dem ersten Computer zurück gesendet werden. Dies ermöglicht es dem ersten Computer festzustellen, dass bestimmte Teile der ursprünglich von ihm gesendeten
Datenübertragungssignale zumindest mit hoher Wahrscheinlichkeit den zweiten Computer erreicht haben.
Bei einer bevorzugten Ausgestaltung werden die Kontrollsignale in regelmäßigen zeitlichen Abständen von dem ersten Computer gesendet und/oder weisen andere Zeitinformationen auf. Anhand der Zeitinformationen kann der erste Computer feststellen, zu welchem Zeitpunkt und/oder mit welchem zeitlichen Abstand zueinander die Kontrollsignale erzeugt oder von dem ersten Computer abgesendet wurden. Unter Zeitinformationen wird auch die Information darüber verstanden, um welches bestimmte Kontrollsignal es sich handelt. In diesem Fall kann der erste Computer durch Auswertung weiterer Informationen feststellen, wann das Kontrollsignal erzeugt oder
gesendet wurde bzw. wie viel Zeit seit dem Zeitpunkt der Absendung oder Erzeugung verstrichen ist.
Vorzugsweise wird nicht jedes von dem zweiten Computer empfangene Kontrollsignal (oder das entsprechende Antwortsignal) zu dem ersten Computer zurück gesendet, um die Datenmenge bei der Übertragung von Daten von dem zweiten Computer zu dem ersten Computer nicht unnötig zu erhöhen.
Abhängig von der Auswertung der wieder zurück erhaltenen Kontrollsignale oder der empfangenen Antwortsignale kann der erste Computer die Komprimierungsrate bei der Komprimierung der zweiten Bilddaten und/oder die Datenrate der von der Komprimierungseinrichtung ausgegebenen dritten Bilddaten ändern. Auf diese Weise kann die Komprimierung der zweiten Bilddaten an die Übertragungsverhältnisse zu dem zweiten Computer angepasst werden. Insbesondere wird verhindert, dass bei der Komprimierung zu große Datenmengen erzeugt werden, die nicht oder nicht in angemessener Zeit übertragen werden können. Beispielsweise kann ein oberer Grenzwert für die Zeitspanne zwischen Erzeugung oder Absendung eines Kontrollsignals durch den ersten Computer bis zum Empfang des Antwortsignals oder bis zum Rückerhalt des Kontrollsignals durch den ersten Computer vorgegeben werden. Wird der obere Grenzwert z. B. einmal oder mehrmals überschritten, wird die Komprimierung angepasst. Dementsprechend kann auch ein unterer Grenzwert für die Zeitspanne vorgegeben werden. Wird der Grenzwert z. B. einmal oder mehrmals überschritten, wird die Komprimierungsrate vergrößert und/oder die Datenübertragungsrate von komprimierten Daten gesteigert. Alternativ zu dem unteren Grenzwert kann die Datenübertragungsrate und/oder die Komprimierungsrate auch dann vergrößert werden, wenn der obere Grenzwert nicht erreicht wird oder nicht überschritten wird.
Insbesondere erzeugt eine Übertragungseinrichtung des ersten Computers, die die dritten Bilddaten gemäß einem Übertragungsprotokoll (z. B. das User Datagram Protocol - UDP, auf das noch näher eingegangen wird) in die Datenübertragungssignale umwandelt, die Kontrollsignale und wertet aus, wann
die entsprechenden Antwortsignale oder die zurück gesendeten Kontrollsignale von dem zweiten Computer eintreffen.
Das Application Sharing ist nicht auf den Fall beschränkt, dass ein einziger Computer die Datenübertragungssignale empfängt und entsprechende zweite Bilder erzeugt und dargestellt werden. Vielmehr kann eine Mehrzahl von zweiten Computer (Einrichtungen, die die Anwendung nicht selbst ausführen) gleichzeitig betrieben werden. Auch kann die Anwendung von mehreren der zweiten Computer aus gesteuert werden, wobei jeweils entsprechende Steuerinformationen zu dem ersten Computer übertragen werden.
Neben dem bereits beschriebenen Verfahren zur Übertragung von Bilddaten wird auch eine Anordnung vorgeschlagen, die ausgestaltet sein kann, das Verfahren in einer seiner beschriebenen Varianten auszuführen. Insbesondere weist die Anordnung zur Übertragung von Bilddaten auf:
(a) einen ersten Computer, in dem eine Anwendung gespeichert ist, die ausgestaltet ist, bei Ausführung durch den ersten Computer fortlaufend erste Bilddaten zu erzeugen, die auf einer Bilddarstellungseinrichtung des ersten Computers als erste zeitliche Folge von ersten Bildern dargestellt werden können,
(b) eine Erfassungseinrichtung, die mit dem ersten Computer verbunden ist oder Teil des ersten Computers ist und die ausgestaltet ist, fortlaufend zumindest eine Teilanzahl der ersten Bilder zu erfassen und daraus entsprechende zweite Bilddaten zu erzeugen und zu einer Komprimierungseinrichtung zu übertragen,
(c) die Komprimierungseinrichtung, die mit der Erfassungseinrichtung verbunden ist und ausgestaltet ist, die zweiten Bilddaten für eine Datenübertragung zu komprimieren, sodass dritte Bilddaten entstehen, wobei bei der Komprimierung fortlaufend zweite Bilddaten berücksichtigt werden, die einem Teil der ersten Folge mit einer Mehrzahl der ersten Bilder entsprechen,
(d) eine Übertragungseinrichtung, die mit der Komprimierungseinrichtung verbunden ist und die ausgestaltet ist, die dritten Bilddaten an eine
Datenübertragungseinrichtung auszugeben, die den dritten Bilddaten entsprechende Datenübertragungssignale erzeugt, und (e) eine Empfangseinrichtung, die mit dem ersten Computer verbunden ist oder Teil des ersten Computers ist und die ausgestaltet ist, von einem zweiten Computer gesendete Steuerinformationen von der Datenübertragungseinrichtung zu empfangen, wobei der erste Computer ausgestaltet ist, die Steuerinformationen zur Steuerung des Betriebs der Anwendung zu verwenden, sodass die Erzeugung der ersten Bilddaten beeinflusst wird.
Die Komprimierungseinrichtung kann insbesondere ausgestaltet sein, bei der Komprimierung abhängig von Inhalten der ersten Bilder eine mit Verlust von Bildinformationen behaftete Komprimierung der zweiten Bilddaten durchzuführen.
Beispielsweise ist die Komprimierungseinrichtung als Anwendungsprogramm ausgestaltet, das auf dem ersten Computer ausgeführt wird. Insbesondere kann das Komprimierungsprogramm von demselben Prozessor (z. B. der CPU) des ersten Computers ausgeführt werden. Somit ist eine erhebliche Rechenleistung des ersten Computers erforderlich. Dies gilt insbesondere dann, wenn außer dem Komprimierungsprogramm und dem Anwendungsprogramm, das die ersten Bilddaten erzeugt, auch die Erfassung der ersten Bilder durch denselben Prozessor durchgeführt wird. Versuche haben jedoch gezeigt, dass auch hierfür ein handelsüblicher PC ausreicht. Es können die bereits genannten Übertragungsraten von zumindest 25 Bildern pro Sekunde erreicht werden, bei einer Auflösung von 800 x 600 Pixeln und einer Farbtiefe von 16 Bit. Zur Entlastung des ersten Computers kann die Komprimierungseinrichtung jedoch alternativ zumindest teilweise durch Hardware realisiert sein, beispielsweise durch eine für die Komprimierung ausgestaltete Karte, die an ein Bussystem des ersten Computers angeschlossen ist.
Bei einer speziellen Ausgestaltung der Anordnung weist das Anwendungsprogramm, das die Komprimierungseinrichtung realisiert; auch die
Erfassungseinrichtung auf. Dasselbe Computerprogramm steuert somit sowohl die Erfassung der ersten Bilder als auch die Komprimierung der zweiten Bilddaten. Dennoch ist es zweckmäßig, dass die zweiten Bilddaten nach ihrer Erzeugung zunächst vollständig in einem Speicher des Computers abgelegt werden und die Komprimierungseinrichtung auf diese gespeicherten Bilddaten zugreift.
Vorzugsweise ist die Erfassungseinrichtung als Anwendungsprogramm ausgeführt, das auf dem ersten Computer gespeichert ist und das bei seiner Ausführung fortlaufend zumindest eine Teilanzahl der ersten Bilder erfasst.
Die Anordnung kann vollständig in einem Personal Computer enthalten sein.
Zum Umfang der Erfindung gehört auch ein entsprechendes Application Sharing-System, mit der beschriebenen Anordnung und mit einem zweiten Computer. Der zweite Computer weist eine Empfangseinrichtung zum Empfangen der Datenübertragungssignale, eine Dekomprimierungseinrichtung zur Dekomprimierung der Datenübertragungssignale und eine Bilddarstellungseinrichtung auf. Die Dekomprimierungseinrichtung ist ausgestaltet, aus den Datenübertragungssignalen dekomprimierte vierte Bilddaten zu erzeugen. Der zweite Computer ist ausgestaltet, aus den vierten Bilddaten eine zweite zeitliche Folge von zweiten Bildern zu erzeugen, die zumindest einem Teil der ersten zeitlichen Folge von ersten Bildern entspricht und die, bezogen auf die fortlaufende Erzeugung der ersten Bilddaten, in Echtzeit dargestellt werden kann.
Ein bevorzugtes Ausführungsbeispiel der vorliegenden Erfindung wird nun unter Bezugnahme auf die beigefügte Zeichnung beschrieben. Die einzelnen Figuren zeigen:
Fig. 1 ein Application Sharing-System gemäß der vorliegenden Erfindung,
Fig. 2 ein Flussdiagramm mit einer Prozedur zur Erfassung eines Bildes und
Fig. 3 ein schematisches Diagramm, das die Übertragung und Rücksendung von Kontrollsignalen (Syncmarken) veranschaulicht.
Fig. 1 zeigt einen ersten Computer PC1 , der mit einem Arbeitsspeicher ST, einer Bilderfassungseinrichtung FG und mit einer Komprimierungseinrichtung CO ausgestattet ist. Beispielsweise handelt es sich bei dem Computer um einen handelsüblichen PC mit einer Intel Pentium-4 CPU (Taktfrequenz 3 GHz) oder einer ähnlich leistungsfähigen Intel Centrino CPU, wobei der Arbeitsspeicher ST ein RAM ist und eine Speicherkapazität von 512 MByte hat. Ferner weist der erste Computer PC1 , wie nicht näher in Fig. 1 dargestellt ist, eine Übertragungseinrichtung und eine Grafikkarte auf, die ebenfalls mit dem Bezugszeichen PC1 bezeichnet sind. Die Übertragungseinrichtung bereitet Bildsignale gemäß einem Übertragungsprotokoll auf und überträgt entsprechende Sendesignale über eine Übertragungsverbindung L. In Fig. 1 ist die Übertragung gemäß dem Übertragungsprotokoll symbolisch durch einen mit PR bezeichneten Block dargestellt.
Auf der Empfangsseite der Übertragungsverbindung L ist wiederum ein mit PR bezeichneter Block dargestellt, der die Übertragung gemäß dem Übertragungsprotokoll symbolisiert. Die Übertragungsverbindung L endet an einem zweiten Computer PC2, der mit einer Dekomprimierungseinrichtung DEC, einem Lautsprecher SP und einem Bildschirm SC ausgestattet ist. Wie nicht näher dargestellt ist, kann der zweite Computer PC2 mit den üblichen Bedienungselementen wie Tastatur sowie Maus, Trackball oder dergleichen Zeigerinstrumente ausgestattet sein.
Das Application Sharing-System gemäß Fig. 1 wird beispielsweise wie folgt betrieben: Eine von dem zentralen Prozessor des ersten Computers ausgeführte Anwendung (beispielsweise eine grafische 3D-Anwendung) erzeugt abhängig von Steuersignalen fortlaufend erste Bilddaten. Die Steuersignale werden von einem Benutzer des zweiten Computers PC2 unter Verwendung der Tastatur und/oder des Zeigerinstruments ausgelöst. Auf diese
Weise steuert der Benutzer des zweiten Computers PC2 die auf dem ersten Computer PC1 ausgeführte Anwendung. Insbesondere können die ersten Bilddaten eine für den Benutzer als dreidimensional erkennbare grafische Darstellung ermöglichen und kann der Bildschirm SC (und/oder andere Bilddarstellungsmittel des zweiten Computers PC2) entsprechend ausgestaltet sein.
Die ersten Bilddaten werden (eventuell gemeinsam mit weiteren Bilddaten von anderen Anwendungen und/oder Bilddaten des Betriebssystems) von dem Betriebssystem und der Grafikkarte des ersten Computers PC1 in eine erste Folge von Bildern umgewandelt, die auf einem nicht in Fig. 1 dargestellten Bildschirm des ersten Computers PC1 dargestellt werden können. Von der Bilderfassungseinrichtung FG werden fortlaufend einzelne dieser ersten Bilder aus der Grafikkarte erfasst und in dem Arbeitsspeicher ST abgelegt. Die Komprimierungseinrichtung CO greift auf eine Mehrzahl dieser zweiten Bilddaten zu, komprimiert diese und reduziert somit die zu übertragende Datenmenge. Unter Verwendung des MPEG-4 Standards können derzeit Kompressionsraten von z. B. 1 :40 erreicht werden, wobei trotz verlustbehafteter Kompression hohe Bildqualitäten erreicht werden.
Die von der Komprimierungseinrichtung CO erzeugten Datenübertragungssignale werden an die Übertragungseinrichtung ausgegeben, die daraus gemäß dem Übertragungsprotokoll Sendesignale erzeugt, die über die Übertragungsverbindung L gesendet werden.
Die Signale werden von dem zweiten Computer PC2 empfangen und gemäß dem Übertragungsprotokoll der Dekomprimierungseinrichtung DEC zugeführt, die daraus die vierten Bilddaten erzeugt. Es liegen somit Bilddaten vor, die den ersten Bilddaten entsprechen, wobei die zeitliche Auflösung jedoch in der Regel gröber ist. Aus den vierten Bilddaten erzeugt der zweite Computer PC2 eine zweite Folge von (zweiten) Bildern, die auf dem Bildschirm SC dargestellt werden. Gegebenenfalls werden mit den Bilddaten synchronisierte Audiosignale
von dem zweiten Computer PC2 empfangen, dekomprimiert und von dem Lautsprecher SP synchron mit den zweiten Bildern ausgegeben.
Als Übertragungsprotokoll PR wird vorzugsweise das User Datagram Protocol (UDP) verwendet. UDP ist wie das Transport Control Protocol (TCP) in Schicht 4 des Open Systems Interconnection Standards (OSI) eingeordnet. UDP wird hier in Verbindung mit dem Internet Protocol (IP, in Schicht 3 des OSI) verwendet. Im Vergleich zu TCP, bei dem der Empfang jedes empfangenen Datenpakets einzeln bestätigt wird, können mit UDP höhere Übertragungsraten bei geringeren Verzögerungszeiten bis zum Eintreffen der Datensignale auf der Empfängerseite erzielt werden.
UDP selbst ist nicht auf die Übertragungsverbindung bezogen. Da auf der Senderseite nicht überprüft wird, ob der Empfänger überhaupt existiert oder ob der Empfänger Datenpakete erhält, kann unabhängig von Störungen der Übertragungsverbindung mit einer fortschreitenden Änderung der Bildinhalte der ersten Bilder Schritt gehalten werden. Für das Application Sharing kann in Kauf genommen werden, dass Teile der Bildinformationen verloren gehen, die die Komprimierungseinrichtung erzeugt hat.
Eine Anwendung die UDP zur Übertragung verwendet, muss selbst feststellen in wie weit Fehler in der Übertragung aufgetreten sind, und je nach Bedarf darauf reagieren. Aufgrund der fehlenden Sicherheit die TCP bietet, können mit UDP sehr schnell Daten zwischen zwei Rechnern ausgetauscht werden.
Fig. 2 zeigt ein Flussdiagramm, anhand dessen eine bevorzugte Ausführungsform einer Prozedur beschrieben werden soll. Mit der Prozedur kann unter Nutzung von Bildinformationen ein einzelnes der ersten Bilder erfasst werden. Bei der Wiederholung der Erfassungsprozedur, um weitere der ersten Folge der ersten Bilder zu erfassen, können u. U. einzelne der nachstehenden Schritte ausgelassen werden, da z. B. die entsprechenden Informationen noch von einer früheren Ausführung und/oder von einer Initialisierung der Erfassungsprozedur vorhanden sind:
Schritt S1 : Ermitteln des Orts, wo die Bildeigenschaften gespeichert sind, und/oder Ermitteln von äquivalenten Informationen, unter deren Nutzung auf die Bildeigenschaften zugegriffen werden kann
(unter Windows von der Microsoft Corporation - im Folgenden kurz: Windows - wird der Schritt beispielsweise mit der Funktion GetDesktopWindow ausgeführt, die einen Pointer d.h. Adresszeiger auf den Speicherort der Bildeigenschaften zurückliefert),
Schritt S2: Auslesen der für eine Erfassung des ersten Bildes erforderlichen Bildeigenschaften, insbesondere der Bildgröße (unter Windows wird der Schritt beispielsweise mit der Funktion GetDC ausgeführt),
Schritt S3: Anlegen (insbesondere Reservieren von Speicherplatz) einer Speicherstruktur für die Bildeigenschaften des zu erfassenden ersten Bildes (unter Windows wird der Schritt beispielsweise mit der Funktion CreateCompatibleDC ausgeführt),
Schritt S4: Anlegen (insbesondere Reservieren von Speicherplatz) einer Speicherstruktur für die Bilddaten des zu erfassenden ersten Bildes (unter Windows wird der Schritt beispielsweise mit der Funktion CreateCompatibleBitmap ausgeführt),
Schritt S5: Zuweisen des zu erfassenden ersten Bildes zu den angelegten Speicherstrukturen (unter Windows wird der Schritt beispielsweise mit der Funktion SelectObject ausgeführt),
Schritt S6: Kopieren der Bilddaten des zu erfassenden ersten Bildes in die angelegte Speicherstruktur.
Unter dem Betriebssystem Windows hat sich die zuvor beschriebene Ausgestaltung der Erfassungsprozedur überraschenderweise als besonders schnell erwiesen, insbesondere auch im Gegensatz zu Anwendungsprogrammen, die für den gleichen Zweck Schnittstellen zu DirectX nutzen. Daher kann das erfindungsgemäße Bilderfassungsprogramm auf einem Standard-PC (Personal Computer) ausgeführt werden, ohne die CPU (Central
Processing Unit) zu stark zu belasten. Die CPU kann somit ihre eigentlichen Aufgaben, nämlich die Ausführung der laufenden Anwendungsprogramme ohne Störungen oder Verzögerungen erfüllen. Dies ist eine wichtige Voraussetzung für ein Application Sharing, das von Benutzern akzeptiert wird.
Fig. 3 zeigt eine mit PR1 bezeichnete erste Übertragungseinrichtung des ersten Computers, beispielsweise des ersten Computers PC1 gemäß der Anordnung von Fig. 1. Die Übertragungseinrichtung PR1 ist über die Übertragungsverbindung L mit einer zweiten Übertragungseinrichtung PR2 des zweiten Computers PC2 verbunden. Die Übertragungseinrichtungen PR1 , PR2 führen einem Übertragungsprotokoll (insbesondere UDP über IP) entsprechende Operationen aus, um aus Bilddaten Datenübertragungssignale zu erzeugen bzw. umgekehrt aus Datenübertragungssignalen Bilddaten zu erzeugen. Als Ergebnis werden über die Übertragungsverbindung L Datenpakete PA und Kontrollsignale übertragen, wobei die Kontrollsignale im Folgenden als Syncmarken SY bezeichnet werden. Dabei findet eine Übertragung der Datenpakete PA und der Syncmarken SY von dem ersten Computer zu dem zweiten Computer (in der Darstellung von links nach rechts) statt. Über einen für eine Datenübertragung in umgekehrter Richtung zur Verfügung stehenden Übertragungskanal derselben Übertragungsverbindung L werden lediglich einzelne der Syncmarken SY von dem zweiten Computer zurück zu dem ersten Computer übertragen (in der Darstellung von rechts nach links), nicht aber die zugeordneten Datenpakete PA.
Dargestellt sind in Fig. 3 insgesamt drei Datenpakete PA1 , PA2, PA3, stellvertretend für einen kontinuierlichen Strom von Datenpaketen. Jedem der Datenpakete PA1 , PA2, PA3 ist eine der Syncmarken SY1 , SY2, SY3 zugeordnet. Die Syncmarken SY1 , SY2, SY3 werden mit dem jeweiligen Datenpaket PA1 , PA2, PA3 verbunden übertragen (z. B. als Bestandteil des Datenpakets, etwa in einem Datenpaket-Kopf). Die Datenpakete werden in dem hier beschriebenen Ausführungsbeispiel von dem ersten Computer mit konstanter Datenübertragungsrate gesendet, solange die Datenübertragungsrate nicht an die Übertragungsverhältnisse angepasst wird.
Wenn die zweite Übertragungseinrichtung PR2 eines der Datenpakete PA1 , PA2, PA3 mit den Syncmarken SY1 , SY2, SY3 empfangen hat, entscheidet sie, ob die Syncmarke SY1 , SY2, SY3 zurück an die erste Übertragungseinrichtung PR1 zu senden ist. In dem dargestellten Beispiel werden die Syncmarken SY1 , SY3 jedes zweiten empfangenen Datenpakets PA1 , PA3 zurück gesendet. In der Praxis hat es sich als zweckmäßig erwiesen, weniger als die Syncmarke jedes zweiten empfangenen Datenpakets zurück zu senden, z. B. die Syncmarke jedes zehnten empfangenen Datenpakets.
Alternativ kann die zweite Übertragungseinrichtung PR2 beispielsweise ausschließlich anhand einer fortlaufenden Nummerierung der Datenpakete bzw. ausschließlich anhand der Syncmarken feststellen, ob die jeweilige Syncmarke zurück zu senden ist. Insbesondere wird in diesem Fall eine Syncmarke nur dann zurückgesendet, wenn sie einem zweiten oder zehnten (allgemein n-ten, wobei n eine natürliche Zahl ist) Datenpaket (bzw. einem ganzzahligen Vielfachen von 2, 10 oder n) in der Reihenfolge der Datenpakete zugeordnet ist.
Die erste Übertragungseinrichtung PR1 prüft anhand der zurück empfangenen Syncmarken, wie viel Zeit seit der Sendung oder Erzeugung der jeweiligen Syncmarke verstrichen ist. Dabei kann insbesondere die Übertragungsfrequenz der Datenpakete verwendet werden. Außerdem oder zusätzlich kann beispielsweise anhand der aus der Syncmarke entnehmbaren Information über die fortlaufende Nummer des zugeordneten Datenpakets festgestellt werden, wann das Datenpaket gesendet (oder erzeugt) wurde bzw. wie viel Zeit seitdem verstrichen ist.
Unter Verwendung des Ergebnisses dieser Prüfung entscheidet die erste Übertragungseinrichtung PR1 , ob die Rate der durch die Komprimierung der zweiten Bilddaten erzeugten dritten Bilddaten an die gegenwärtigen Übertragungsverhältnisse angepasst wird. Die Prüfung und Entscheidung kann beispielsweise fortlaufend, in regelmäßigen Zeitabständen oder zu Beginn eines Application Sharing stattfinden.
Im Folgenden wird nun ein Ausführungsbeispiel für eine Konfiguration der Komprimierungseinrichtung und der entsprechenden
Dekomprimierungseinrichtung beschrieben. Das Ausführungsbeispiel wurde auf einem Computer mit dem Betriebssystem Windows ausgeführt.
Die Komprimierung wird gemäß dem MPEG-4 Standard durchgeführt. Zur Definition des Standards wird auf das Dokument ISO/IEC JTC1/SC29/WG11 - N4668, Titel: „MPEG-4 Overview - (V.21 - Jeju Version)" von März 2002 Bezug genommen.
MPEG 4 spezifiziert verschiedene Profile für das Kodieren von Videomaterial, z. B. so genannte Simple-Profile und Advanced Realtime Simple-Profile. Die Profile werden genutzt, um verschiedene Merkmale von MPEG-4 möglichst effizient nutzen zu können. Die Profile begrenzen die Werkzeuge (Tools), die einer Komprimierungseinrichtung zur Verfügung stehen, um für bestimmte - Anwendungsgebiete eine möglichst optimale Qualität zu erreichen. Diese Profile verfügen über eine oder mehrere Unterteilungen, die Levels genannt werden und beliebig kombiniert werden können. Entsprechende Profile existieren auch für den MPEG-2 Standard.
Von den existierenden Profilen hat sich keines als vorteilhaft für das Application Sharing erwiesen. Es wurde daher eine Lösung ohne Profile verwendet, eine (so genannte „unrestricted") Implementierung des XviD Codec (Komprimierer/Dekomprimierer), Version 1.0.1. XviD ist ein Resultat eines Open Source Projekts, das z. B. unter der offiziellen Webseite des Projekts (http://www.xvid.org/) beschrieben ist. Der Codec weist eine Anzahl von Merkmalen auf, die bei der Komprimierung bzw. Dekomprimierung der Bilddaten aktiviert oder deaktiviert bzw. gesetzt werden können. Merkmale des XviD Codec sind z. B. in dem Dokument „XviD Options Explained, Maintained by Koepi (de_koepi@lycos.de)" beschrieben, das unter der Internet-Adresse http://nic.dnsalias.com/XviD_Options_Explained.pdf verfügbar ist.
Das Merkmal „Motion Search Precision" wird auf „6 - Ultra High" gesetzt. Dieses Merkmal definiert mit welcher Präzision nach bewegten Objekten in der Folge der ersten Bilder gesucht werden soll. Durch Experimente wurde festgestellt, dass eine Erhöhung der Präzision der Bewegungssuche in den Bildern ein deutlich besseres Ergebnis erzielt und dass hierfür nur geringfügig mehr Rechenleistung benötigt wird.
Beim Sharing von Büro-Anwendungsprogrammen (wie z. B. von der Microsoft Corporation unter der Bezeichnung Office angebotenen Anwendungen) konnte eine bessere Bildqualität erreicht werden, wenn der „Cartoon Mode" aktiviert wurde. Dieser Modus (Mode) wurde für Zeichentrickfilme entwickelt, doch ließen sich insbesondere große gleichfarbige Flächen des Desktops damit gut komprimieren.
Der „VHQ Mode" war deaktiviert, da der Qualitätsgewinn nicht im Verhältnis zu der zusätzlichen Prozessorlast steht.
Die Komprimierungseinrichtung soll bei großen Veränderungen der Bildinhalte in der zeitlichen Folge von Bildern die Übertragung eines I-Frames erzwingen Ein I-Frame (I = internal) ist ein Bild, dessen Bilddaten unabhängig von den Biiddaten des darauf folgenden und des vorangegangenen Bildes sind. Da bei Experimenten festgestellt wurde, dass dies nicht immer zuverlässig der Fall war, wurde das Merkmal „Maximum I Intervall" dynamisch angepasst, und zwar abhängig von der pro Sekunde zu dem zweiten Computer zu übertragenden Bilder. Die Rate der zu übertragenden Bilder ist insbesondere identisch mit der Rate der aus der Folge der ersten Bilder erfassten Bilder.
Bei einer Ausgestaltung der Erfindung hängt diese Bildübertragungsrate von der auf dem ersten Computer momentan für die Erfassung der ersten Bilder und für die Komprimierung zur Verfügung stehenden Rechenleistung (insbesondere der Rechenleistung der CPU) ab. Je mehr Bilder pro Sekunde übertragen werden sollen, umso höher kann der Wert für „Maximum I Intervall" gesetzt werden. Bei einer Bildübertragungsrate von 20-25 Bildern pro Sekunde
hat sich ein Default-Wert von 300 Bildern bis zur Übertragung des I-Frame als zweckmäßig erwiesen. Bei geringeren Bildübertragungsraten muss dieser Wert verringert werden. Er sollte jedoch den Wert 25 Bilder bis zur Übertragung des nächsten I-Frames nicht unterschreiten. Dabei ist zu berücksichtigen, dass ein niedriger Wert die Bildqualität der auf der Bilddarstellungseinrichtung des zweiten Computers verringert, da die Übertragung eines I-Frames die Übertragung einer großen Datenmenge bedeutet, sodass für die anderen Bilder nur eine geringere Datenmenge zur Verfügung steht.
Bei einer besonderen Ausgestaltung der Erfindung (die unabhängig von dem beschriebenen Ausführungsbeispiel ist) führt die Anwendung, die die ersten Bilddaten erzeugt, (z. B. eine grafische 3D-Anwendung) nach ihrem Start einen Test durch. Bei dem Test wird ermittelt, mit welcher Geschwindigkeit ein Bild von der Erfassungseinrichtung erfasst wird und von der Komprimierungseinrichtung komprimiert wird. Die Anwendung setzt daraufhin den Wert für die Anzahl von Bildern bis zur Übertragung des nächsten I-Frames fest. Dieser Wert wird bei starker Änderung dynamisch angepasst.
„Target Bitrate" wird je nach verfügbarer Bandbreite der Datenübertragungsverbindung bzw. je nach verfügbarer Datenübertragungsrate angepasst. Der Benutzer kann den Wert selbst festlegen, oder der Wert wird über eine Bandbreitenmessung bzw. Messung der Datenübertragungsrate im Hintergrund automatisch (z. B. von der als Computerprogramm ausgestalteten Komprimierungsanwendung) ermittelt.
Soweit Einstellungen von Merkmalen und/oder von Optionen des XviD Codec hier nicht explizit beschrieben wurden, entsprachen diese Einstellungen den in dem Codec voreingestellten Werten und/oder Definitionen (Default).
Claims
1. Verfahren zur Übertragung von Bilddaten, wobei
(a) von einem ersten Computer fortlaufend erste Bilddaten erzeugt werden, die auf einer Bilddarstellungseinrichtung des ersten Computers als erste zeitliche Folge von ersten Bildern dargestellt werden oder dargestellt werden können,
(b) fortlaufend zumindest eine Teilanzahl der ersten Bilder erfasst wird und daraus entsprechende zweite Bilddaten erzeugt und zu einer Komprimierungseinrichtung übertragen werden,
(c) die zweiten Bilddaten von der Komprimierungseinrichtung für eine Datenübertragung komprimiert werden, sodass dritte Bilddaten entstehen, wobei bei der Komprimierung fortlaufend zweite Bilddaten berücksichtigt werden, die einem Teil der ersten Folge mit einer Mehrzahl der ersten Bilder entsprechen,
(d) die dritten Bilddaten an eine Datenübertragungseinrichtung ausgegeben werden, die den dritten Bilddaten entsprechende Datenübertragungssignale erzeugt, sodass nach einem Empfang der Datenübertragungssignale und nach einer Dekomprimierung durch einen zweiten Computer eine den dritten Bilddaten entsprechende zweite zeitliche Folge von zweiten Bildern erzeugt werden kann, die, bezogen auf die fortlaufende Erzeugung der ersten Bilddaten, in Echtzeit dargestellt werden kann, und
(e) von dem zweiten Computer gesendete Steuerinformationen von der Datenübertragungseinrichtung empfangen werden und zur Steuerung des Betriebs des ersten Computers verwendet werden, sodass die Erzeugung der ersten Bilddaten beeinflusst wird.
2. Verfahren nach Anspruch 1 , wobei die Datenübertragungssignale über eine Daten-Fernübertragungsverbindung zu dem zweiten Computer übertragen werden.
3. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Datenübertragungssignale über eine Datenübertragungsverbindung übertragen werden und anschließend dekomprimiert werden, sodass dekomprimierte vierte Bilddaten zur Verfügung stehen, und wobei der zweite Computer aus den dekomprimierten vierten Bilddaten eine zweite zeitliche Folge von zweiten Bildern erzeugt und in Echtzeit auf einer Bilddarstellungseinrichtung darstellt.
4. Verfahren nach einem der vorhergehenden Ansprüche, wobei mit den Datenübertragungssignalen wiederholt Kontrollsignale zu dem zweiten Computer übertragen werden, wobei von dem zweiten Computer zumindest ein Teil der Kontrollsignale oder entsprechende Antwortsignale zu dem ersten Computer zurück übertragen werden und wobei unter Verwendung der zurück übertragenen Kontrollsignale oder Antwortsignale entschieden wird, ob eine Komprimierungsrate bei der Komprimierung der zweiten Bilddaten und/oder eine Datenrate der von der Komprimierungseinrichtung ausgegebenen dritten Bilddaten geändert wird.
5. Verfahren nach einem der vorhergehenden Ansprüche, wobei bei der Komprimierung abhängig von Inhalten der ersten Bilder eine mit Verlust von Bildinformationen behaftete Komprimierung der zweiten Bilddaten durchgeführt wird.
6. Verfahren nach einem der vorhergehenden Ansprüche, wobei die ersten Bilder von einem auf dem ersten Computer ausgeführten Bilderfassungsprogramm fortlaufend erfasst werden und daraus die zweiten Bilddaten erzeugt werden.
7. Verfahren nach dem vorhergehenden Anspruch, wobei das Bilderfassungsprogramm und zumindest ein Anwendungsprogramm, mit dem die ersten Bilddaten erzeugt werden, gleichzeitig oder quasi-gleichzeitig von einem zentralen Datenprozessor des ersten Computers ausgeführt werden.
8. Verfahren nach einem der vorhergehenden Ansprüche, wobei die ersten Bilder jeweils einem gesamten Bildinhalt der Bilddarstellungseinrichtung des ersten Computers entsprechen.
9. Verfahren nach dem vorhergehenden Anspruch, wobei für die Erfassung der ersten Bilder Bildinformationen über die ersten Bilder verwendet werden, die unmittelbar von einem Betriebssystem des ersten Computers zur Verfügung gestellt werden, wobei Bildinformationen Bildeigenschaften des jeweiligen ersten Bildes, insbesondere Bildgröße, örtliche Bildauflösung, Farbtiefe und/oder Bildformat, und eine Speicheradresse und/oder einen Pointer auf eine Speicheradresse eines Bilddatenspeichers aufweisen und wobei unter der Speicheradresse die Bilddaten des jeweils zu erfassenden ersten Bildes gespeichert sind bzw. wobei unter Verwendung des Pointers der Speicherort der Bilddaten in dem Bilddatenspeicher gefunden werden kann.
10. Verfahren nach einem der vorhergehenden Ansprüche, wobei die ersten Bilddaten zumindest ein bewegliches dreidimensionales Objekt darstellen und wobei das dreidimensionale Objekt mit einer auf dem ersten Computer ausgeführten Anwendung erzeugt wird.
11. Verfahren nach dem vorhergehenden Anspruch, wobei die ersten Bilddaten geeignet sind, auf der Bilddarstellungseinrichtung des ersten Computers durch zwei parallele erste zeitliche Folgen von ersten Bildern dreidimensional dargestellt zu werden, und wobei erste Bilder von beiden ersten Folgen erfasst, komprimiert und mit Hilfe der Datenübertragungssignale übertragen werden, sodass auf der Bilddarstellungseinrichtung des zweiten Computers in Echtzeit den ersten Bilddaten entsprechende Bilder dreidimensional dargestellt werden können.
12. Anordnung zur Übertragung von Bilddaten, mit: (a) einem ersten Computer (PC1), in dem eine Anwendung gespeichert ist, die ausgestaltet ist, bei Ausführung durch den ersten Computer (PC1) fortlaufend erste Bilddaten zu erzeugen, die auf einer Bilddarstellungseinrichtung des ersten Computers als erste zeitliche Folge von ersten Bildern dargestellt werden können,
(b) eine Erfassungseinrichtung (FG), die mit dem ersten Computer (PC1 ) verbunden ist oder Teil des ersten Computers (PC1 ) ist und die ausgestaltet ist, fortlaufend zumindest eine Teilanzahl der ersten Bilder zu erfassen und daraus entsprechende zweite Bilddaten zu erzeugen und zu einer Komprimierungseinrichtung zu übertragen,
(c) der Komprimierungseinrichtung (CO), die mit der Erfassungseinrichtung (FG) verbunden ist und ausgestaltet ist, die zweiten Bilddaten von der Komprimierungseinrichtung für eine Datenübertragung zu komprimieren, sodass dritte Bilddaten entstehen, wobei bei der Komprimierung fortlaufend zweite Bilddaten berücksichtigt werden, die einem Teil der ersten Folge mit einer Mehrzahl der ersten Bilder entsprechen,
(d) einer Übertragungseinrichtung (PC1 ), die mit der Komprimierungseinrichtung (CO) verbunden ist und die ausgestaltet ist, die dritten Bilddaten an eine Datenübertragungseinrichtung (PR) auszugeben, die den dritten Bilddaten entsprechende Datenübertragungssignale erzeugt, und
(e) einer Empfangseinrichtung (PC1 ), die mit dem ersten Computer (PC1) verbunden ist oder Teil des ersten Computers (PC1 ) ist und die ausgestaltet ist, von einem zweiten Computer (PC2) gesendete Steuerinformationen von der Datenübertragungseinrichtung zu empfangen, wobei der erste Computer ausgestaltet ist, die Steuerinformationen zur Steuerung des Betriebs der Anwendung zu verwenden, sodass die Erzeugung der ersten Bilddaten beeinflusst wird.
13. Anordnung nach dem vorhergehenden Anspruch, wobei die Komprimierungseinrichtung (CO) ausgestaltet ist, bei der Komprimierung abhängig von Inhalten der zweiten Bilddaten eine mit Verlust von Bildinformationen behaftete Komprimierung der zweiten Bilddaten durchzuführen.
14. Anordnung nach einem der beiden vorhergehenden Ansprüche, wobei die Erfassungseinrichtung (FG) als Anwendungsprogramm ausgeführt ist, das auf dem ersten Computer gespeichert ist und das bei seiner Ausführung fortlaufend zumindest die Teilanzahl der ersten Bilder erfasst.
15. Personal Computer, der eine Anordnung nach einem der vorhergehenden Ansprüche aufweist.
16. Application Sharing-System, mit der Anordnung nach einem der Ansprüche 12 bis 14, und mit einem zweiten Computer (PC2), der eine Empfangseinrichtung (PC2) zum Empfangen der Datenübertragungssignale, eine Dekomprimierungseinrichtung (DEC) zur Dekomprimierung der Datenübertragungssignale und eine Bilddarstellungseinrichtung (SC) aufweist, wobei die Dekomprimierungseinrichtung (DEC) ausgestaltet ist, aus den Datenübertragungssignalen dekomprimierte vierte Bilddaten zu erzeugen, und wobei der zweite Computer (PC2) ausgestaltet ist, aus den vierten Bilddaten eine zweite zeitliche Folge von zweiten Bildern zu erzeugen, die zumindest einem Teil der ersten zeitlichen Folge von ersten Bildern entspricht und die, bezogen auf die fortlaufende Erzeugung der ersten Bilddaten, in Echtzeit dargestellt werden kann.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102004033766A DE102004033766A1 (de) | 2004-07-11 | 2004-07-11 | Übertragung von Bilddaten bei Application Sharing |
| PCT/EP2005/007283 WO2006005495A1 (de) | 2004-07-11 | 2005-06-30 | Übertragung von bilddaten bei application sharing |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP1766985A1 true EP1766985A1 (de) | 2007-03-28 |
Family
ID=35004163
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP05759653A Withdrawn EP1766985A1 (de) | 2004-07-11 | 2005-06-30 | Übertragung von bilddaten bei application sharing |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US20080018741A1 (de) |
| EP (1) | EP1766985A1 (de) |
| JP (1) | JP2008506324A (de) |
| DE (1) | DE102004033766A1 (de) |
| WO (1) | WO2006005495A1 (de) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5625315B2 (ja) * | 2009-10-22 | 2014-11-19 | 船井電機株式会社 | 画像表示装置および画像表示システム |
| CN107809635A (zh) * | 2011-11-14 | 2018-03-16 | 深圳迈辽技术转移中心有限公司 | 信息传输装置 |
| CN104010207B (zh) * | 2013-02-27 | 2018-10-12 | 联想(北京)有限公司 | 一种数据处理方法、被控设备与控制设备 |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6078349A (en) * | 1995-06-07 | 2000-06-20 | Compaq Computer Corporation | Process and system for increasing the display resolution of a point-to-point video transmission relative to the actual amount of video data sent |
| US6654060B1 (en) * | 1997-01-07 | 2003-11-25 | Canon Kabushiki Kaisha | Video-image control apparatus and method and storage medium |
| US5940082A (en) * | 1997-02-14 | 1999-08-17 | Brinegar; David | System and method for distributed collaborative drawing |
| JP3581560B2 (ja) * | 1997-07-29 | 2004-10-27 | キヤノン株式会社 | カメラ制御システムおよびコンピュータ端末およびそれらの制御方法およびそれらの制御を実行するプログラムを記憶した記憶媒体 |
| US6225984B1 (en) * | 1998-05-01 | 2001-05-01 | Hitachi Micro Systems, Inc. | Remote computer interface |
| US6323858B1 (en) * | 1998-05-13 | 2001-11-27 | Imove Inc. | System for digitally capturing and recording panoramic movies |
| US6384821B1 (en) * | 1999-10-04 | 2002-05-07 | International Business Machines Corporation | Method and apparatus for delivering 3D graphics in a networked environment using transparent video |
| US20030085922A1 (en) * | 2001-04-13 | 2003-05-08 | Songxiang Wei | Sharing DirectDraw applications using application based screen sampling |
| US20030191860A1 (en) * | 2002-04-05 | 2003-10-09 | Gadepalli Krishna K. | Accelerated collaboration of high frame rate applications |
-
2004
- 2004-07-11 DE DE102004033766A patent/DE102004033766A1/de not_active Withdrawn
-
2005
- 2005-06-30 WO PCT/EP2005/007283 patent/WO2006005495A1/de not_active Ceased
- 2005-06-30 JP JP2007520714A patent/JP2008506324A/ja not_active Withdrawn
- 2005-06-30 US US11/632,103 patent/US20080018741A1/en not_active Abandoned
- 2005-06-30 EP EP05759653A patent/EP1766985A1/de not_active Withdrawn
Non-Patent Citations (1)
| Title |
|---|
| See references of WO2006005495A1 * |
Also Published As
| Publication number | Publication date |
|---|---|
| DE102004033766A1 (de) | 2006-02-02 |
| WO2006005495A1 (de) | 2006-01-19 |
| JP2008506324A (ja) | 2008-02-28 |
| US20080018741A1 (en) | 2008-01-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE4339753C2 (de) | Vorrichtung zum Komprimieren und Dekomprimieren von Bilddaten | |
| DE69527577T2 (de) | Bildkodierungsgerät mit mehreren Kodierern | |
| DE69715136T2 (de) | Bilddatenkompression für interaktive anwendungen | |
| DE10113880B4 (de) | Verfahren zur Komprimierung und Dekomprimierung von Videodaten | |
| DE112018002112T5 (de) | Systeme und verfahren zum rendern & vorkodierte lastschätz-basierte codierer-ansprech-bezogene anwendungen | |
| DE19739266B4 (de) | Verfahren und Vorrichtung zum Kodieren binärer Formen | |
| DE112018002117B4 (de) | Systeme und verfahren für verzögerte post-prozesse in der videocodierung | |
| DE60211790T2 (de) | Videokodierung mit konstanter Qualität | |
| WO2016059257A1 (de) | Verfahren zur anpassung eines zu übertragenden datenstroms an eine ressourcenauslastung | |
| WO2006005495A1 (de) | Übertragung von bilddaten bei application sharing | |
| DE69833243T2 (de) | Verfahren und Anlage zum Hinzufügen von Information zu einem Videosignal | |
| DE60312976T2 (de) | System zum dynamischen multiplexen digitaler ströme | |
| EP3655920B1 (de) | Verfahren und vorrichtung zur bewertung von bildausschnitten für eine korrespondenzbildung | |
| DE69431072T2 (de) | Vorrichtung zur komplexitätsbestimmung zum steuern der kodierung eines videosignals | |
| DE102012209113B4 (de) | Verfahren und Vorrichtung zur rechnergestützten Verarbeitung von SAR-Rohdaten | |
| EP0336510B1 (de) | Prädiktiver Standbildcodierer | |
| DE69020493T2 (de) | Kodierungsgerät, das einen Koder mit variabler Länge enthält, und dazugehöriges Dekodierungsgerät. | |
| DE102016120845B4 (de) | Kamerasystem und Betriebsverfahren hierfür | |
| DE69428540T2 (de) | Video-Überwachungsverfahren und -Vorrichtung | |
| EP1185084A2 (de) | Bildkodierungsverfahren und Bildkodierer | |
| WO2021028178A1 (de) | Verfahren zum übertragen einer metainformation zu einem bild eines videostroms | |
| DE102021203087A1 (de) | Kompression von Audiodaten im Fahrzeug | |
| DE69735408T2 (de) | Digitale Videokamera mit konstanter Bitrate und Übertragungssystem mit einer derartigen Kamera | |
| DE10138532A1 (de) | Verfahren zum dynamischen, priorisierbaren und wahlfreien Zugriff auf Bildbereiche in JPEG2000-komprimierten Bildern sowie darauf aufbauende Client-Server-Architektur | |
| WO2005104559A1 (de) | Prädiktionsverfahren, sowie zugehöriges verfahren zur decodierung eines prädiktionsverfahrens, zugehörige encodiervorrichtung und decodiervorrichtung |
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: 20070208 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU MC NL PL PT RO SE SI SK TR |
|
| 17Q | First examination report despatched |
Effective date: 20070629 |
|
| DAX | Request for extension of the european patent (deleted) | ||
| 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: 20110104 |