KR20160048430A - Digital device and method of processing data thereof - Google Patents
Digital device and method of processing data thereof Download PDFInfo
- Publication number
- KR20160048430A KR20160048430A KR1020140145036A KR20140145036A KR20160048430A KR 20160048430 A KR20160048430 A KR 20160048430A KR 1020140145036 A KR1020140145036 A KR 1020140145036A KR 20140145036 A KR20140145036 A KR 20140145036A KR 20160048430 A KR20160048430 A KR 20160048430A
- Authority
- KR
- South Korea
- Prior art keywords
- image data
- data
- image
- service
- manager
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims abstract description 104
- 238000000034 method Methods 0.000 title claims description 124
- 238000003672 processing method Methods 0.000 abstract description 5
- 230000008569 process Effects 0.000 description 74
- 238000004891 communication Methods 0.000 description 39
- 230000006870 function Effects 0.000 description 32
- 238000010586 diagram Methods 0.000 description 27
- 238000007726 management method Methods 0.000 description 25
- 230000000694 effects Effects 0.000 description 12
- 230000005236 sound signal Effects 0.000 description 11
- 238000011161 development Methods 0.000 description 10
- 230000004044 response Effects 0.000 description 10
- 238000012384 transportation and delivery Methods 0.000 description 10
- 238000006243 chemical reaction Methods 0.000 description 9
- 238000010295 mobile communication Methods 0.000 description 7
- 238000013468 resource allocation Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000002708 enhancing effect Effects 0.000 description 5
- 238000007639 printing Methods 0.000 description 5
- 239000013256 coordination polymer Substances 0.000 description 4
- 230000001965 increasing effect Effects 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 241001677731 Enyo Species 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 239000000243 solution Substances 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000004043 responsiveness Effects 0.000 description 2
- 101000591286 Homo sapiens Myocardin-related transcription factor A Proteins 0.000 description 1
- 102100034099 Myocardin-related transcription factor A Human genes 0.000 description 1
- 206010034432 Performance fear Diseases 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000005684 electric field Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000005672 electromagnetic field Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000010408 film Substances 0.000 description 1
- 230000020169 heat generation Effects 0.000 description 1
- 238000000115 helium ionisation detection Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 230000003387 muscular Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000010355 oscillation Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000037361 pathway Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000013404 process transfer Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000035807 sensation Effects 0.000 description 1
- 238000005507 spraying Methods 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
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/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/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
-
- 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
-
- 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/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
-
- 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 program guide from data received from the Internet and a Head-end, 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
-
- 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/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4782—Web browsing, e.g. WebTV
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
Description
BACKGROUND OF THE
The transition from analog broadcasting to digital broadcasting is being made. Digital broadcasting is stronger than external analog noise compared with conventional analog broadcasting, so data loss is small, error correction is advantageous, and resolution is high, thus providing a clearer picture. Unlike analog broadcasting, digital broadcasting also provides bidirectional services. In addition to existing media such as terrestrial, satellite, and cable, IPTV broadcasting services that provide real-time broadcasting and content-on-demand (CoD) services through IP (Internet Protocol)
Conventionally, it has been impossible to edit graphic data on a TV. However, a web-based graphic editor can be implemented according to the development of web technology. However, the performance of the graphic editor is limited, and it is still difficult to implement the device for embedded purposes. Recently, in order to view a graphic image or data obtained by imaging a mobile device or a digital camera through the influence of digital convergence through a TV or through a printing device However, as described above, the graphic editor is inconvenient in terms of performance, convenience of editing, and the like because it can not properly support the TV or the printing device.
In order to solve the above problems, an object of the present invention is to implement a web-based graphic editor in an embedded environment of a digital device to edit high-resolution image data received through an external device or a server.
Another object of the present invention is to provide a graphic device of a digital device which can improve the response speed of an overall device by reducing the burden on resources such as a CPU (Centrual Processing Unit) by ensuring various user experiences and minimizing memory usage To provide a graphic editor.
Another object of the present invention is to promptly and easily process high-resolution image data having a large capacity of data, thereby enhancing the usability of the user and enhancing the product satisfaction to enhance the desire to purchase.
The technical problem to be solved by the present invention is not limited to the above-described technical problems and other technical problems which are not mentioned can be clearly understood by those skilled in the art from the following description .
In order to solve the above problems, a digital device and a data processing method according to the present invention are disclosed herein.
Herein, a method of processing data in a digital device according to an exemplary embodiment of the present invention includes loading image data, decoding and resizing the loaded image data, attaching the resized image data to a web browser and registering And editing the registered image data through the web browser. Here, the data processing method may include receiving an image storage request, determining whether to store the resized image data, re-decoding the loaded image data when the resized image data is not stored, Replacing the re-decoded image data with an image and calculating output data, encoding the substituted image data, and storing or outputting the encoded image data.
A digital device according to an embodiment of the present invention includes an input interface for receiving image data, loading of the image data, and editing commands of the loaded image data, a decoder for decoding the image data to be loaded, A control unit for controlling the registration and the registration of the resized image data to the web browser, and an image for editing the registered image data through the web browser, Processing unit. Here, the input interface unit may further receive an image storage request, and when the controller does not store the resize image data, it may re-decode the loaded image data and output It can be controlled to replace with re-decoded image data into an image and calculate output data to encode, store or output the substituted image data.
It is to be understood that the solution to the technical problem solved by the present invention is not limited to the above-mentioned solution, and other solutions not mentioned may be clearly understood from the following description to those skilled in the art to which the present invention belongs .
According to the present invention, there are the following effects.
According to an embodiment of the present invention, a web-based graphic editor is implemented in an embedded environment of a digital device, and high-resolution image data input through an external device or a server can be edited.
According to another embodiment of the present invention, there is an effect of providing a graphic editor of a digital device which improves the response speed of a device such as a CPU by minimizing memory usage while ensuring various user experiences.
According to still another embodiment of the present invention, high-resolution image data having a large capacity of data can be processed quickly and easily, thereby enhancing the usability of the user, improving the product satisfaction, and enhancing the desire to purchase .
The effects obtained by the present invention are not limited to the above-mentioned effects, and other effects not mentioned can be clearly understood by those skilled in the art from the following description will be.
1 is a schematic diagram illustrating a service system including a digital device according to an exemplary embodiment of the present invention;
2 is a block diagram illustrating a digital device according to an embodiment of the present invention;
3 is a block diagram illustrating a digital device according to another embodiment of the present invention;
4 is a block diagram illustrating a digital device according to another embodiment of the present invention;
FIG. 5 is a block diagram illustrating a detailed configuration of the control unit of FIGS. 2 to 4 according to an embodiment of the present invention; FIG.
Figure 6 illustrates an input means coupled to the digital device of Figures 2 through 4 according to one embodiment of the present invention;
FIG. 7 is a diagram illustrating a Web OS architecture according to an embodiment of the present invention; FIG.
8 is a diagram illustrating an architecture of a web OS device according to an embodiment of the present invention;
9 is a diagram illustrating a graphical composition flow in a web OS device according to an embodiment of the present invention;
10 is a diagram illustrating a media server according to an embodiment of the present invention;
11 is a diagram illustrating a configuration block of a media server according to an embodiment of the present invention;
12 is a diagram illustrating a relationship between a media server and a TV service according to an embodiment of the present invention;
13 is a diagram for explaining a graphic data output method using a web-based graphic editor according to an embodiment of the present invention;
14 and 15 are diagrams for explaining a process of loading an entity for editing / outputting graphic data according to an embodiment of the present invention;
16 is a view for explaining a structure for managing an image object according to an embodiment of the present invention;
17 is a view for explaining an image storing process according to an embodiment of the present invention; And
18 is a view for explaining a hardware decoder interlocking structure according to an embodiment of the present invention.
Hereinafter, various embodiments (s) of a digital device and a data processing method in a digital device according to the present invention will be described in detail with reference to the drawings.
The suffix "module "," part ", and the like for components used in the present specification are given only for ease of specification, and both may be used as needed. Also, even when described in ordinal numbers such as " 1st ", "2nd ", and the like, it is not limited to such terms or ordinal numbers.
In addition, although the terms used in the present specification have been selected from the general terms that are widely used in the present invention in consideration of the functions according to the technical idea of the present invention, they are not limited to the intentions or customs of the artisan skilled in the art, It can be different. However, in certain cases, some terms are arbitrarily selected by the applicant, which will be described in the related description section. Accordingly, it should be understood that the term is to be interpreted based not only on its name but on its practical meaning as well as on the contents described throughout this specification.
It is to be noted that the contents of the present specification and / or drawings are not intended to limit the scope of the present invention.
As used herein, the term " digital device " includes all devices that perform at least one of transmitting, receiving, processing, and outputting data, content, services, The digital device can be paired or connected (hereinafter, referred to as 'pairing') with another digital device, an external server, or the like through a wire / wireless network, Can be transmitted / received. At this time, if necessary, the data may be appropriately converted before the transmission / reception. The digital device may be a standing device such as a network TV, a Hybrid Broadcast Broadband TV (HBBTV), a Smart TV, an IPTV (Internet Protocol TV), a PC (Personal Computer) And a mobile device or handheld device such as a PDA (Personal Digital Assistant), a smart phone, a tablet PC, a notebook, and the like. In order to facilitate understanding of the present invention and to facilitate the description of the present invention, FIG. 2, which will be described later, describes a digital TV, and FIG. 3 illustrates and describes a mobile device as an embodiment of a digital device. In addition, the digital device described in this specification may be a configuration having only a panel, a configuration such as a set-top box (STB), a device, a system, etc. and a set configuration .
The term " wired / wireless network " as used herein collectively refers to communication networks that support various communication standards or protocols for pairing and / or data transmission / reception between digital devices or digital devices and external servers. Such a wired / wireless network includes all of the communication networks to be supported by the standard now or in the future, and is capable of supporting one or more communication protocols therefor. Such a wired / wireless network includes, for example, a USB (Universal Serial Bus), a Composite Video Banking Sync (CVBS), a Component, an S-Video (Analog), a DVI (Digital Visual Interface) A communication standard or protocol for a wired connection such as an RGB or a D-SUB, a Bluetooth standard, a radio frequency identification (RFID), an infrared data association (IrDA), an ultra wideband (UWB) (ZigBee), DLNA (Digital Living Network Alliance), WLAN (Wi-Fi), Wibro (Wireless broadband), Wimax (World Interoperability for Microwave Access), HSDPA (High Speed Downlink Packet Access) A long term evolution (LTE-Advanced), and Wi-Fi direct, and a communication standard or protocol for the network.
In addition, when the term is simply referred to as a digital device in this specification, the meaning may mean a fixed device or a mobile device depending on the context, and may be used to mean both, unless specifically stated otherwise.
Meanwhile, a digital device is an intelligent device that supports, for example, a broadcast receiving function, a computer function or a support, at least one external input, and the like. The digital device may be an e-mail, web browsing, Banking, game, application, and so on. In addition, the digital device may include an interface for supporting at least one input or control means (hereinafter, " input means ") such as a handwriting input device, a touch- .
In addition, the digital device can use a standardized general-purpose OS (Operating System), but in particular, the digital device described in this specification uses the Web OS as an embodiment. Therefore, a digital device can handle adding, deleting, amending, and updating various services or applications on a general-purpose OS kernel or a Linux kernel. And through which a more user-friendly environment can be constructed and provided.
Meanwhile, the above-described digital device can receive and process an external input. The external input is connected to an external input device, that is, the digital device, through the wired / wireless network, An input means or a digital device. For example, the external input may be a game device such as a high-definition multimedia interface (HDMI), a playstation or an X-Box, a smart phone, a tablet PC, a pocket photo devices such as digital cameras, printing devices, smart TVs, Blu-ray device devices and the like.
In addition, the term "server" as used herein refers to a digital device or system that supplies data to or receives data from a digital device, that is, a client, and may be referred to as a processor do. The server may include a portal server for providing a web page, a web content or a web service, an advertising server for providing advertising data, A content server providing content, an SNS server providing a social network service (SNS), a service server provided by a manufacturer, a video on demand (VoD) service or a streaming service And a service server that provides a Multichannel Video Programming Distributor (MVPD) and a pay service, for example.
In addition, in the following description for convenience of explanation, only the application is described in the context of the present invention, and the meaning may include not only the application but also the service based on the context and the like.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
1 is a schematic diagram illustrating a service system including a digital device according to an exemplary embodiment of the present invention.
1, a service system includes a
The
The
The
The above-described
The
The
Meanwhile, the
In addition, the
In FIG. 1, the
A digital device according to an embodiment of the present invention includes an input interface for receiving image data, loading of the image data, and editing commands of the loaded image data, a decoder for decoding the image data to be loaded, A controller for controlling loading of the image data, decoding and resizing of the loaded image data, and registering and registering the resized image data in a web browser, and editing the registered image data through a web browser And an image processing unit. Here, the input interface unit may further receive an image storage request, and when the controller does not store the resize image data, it may re-decode the loaded image data and output It can be controlled to replace with re-decoded image data into an image and calculate output data to encode, store or output the substituted image data.
The controller may determine whether the loaded image data is resized and determine whether to resize the loaded image data based on a maximum resolution supported by an application related to the image data. On the other hand, the decoding and resizing may be simultaneously processed by a hardware decoder and a scaler, and an image object related to the image data to be attached to and registered in the web browser may be determined such that the image data object includes the resized image data And flag data that identifies whether or not the data is valid. Wherein the control unit determines whether to store the resize image data based on an output application of the image data, substitutes the decoded image data with the output image, calculates output data, and prepares the re-decoded image data The data for the coordinates, size and shape can be calculated to apply the edits of the image data. In addition, the control unit may control to decode the image data in cooperation with a hardware decoder with at least one of a browser interlocking type and a plug-in expanding type. The digital device may be a digital TV or a mobile terminal equipped with a web OS platform.
2 is a block diagram illustrating a digital device according to an exemplary embodiment of the present invention.
The digital device described herein corresponds to the
The
The
The TCP /
The
The
The
The audio /
The application manager may include, for example, the
The
The
The
The
The
The
The SI &
The SI &
Meanwhile, the
3 is a block diagram illustrating a digital device according to another embodiment of the present invention.
If the above-described Fig. 2 is described with an example of a digital device as a fixing device, Fig. 3 shows a mobile device as another embodiment of a digital device.
3, the
Hereinafter, each component will be described in detail.
The
The
The broadcast-related information may mean information related to a broadcast channel, a broadcast program, or a broadcast service provider. The broadcast-related information may also be provided through a mobile communication network. In this case, it may be received by the
The broadcast-related information may exist in various forms, for example, in the form of an EPG (Electronic Program Guide) or an ESG (Electronic Service Guide).
The
The broadcast signal and / or broadcast related information received through the
The
The
The short-
The
The A /
The image frame processed by the
The
The user input unit 330 generates input data for user's operation control of the terminal. The user input unit 330 may include a key pad, a dome switch, a touch pad (static pressure / static electricity), a jog wheel, a jog switch, and the like.
The
The
The
The
Some of these displays may be transparent or light transmissive so that they can be seen through. This can be referred to as a transparent display, and a typical example of the transparent display is TOLED (Transparent OLED) and the like. The rear structure of the
There may be two or
The
The touch sensor may be configured to convert a change in a pressure applied to a specific portion of the
If there is a touch input to the touch sensor, the corresponding signal (s) is sent to the touch controller. The touch controller processes the signal (s) and transmits corresponding data to the
A
Examples of the proximity sensor include a transmission type photoelectric sensor, a direct reflection type photoelectric sensor, a mirror reflection type photoelectric sensor, a high frequency oscillation type proximity sensor, a capacitive proximity sensor, a magnetic proximity sensor, and an infrared proximity sensor. And to detect the proximity of the pointer by the change of the electric field along the proximity of the pointer when the touch screen is electrostatic. In this case, the touch screen (touch sensor) may be classified as a proximity sensor.
Hereinafter, for convenience of explanation, the act of recognizing that the pointer is positioned on the touch screen while the pointer is not in contact with the touch screen is referred to as "proximity touch & The act of actually touching the pointer on the screen is called "contact touch. &Quot; The position where the pointer is proximately touched on the touch screen means a position where the pointer is vertically corresponding to the touch screen when the pointer is touched.
The proximity sensor detects a proximity touch and a proximity touch pattern (e.g., a proximity touch distance, a proximity touch direction, a proximity touch speed, a proximity touch time, a proximity touch position, a proximity touch movement state, and the like). Information corresponding to the detected proximity touch operation and the proximity touch pattern may be output on the touch screen.
The
The
The
The
The
The
The identification module is a chip for storing various information for authenticating the usage right of the
The
The
The
The various embodiments described herein may be implemented in a recording medium readable by a computer or similar device using, for example, software, hardware, or a combination thereof.
According to a hardware implementation, the embodiments described herein may be implemented as application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays May be implemented using at least one of a processor, a controller, micro-controllers, microprocessors, and an electrical unit for performing other functions. In some cases, the implementation described herein Examples may be implemented by the
According to a software implementation, embodiments such as the procedures and functions described herein may be implemented with separate software modules. Each of the software modules may perform one or more of the functions and operations described herein. Software code may be implemented in a software application written in a suitable programming language. Here, the software code is stored in the
4 is a block diagram illustrating a digital device according to another embodiment of the present invention.
Another example of the
The
For example, if the received RF broadcast signal is a digital broadcast signal, the signal is converted into a digital IF signal (DIF). If the received RF broadcast signal is an analog broadcast signal, the signal is converted into an analog baseband image or a voice signal (CVBS / SIF). That is, the
In addition, the
The
The
The stream signal output from the
The external
The external
The A / V input / output unit includes a USB terminal, a CVBS (Composite Video Banking Sync) terminal, a component terminal, an S-video terminal (analog) terminal, A DVI (Digital Visual Interface) terminal, an HDMI (High Definition Multimedia Interface) terminal, an RGB terminal, a D-SUB terminal, and the like.
The wireless communication unit can perform short-range wireless communication with another digital device. The
Also, the external
Meanwhile, the external
The
The
Meanwhile, the
In addition, the
The
The
The
In addition, the
The
4 illustrates an embodiment in which the
The user
For example, the user
In addition, the user
The user
The
The video signal processed by the
The audio signal processed by the
Although not shown in FIG. 4, the
The
The
For example, the
The
On the other hand, the
In addition, the
On the other hand, when entering the application view item, the
The
Although not shown in the drawing, a channel browsing processing unit for generating a channel signal or a thumbnail image corresponding to an external input signal may be further provided.
The channel browsing processing unit receives a stream signal TS output from the
The
The
Meanwhile, the
The audio output unit 485 receives a signal processed by the
In order to detect the gesture of the user, a sensing unit (not shown) having at least one of a touch sensor, a voice sensor, a position sensor, and an operation sensor may be further included in the
On the other hand, a photographing unit (not shown) for photographing a user may be further provided. The image information photographed by the photographing unit (not shown) may be input to the
The
The power supply unit 490 supplies the corresponding power to the
Particularly, it is possible to supply power to a
To this end, the power supply unit 490 may include a converter (not shown) for converting AC power to DC power. Meanwhile, for example, when the
The
Also, the
The
In addition, the digital device according to the present invention may further include a configuration that omits some of the configuration shown in FIG. On the other hand, unlike the above, the digital device does not have a tuner and a demodulator, and can receive and reproduce the content through the network interface unit or the external device interface unit.
FIG. 5 is a block diagram illustrating a detailed configuration of the control unit of FIGS. 2 to 4 according to an embodiment of the present invention. Referring to FIG.
An example of the control unit includes a
The
The
The video decoder 425 decodes the demultiplexed video signal, and the
The
On the other hand, the video signal decoded by the
The
The
A frame rate conversion unit (FRC) 555 converts a frame rate of an input image. For example, the frame
The
On the other hand, the voice processing unit (not shown) in the control unit can perform the voice processing of the demultiplexed voice signal. Such a voice processing unit (not shown) may support processing various audio formats. For example, even when a voice signal is coded in a format such as MPEG-2, MPEG-4, AAC, HE-AAC, AC-3, or BSAC, a corresponding decoder can be provided.
In addition, the voice processing unit (not shown) in the control unit can process the base, the treble, the volume control, and the like.
A data processing unit (not shown) in the control unit can perform data processing of the demultiplexed data signal. For example, the data processing unit can decode the demultiplexed data signal even when it is coded. Here, the encoded data signal may be EPG information including broadcast information such as a start time and an end time of a broadcast program broadcasted on each channel.
On the other hand, the above-described digital device is an example according to the present invention, and each component can be integrated, added, or omitted according to specifications of a digital device actually implemented. That is, if necessary, two or more components may be combined into one component, or one component may be divided into two or more components. In addition, the functions performed in each block are intended to illustrate the embodiments of the present invention, and the specific operations and devices thereof do not limit the scope of rights of the present invention.
Meanwhile, the digital device may be an image signal processing device that performs signal processing of an image stored in the device or an input image. Other examples of the video signal processing device include a set-top box (STB), a DVD player, a Blu-ray player, a game device, a computer Etc. can be further exemplified.
FIG. 6 is a diagram illustrating input means coupled to the digital device of FIGS. 2 through 4 according to one embodiment of the present invention.
A front panel (not shown) or a control means (input means) provided on the
The control means includes a
The input means may be a communication protocol such as Bluetooth, Radio Frequency Identification (RFID), Infrared Data Association (UDA), Ultra Wideband (UWB), ZigBee, Digital Living Network Alliance (DLNA) At least one can be employed as needed to communicate with the digital device.
The
The
Since the
On the other hand, the control means such as the
The digital device described in this specification uses the Web OS platform as one embodiment. Hereinafter, the processing such as the configuration or algorithm based on the web OS can be performed in the control unit of the above-described digital device or the like. Here, the control unit includes the control unit in FIGS. 2 to 5 described above and uses it as a broad concept. Accordingly, in order to process services, applications, contents, and the like related to the web OS in the digital device, the hardware and components including related software, firmware, and the like are controlled by a controller Named and explained.
Such a web OS-based platform is intended to enhance development independence and feature scalability by integrating services, applications, and the like based on, for example, a luna-service bus, and is based on a web application framework Thereby improving application development productivity. Also, multi-tasking can be supported by efficiently utilizing system resources and the like through a Web OS process and resource management.
Meanwhile, the web OS platform described in this specification can be used not only in fixed devices such as a PC, a TV, and a set-top box (STB) but also in mobile devices such as mobile phones, smart phones, tablet PCs, notebooks, wearable devices .
The structure of the software for digital devices is based on a single process and a closed product based on multi-threading with conventional problem solving and market-dependent monolithic structure, And has been pursuing new platform-based development since then, has pursued cost innovation through chip-set replacement, UI application and external application development efficiency, and developed layering and componentization Layer structure and an add-on structure for add-ons, single-source products, and open applications. More recently, the software architecture provides a modular architecture for functional units, a Web Open API (Application Programming Interface) for echo-systems, and a game engine And a native open API (Native Open API), and thus, a multi-process structure based on a service structure is being created.
7 is a diagram illustrating a Web OS architecture according to an embodiment of the present invention.
Referring to FIG. 7, the architecture of the Web OS platform will be described as follows.
The platform can be largely divided into a kernel, a system library based Web OS core platform, an application, and a service.
The architecture of the Web OS platform is layered structure, with the OS at the lowest layer, the system library (s) at the next layer, and the applications at the top.
First, the lowest layer includes a Linux kernel as an OS layer, and can include Linux as an OS of the digital device.
The OS layer is provided with a BOS (Board Support Package) / HAL (Hardware Abstraction Layer) layer, a Web OS core modules layer, a service layer, a Luna-Service layer Bus layer, Native Developer's Kit (NDK) / QT layer (Enyo framework / NDK / QT layer), and Application layer in the uppermost layer.
Meanwhile, some layers of the above-described web OS layer structure may be omitted, and a plurality of layers may be one layer, or one layer may be a plurality of layer structures.
The web OS core module layer is based on LSM (Luna Surface Manager) for managing surface windows and the like, SAM (System & Application Manage) for managing the execution and execution status of applications, and WebKit And a WAM (Web Application Manager) for managing web applications and the like.
The LSM manages an application window displayed on the screen. The LSM manages display hardware (Display HW) and provides a buffer for rendering contents necessary for applications. The LSM composes the results of rendering by a plurality of applications, Can be output.
The SAM manages various conditional execution policies of the system and the application.
WAM, on the other hand, is based on the Enyo Framework, which can be regarded as a basic application for web applications.
The use of an application's service is done via a luna-service bus, a new service can be registered on the bus, and an application can find and use the service it needs.
The service layer may include various service level services such as TV service and Web OS service. Meanwhile, the web OS service may include a media server, a Node.JS, and the like. In particular, the Node.JS service supports, for example, javascript.
Web OS services can communicate over a bus to a Linux process that implements function logic. It can be divided into four parts. It is developed from TV process and existing TV to Web OS, services that are differentiated by manufacturer, service which is manufacturer's common service and JavaScript, and is used through Node.js Node.js service.
The application layer may include all applications that can be supported in a digital device, such as a TV application, a showcase application, a native application, a web application, and the like.
An application on the Web OS can be divided into a Web application, a PDK (Palm Development Kit) application, a QT (Qt Meta Language or Qt Modeling Language) application and the like depending on an implementation method.
The web application is based on a WebKit engine and is executed on a WAM runtime. These web applications can be based on the ENI framework, or they can be developed and run on a common HTML5, CSS (Cascading Style Sheets), or JavaScript based.
The PDK application includes a native application developed in C / C ++ based on a PDK provided for third-party or external developers. The PDK refers to a development library and a tool set provided for a third party such as a game to develop a native application (C / C ++). For example, PDK applications can be used to develop applications where performance is critical.
The QML application is a Qt-based native application and includes a basic application provided with a web OS platform such as a card view, a home dashboard, a virtual keyboard, and the like. Here, QML is a mark-up language in the form of a script instead of C ++.
In the meantime, the native application is an application that is developed and compiled in C / C ++ and executed in a binary form. The native application has a high speed of execution.
FIG. 8 is a diagram illustrating an architecture of a Web OS device according to an exemplary embodiment of the present invention. Referring to FIG.
8 is a block diagram based on the runtime of the Web OS device, which can be understood with reference to the layered structure of FIG.
The following description will be made with reference to FIGS. 7 and 8. FIG.
Referring to FIG. 8, services and applications and WebOS core modules are included on the system OS (Linux) and system libraries, and communication between them can be done via the Luna-Service bus.
E-mail, contact, calendar, etc. Node.js services based on HTML5, CSS, java script, logging, backup, file notify notify, database (DB), activity manager, system policy, audio daemon (AudioD), update, media server, TV services such as Electronic Program Guide (PVD), Personal Video Recorder (PVR), data broadcasting, voice recognition, Now on, Notification, search, , CP services such as Auto Content Recognition (ACR), Contents List Browser (CBOX), wfdd, DMR, Remote Application, download, Sony Philips Digital Interface Format (SDPIF), PDK applications, , QML applications, etc. And the enyo framework based on the TV UI-related applications and web applications, Luna - made the process via the Web OS core modules, such as the aforementioned SAM, WAM, LSM via the service bus. Meanwhile, in the above, TV applications and web applications may not necessarily be UI-based or UI-related.
CBOX can manage the list and metadata of external device contents such as USB, DLNA, cloud etc. connected to TV. Meanwhile, the CBOX can output a content listing of various content containers such as a USB, a DMS, a DVR, a cloud, etc. to an integrated view. In addition, CBOX can display various types of content listings such as pictures, music, video, and manage the metadata. In addition, the CBOX can output the contents of the attached storage in real-time. For example, when a storage device such as a USB is plugged in, the CBOX must be able to immediately output the content list of the storage device. At this time, a standardized method for processing the content listing may be defined. In addition, CBOX can accommodate various connection protocols.
The SAM is intended to improve module complexity and scalability. For example, the existing system manager processes various functions such as system UI, window management, web application runtime, and UX constraint processing in one process to separate the main functions to solve the large implementation complexity, Clarify the implementation interface by clarifying the interface.
LSM supports independent development and integration of system UX implementations such as card view, launcher, etc., and supports easy modification of product requirements. LSM can make multi-tasking possible by utilizing hardware resources (HW resources) when synthesizing a plurality of application screens such as an application in-app, A window management mechanism can be provided.
LSM supports implementation of system UI based on QML and improves its development productivity. Based on MVC, QML UX can easily construct views for layouts and UI components, and can easily develop code for handling user input. On the other hand, the interface between the QML and the Web OS component is via the QML extension plug-in, and the graphic operation of the application can be based on the wayland protocol, luna-service call, etc. have.
LSM is an abbreviation of Luna Surface Manager, as described above, which functions as an Application Window Compositor.
LSM synthesizes independently generated applications, UI components, etc. on the screen and outputs them. When components such as recents applications, showcase applications, and launcher applications render their own contents, the LSM defines the output area, interworking method, etc. as a compositor. In other words, the compositor LSM handles graphics synthesis, focus management, input events, and so on. At this time, the LSM receives events, focus, etc. from the input manager. These input managers can include HIDs such as remote controllers, mouse & keyboards, joysticks, game pads, application remotes, and pen touches.
As such, LSM supports multiple window models, which can be performed simultaneously in all applications due to the nature of the system UI. In this regard, it is also possible to provide various functions such as launcher, resent, setting, notification, system keyboard, volume UI, search, finger gesture, Voice Recognition (STT (Sound to Text), TTS LSM can support a pattern gesture (camera, mobile radio control unit (MRCU), live menu, ACR (Auto Content Recognition), etc.) .
9 is a diagram illustrating a graphic composition flow in a web OS device according to an embodiment of the present invention.
9, the graphic composition processing includes a
When the web application-based graphic data (or application) is generated as a UI process in the
The
On the other hand, the full-screen application is passed directly to the
The graphical manager processes all the graphic data in the web OS device, including the data through the LSM GM surface described above, the data through the WAM GM surface, as well as the GM surface such as data broadcasting application, caption application, And processes the received graphic data appropriately on the screen. Here, the functions of the GM compositor are the same or similar to those of the compositor described above.
FIG. 10 is a view for explaining a media server according to an embodiment of the present invention, FIG. 11 is a view for explaining a configuration block diagram of a media server according to an embodiment of the present invention, and FIG. 12 Is a diagram illustrating a relationship between a media server and a TV service according to an embodiment of the present invention.
The media server supports the execution of various multimedia in the digital device and manages the necessary resources. The media server can efficiently use hardware resources required for media play. For example, the media server requires an audio / video hardware resource for multimedia execution and can efficiently utilize the resource usage status by managing it. In general, a fixed device having a larger screen than a mobile device needs more hardware resources to execute multimedia, and a large amount of data must be encoded / decoded and transmitted at a high speed. On the other hand, the media server is a task that performs broadcasting, recording and tuning tasks in addition to streaming and file-based playback, recording simultaneously with viewing, and simultaneously displaying the sender and recipient screens in a video call And so on. However, the media server is limited in terms of hardware resources such as an encoder, a decoder, a tuner, and a display engine, and thus it is difficult to execute a plurality of tasks at the same time. For example, And processes it.
The media server may be robust in system stability because, for example, a pipeline in which an error occurs during media playback can be removed and restarted on a per-pipeline basis, Even if it does not affect other media play. Such a pipeline is a chain that links each unit function such as decoding, analysis, and output when a media reproduction request is made, and the necessary unit functions may be changed according to a media type and the like.
The media server may have extensibility, for example, adding a new type of pipeline without affecting existing implementations. As an example, the media server may accommodate a camera pipeline, a video conference (Skype) pipeline, a third-party pipeline, and the like.
The media server can process general media playback and TV task execution as separate services because the interface of the TV service is different from the case of media playback. In the above description, the media server supports operations such as 'setchannel', 'channelup', 'channeldown', 'channeltuning', and 'recordstart' in relation to the TV service, ',' stop ', and so on, so that they can support different operations for both, and can be processed as separate services.
The media server can control or integrally manage the resource management function. The allocation and recall of hardware resources in the device are performed integrally in the media server. In particular, the TV service process transfers the running task and the resource allocation status to the media server. The media server obtains resources and executes the pipeline each time each media is executed, and permits execution by a priority (e.g., policy) of the media execution request, based on the resource status occupied by each pipeline, and And performs resource recall of other pipelines. Here, the predefined execution priority and necessary resource information for the specific request are managed by the policy manager, and the resource manager can communicate with the policy manager to process the resource allocation, the number of times, and the like.
The media server may have an identifier (ID) for all playback related operations. For example, the media server may issue a command to indicate a particular pipeline based on the identifier. The media server may separate the two into pipelines for playback of more than one media.
The media server may be responsible for playback of the HTML 5 standard media.
In addition, the media server may follow the TV restructuring scope of the TV pipeline as a separate service process. The media server can be designed regardless of the TV restructuring scope. If the TV is not a separate service process, it may be necessary to re-execute the entire TV when there is a problem with a specific task.
The media server is also referred to as uMS, i.e., a micro media server. Here, the media player is a media client, which is a media client, for example, a web page for an HTML5 video tag, a camera, a TV, a Skype, a second screen, It can mean a kit (Webkit).
In the media server, management of micro resources such as a resource manager, a policy manager, and the like is a core function. In this regard, the media server also controls the playback control role for the web standard media content. In this regard, the media server may also manage pipeline controller resources.
Such a media server supports, for example, extensibility, reliability, efficient resource usage, and the like.
In other words, the uMS or media server may be a web OS device, such as a resource, such as a cloud game, a MVPD (pay service), a camera preview, a second screen, a Skype, And manage and control the use of resources for proper processing in an overall manner so as to enable efficient use. On the other hand, each resource uses, for example, a pipeline in its use, and the media server can manage and control the generation, deletion, and use of a pipeline for resource management as a whole.
Here, the pipeline refers to, for example, when a media associated with a task starts a series of operations, such as parsing of a request, a decoding stream, and a video output, . For example, with respect to a TV service or an application, watching, recording, channel tuning, and the like are each individually handled under the control of resource utilization through a pipeline generated according to the request .
The processing structure and the like of the media server will be described in more detail with reference to FIG.
10, an application or service is connected to a media server 1020 via a luna-to-service bus 1010, and the media server 1020 is connected to pipelines generated again via the luna- Connected and managed.
The application or service can have various clients depending on its characteristics and can exchange data with the media server 1020 or the pipeline through it.
The client includes, for example, a uMedia client (web kit) and a RM (resource manager) client (C / C ++) for connection with the media server 1020.
The application including the uMedia client is connected to the media server 1020, as described above. More specifically, the uMedia client corresponds to, for example, a video object to be described later, and the client uses the media server 1020 for the operation of video by a request or the like.
Here, the video operation relates to the video state, and the loading, unloading, play, playback, or reproduce, pause, stop, Data may be included. Each operation or state of such video can be processed through individual pipeline generation. Accordingly, the uMedia client sends the state data associated with the video operation to the
The
On the other hand, the
The
In addition, the pipeline may include, for example, a service-based pipeline (its own pipeline) and a URI-based pipeline (media pipeline).
Referring to FIG. 10, an application or service including an RM client may not be directly connected to the media server 1020. This is because the application or service may directly process the media. In other words, if the application or service directly processes the media, it may not pass through the media server. However, at this time, uMS connectors need to manage resources for pipeline creation and use. Meanwhile, when receiving a resource management request for direct media processing of the application or service, the uMS connector communicates with the media server 1020 including the
Accordingly, the application or service can respond to the request of the RM client by receiving the resource management of the
On the other hand, the URI-based pipeline is performed through the media server 1020 instead of processing the media directly as in the RM client described above. Such URI-based pipelines may include a player factory, a G streamer, a streaming plug-in, a DRM (Digital Rights Management) plug-in pipeline, and the like.
On the other hand, the interface method between application and media services may be as follows.
It is a way to interface with a service in a web application. This is a way of using Luna Call using the Palm Service Bridge (PSB), or using Cordova, which extends the display to video tags. In addition, there may be a method using the HTML5 standard for video tags or media elements.
And, it is a method of interfacing with PDK using service.
Alternatively, it is a method of using the service in the existing CP. It can be used to extend existing platform plug-ins based on Luna for backward compatibility.
Finally, it is a way to interface in the case of non-web OS. In this case, you can interface directly by calling the Luna bus.
Seamless change is handled by a separate module (for example TVWIN), which is a process for displaying the TV on the screen first and for streamlining without Web OS, to be. This is because the boot time of WebOS is delayed, so it is used to provide the basic function of the TV service first for quick response to the user's power on request. In addition, the module is part of the TV service process and supports quick boot and null change, which provides basic TV functions, and factory mode. In addition, the module may also switch from the Non-Web OS mode to the Web OS mode.
Referring to FIG. 11, a processing structure of a media server is shown.
11, the solid line box represents the process processing configuration, and the dashed box represents the internal processing module during the process. In addition, the solid line arrows represent inter-process calls, that is, Luna service calls, and the dotted arrows may represent notifications or data flows such as register / notify.
A service or a web application or a PDK application (hereinafter 'application') is connected to various service processing components via a luna-service bus, through which an application is operated or controlled.
The data processing path depends on the type of application. For example, when the application is image data related to the camera sensor, the image data is transmitted to the camera processing unit 1130 and processed. At this time, the camera processing unit 1130 processes image data of a received application including a gesture, a face detection module, and the like. Here, the camera processing unit 1130 can generate a pipeline through the media server processing unit 1110 and process the corresponding data if the user desires to use the pipeline or the like.
Alternatively, when the application includes audio data, the audio processing unit (AudioD) 1140 and the audio module (PulseAudio) 1150 can process the audio. For example, the
Alternatively, when the application includes or processes (includes) DRM-attached content, the DRM service processing unit 1170 transmits the content data to the DRM service processing unit 1160, and the DRM service processing unit 1170 generates a DRM instance And processes the DRM-enabled content data. Meanwhile, the DRM service processing unit 1160 may process the DRM pipeline in the media pipeline through the Luna-Service bus to process the DRM-applied content data.
Hereinafter, processing in the case where the application is media data or TV service data (e.g., broadcast data) will be described.
FIG. 12 shows only the media server processing unit and the TV service processing unit in FIG. 11 described above in more detail.
Therefore, the following description will be made with reference to FIGS. 11 and 12. FIG.
First, when the application includes TV service data, it is processed in the TV service processing unit 1120/1220.
The TV service processing unit 1120 includes at least one of a DVR / channel manager, a broadcasting module, a TV pipeline manager, a TV resource manager, a data broadcasting module, an audio setting module, and a path manager. 12, the TV service processing unit 1220 includes a TV broadcast handler, a TV broadcast interface, a service processing unit, a TV middleware (TV MW (middleware)), a path manager, a BSP For example, NetCast). Here, the service processing unit may be a module including, for example, a TV pipeline manager, a TV resource manager, a TV policy manager, a USM connector, and the like.
In this specification, the TV service processing unit may have a configuration as shown in Fig. 11 or 12, or may be implemented by a combination of both, in which some configurations are omitted or some configurations not shown may be added.
The TV service processing unit 1120/1220 transmits the data to the DVR / channel manager in the case of DVR (Digital Video Recorder) or channel related data based on the attribute or type of the TV service data received from the application, To generate and process the TV pipeline. On the other hand, when the attribute or type of the TV service data is broadcast content data, the TV service processing unit 1120 generates and processes the TV pipeline through the TV pipeline manager for processing the corresponding data via the broadcasting module.
Alternatively, a json (JavaScript standard object notation) file or a file created in c is processed by a TV broadcast handler and transmitted to a TV pipeline manager through a TV broadcast interface to generate and process a TV pipeline. In this case, the TV broadcast interface unit may transmit the data or the file that has passed through the TV broadcast handler to the TV pipeline manager based on the TV service policy and refer to it when creating the pipeline.
Hereinafter, the processing in the TV service processing unit 1220 of FIG. 12, specifically, the process of the TV broadcast interface and below will be described in more detail.
The TV broadcast interface may also function as a controller of the TV service processing unit 1220. The TV broadcast interface requests pipeline creation to the TV pipeline manager, and the TV pipeline manager creates a TV pipeline and requests resources from the TV resource manager. The TV resource manager makes a resource request to the media server via the UMS connector and obtains it, and then returns it to the TV pipeline manager.
The TV pipeline manager arranges the returned resources in the generated TV pipeline and registers the pipeline information in the path manager. The TV pipeline manager then returns the result to the TV pipeline manager, which returns the pipeline to the TV broadcast interface.
The TV broadcast interface then communicates with the TV middleware (MW: MiddleWare) to request a channel change, and the result is returned from the TV middleware.
Through the above process, the TV service can be processed.
The TV pipeline manager can be controlled by the TV resource manager in generating one or more pipelines in response to a TV pipeline creation request from a processing module in a TV service, a manager, or the like. Meanwhile, the TV resource manager can be controlled by the TV policy manager to request the status and allocation of resources allocated for the TV service according to the TV pipeline creation request of the TV pipeline manager, and the media server processing unit 1110 / 1210) and uMS connectors. The resource manager in the media server processing unit 1110/1210 transmits the status of the current TV service, the allocation permission, etc. according to the request of the TV resource manager. For example, if a resource manager in the media server processing unit 1110/1210 confirms that all the resources for the TV service have already been allocated, the TV resource manager can notify that all the resources are currently allocated. At this time, the resource manager in the media server processing unit, together with the notify, removes a predetermined TV pipeline according to a priority or a predetermined criterion among the TV pipelines preliminarily allocated for the TV service and generates a TV pipeline for the requested TV service Or may be assigned. Alternatively, the TV resource manager can appropriately remove, add, or control the TV pipeline in the TV resource manager according to the status report of the resource manager in the media server processing unit 1110/1210.
Meanwhile, the BSP supports, for example, backward compatibility with existing digital devices.
The TV pipelines thus generated can be appropriately operated according to the control of the path manager in the process. The path manager can determine and control the processing path or process of the pipelines by considering not only the TV pipeline but also the operation of the pipeline generated by the media server processing unit 1110/1210.
Next, when the application includes media data, rather than TV service data, it is processed by the media server processing unit 1110/1210. Here, the media server processing units 1110 and 1210 include a resource manager, a policy manager, a media pipeline manager, a media pipeline controller, and the like. On the other hand, the pipeline generated according to the control of the media pipeline manager and the media pipeline controller can be variously generated such as a camera preview pipeline, a cloud game pipeline, and a media pipeline. On the other hand, the media pipeline may include a streaming protocol, an auto / static gstreamer, and a DRM, which can be determined according to the control of the path manager. The specific processing in the media server processing units 1110 and / or 1210 cites the description of FIG. 10 described above, and will not be repeated here.
In this specification, the resource manager in the media server processing unit 1110/1210 can perform resource management with, for example, a counter base.
The media server design on the Web OS platform will be described in more detail as follows.
The media server is a media framework that supports third-party multimedia pipeline (s) to interface with the web OS platform. The media server may control, manage, isolate, deconflict, etc. the resources so that the third-party multimedia pipeline (s) may be compliant. Such a media server can be regarded as a platform module that provides a generalized API for an application to play media and can manage hardware resources and policies consistently. On the other hand, the design of the media server is in generalizing the media processing and reducing the complexity by separating related modules.
The core of such a media server is, for example, the integration of a service interface and a web OS UI. To this end, the media server controls the resource manager, the policy manager, the pipeline manager, and provides API access according to the resource manager query.
The uMS connector is the main API and SDK for interfacing client media pipeline processes with media servers. The Ums connector is an event and message about the interface. The client media pipelines implement client media pipeline state events to enable load, play, pause, seek, stop, unload, release_resource, acquire_resource,
The uMedia API provides the C and C ++ APIs as media servers.
The media resource manager provides a method of describing the use of media hardware resources and pipeline client resources in a single simple configuration file. The media resource manager provides all the performance and information needed to implement default or third-party media policy management.
The media policy manager functions when the resource manager rejects the media pipeline due to resource conflicts. The policy manager can provide a consistent API and SDK to enable a third-party policy manager implementation. The policy manager supports media pipelines that match Least Recently Used (LRU) and may be used for one or more conflicting resources.
The pipeline manager tracks and maintains client media pipelines. The pipeline controller provides a consistent API to the pipeline manager to control and manage the client media pipelines.
The media server communicates with the resource manager and library calls, and the resource manager can communicate through the TV services, the media pipeline, and the Luna service bus.
The media resource manager may configure an entire configurable configuration file to disk live the media hardware and media client pipelines, detect resource conflicts, and collect all the information needed to implement the media policy management .
The media policy manager reads the policy_select and policy_action fields of the resource configuration file, the resource contention attempts to select the active pipeline described by the policy_select field, and issues a problem for outgoing / selected pipelines based on the policy_action field The issue. The selection criterion may be a parameter supported by a pipeline configuration setting entry. Policy actions are unload and release. All pipelines support the unload command to release all allocated resources. The pipeline can additionally support the release command to release specific resources. In the above, the release command is for fast switch pipelines that compete with common resources, and the unload command of all resources may not be required for the incoming pipeline and declination.
The pipeline manager manages the pipeline controller. The pipeline manager maintains a running queue of the pipeline controller and provides unique indexing for incoming messages from the application (s) via the media server.
The pipeline controller maintains the relationship of the associated media client pipeline process. The pipeline controller maintains all relevant states and provides the media client pipeline control interface to the pipeline manager. The pipeline client process is a separate process using the uMS connector to provide the control interface to the media server, and so on. Pipeline (client) media technology (Gstreamer, Stage Fright) can be completely separate and decoupled from media server management and services.
Hereinafter, a digital device and a data processing method according to the present invention will be described in more detail.
The present invention provides a rapid response speed and editing experience to a user in a limited resource and performance of an embedded environment when a graphic editor based on a web browser is implemented. In an embedded environment of a digital device such as a TV or a smart phone, a high-resolution image is directly transmitted from an external device such as a USB (Universal Serial Bus) or an external server via a network Interest and demand for a graphic editor for editing, outputting, and transmitting are increasing. Hereinafter, the present invention provides a Web-based graphic editor that is more convenient, convenient, and efficient, and the graphic editor is applied to an embedded device.
FIG. 13 is a diagram for explaining a graphic data output method using a web-based graphic editor according to an embodiment of the present invention.
Here, the web-based graphic editor can be implemented based on image tag and HTML5 canvas technology.
13A, the digital device receives an original image, decodes it, and generates image data (RGB raw image data) of binary image data corresponding to the input original image. The digital image data is temporarily stored in a database as shown in FIG. do. The digital device resizes the image data temporarily stored in the database into RGB and outputs the image data to a desired location or area as shown in FIG. 13C.
QHD (Quad) (3840x2160) A process of processing / outputting the original JPG in the size of HD (1280x720) on a web page based on the graphic data processing / output method of FIG. 13 will be described. Respectively.
First, a browser decodes QHD original JPG image data and converts it into RGB data. Here, in the conversion process, the memory is consumed by the number of QHD pixels * 4 bytes.
Thereafter, based on the converted data, the image is resized to 1280x720, that is, HD (High Definition), and output is performed at a desired position in the screen. At this time, the memory is consumed in addition to the QHD by the number of HD pixels. In the above, the QHD consumes about 33 MB of memory, and only about 3.5 MB of HD data is consumed.
If the final output size is changed again after the above process is performed, the above-described process is repeated. Therefore, when the original image is a very large image, a lot of time is required for the resizing operation, and at the same time, the memory consumption may increase, and the memory consumption may instantaneously increase rapidly. Particularly, since the size adjustment control for an image occurs frequently when a graphic editor is used, the utilization rate of a memory, a CPU, and the like is rapidly increased in the course of using the graphic editor, web engine) halt (down) phenomenon occurs and may be inconvenient to use.
FIG. 13 illustrates a basic image output method. The basic processing has an algorithm of decoding an original image and converting it into data, and then outputting the data after resizing based on the converted data. This can be regarded as a basic processing flow of the graphic editor, but it may cause inconvenience or problems due to the inability to utilize system resources efficiently.
For example, in spite of frequent requests for various control and processing of images such as size adjustment in the image editing process, the graphic editor may cause a decrease in the response speed due to inefficient use of system resources, multi-tasking There is a problem such as failure to perform. This is especially difficult to ignore considering the recent trend of increasingly using high resolution images. Also, excessive use of system resources may lead to an unintentional forcible termination of the application being used, including an application for the graphic editor, due to a lack of memory in the embedded environment. In such a case, there is a possibility of loss of data during the initial operation, which may be a problem. This problem is limited only by improving the performance of the CPU and the GPU (Graphic Processing Unit) for increasing the capacity of the memory or processing the graphic data.
It is to be understood that the present invention can be applied to UHD (Ultra HD) (4k, 8k, etc.) in the same or similar manner while explaining HD, QHD and the like by way of example.
The web-based graphic editor of FIG. 13 described above may be problematic due to low efficiency in capability and resources in an embedded environment. In order to improve this, the following method is used. One is a software implementation technique that resizes the image for output / editing on the web, leaving the original image, and processes the graphic work using the resized transformed image. Accordingly, the performance and responsiveness of the graphic editing work can be improved. The other is to save / output the final result by using the original image according to the condition at the time of saving / output after completing the editing, or to finally save / output based on the resized image. The other is a method of mixing the above-mentioned methods. According to the present invention, the quality of the stored data can be maintained or improved while securing the performance and responsiveness of the editing operation on the web-based graphic editor.
14 and 15 are diagrams for explaining a process of loading an entity for editing / outputting graphic data according to an embodiment of the present invention.
Referring to FIGS. 14 and 15, an object loading procedure for graphic editing / output will be described as follows. Here, FIG. 14 shows a case where decoding and resizing are simultaneously performed on an original image, and FIG. 15 shows a case where only resizing is separately performed.
Referring to FIG. 14, the digital device reads the original image data and checks the condition at the same time. Here, the term " condition " means, for example, whether or not the original image data needs to be resized. In other words, if image data is loaded (S1402), the digital device determines whether a resize is required (S1404). Meanwhile, the resize determination may be based on the resolution. At this time, the resize determination may include additional information in addition to the resolution. On the other hand, the resolution means the resolution of the original image data, and / or the maximum resolution supported by the application (or digital device) to which the image data is to be output. In other words, when the resolution of the original image is higher than the maximum resolution of the output image data, it can be determined that a resize is necessary.
If it is determined in step S1404 that resizing is required for the original image data, the original image data is decoded and resized (S1406). Here, the decoding and resizing may be simultaneously performed. In addition, a hardware decoder and a scaler may be used to support the decoding and resizing.
The digital device causes the decoded and resized image data to be used in the editing process in place of the original image data through step S1406. That is, the digital device attaches / registers the resized image data to the image object of the browser (S1408).
After step S1408, the digital device edits the captured image using the attached / registered image data in a web browser (S1412).
If it is determined in step S1404 that resizing is not required for the original image data, the original image is directly decoded (S1410), and edited using the decoded original image data in the web browser during the image editing operation (S1412 ). At this time, the decoded original image data may be attached / registered in advance in a web browser for image editing operation.
FIG. 15 shows a case where only the resizing process is performed through a separate process in the above description. This is to respond to the support of hardware resources in digital devices.
Therefore, in FIG. 15, a detailed description of the contents overlapping with the above-described FIG. 14 is omitted, and the description thereof is omitted. Here, a description will be given mainly of a portion different from that in Fig. 14 described above.
In FIG. 15, when the original image data is loaded (S1502), the original image data is first decoded (S1504). Unlike the above-described Fig. 14, decoding of the original image data differs from that of Fig. 14 described above before the resize judgment. For example, if the decoder, which is a hardware resource, is not sufficient, a decoding process that requires or does not require resizing is required as a result of the determination in step S1404.
Then, it is determined whether or not a resize is necessary for the decoded image data (S1506).
If it is determined in step S1506 that image data requiring resizing is resized (S1508). Here, the resizing may be performed through a hardware scaler.
The resized image data is registered in the web browser for editing (S1510).
Then, the image data is edited on the web browser (S1512).
If it is determined in step S1506 that there is no need to resize the image data, the image data is directly edited through the web browser based on the decoded original image (S1512).
14 and 15, at least a flag value needs to be added to the image object management structure of the browser as shown in FIG.
16 is a view for explaining an image object management structure according to an embodiment of the present invention.
Referring to FIG. 16, an additional Resized forEdit algebraic value can be defined for an image object, that is, an image object.
The flag may identify whether the decoded image is resized image data or original image data. In the case of editing with the decoded image data, coordinate calculation and the like may not be correct. Therefore, in order to compensate for this, automatic calculation and the like may be required. If the ResizedforEdit value is 'true', the Image Raw Data Object is an image that has been reduced-size-converted, that is, resized image data. Therefore, an automatic conversion operation is required at the time of calculating coordinates and / or size. In relation, an image data object may be both original and for editing to save resources.
17 is a view for explaining an image storing process according to an embodiment of the present invention.
According to the above-described FIG. 14 or 15, additional operation may be required in the subsequent storing process to perform the graphic editing operation with the resized image. Here, FIG. 17 specifically illustrates the case where the original image data is processed at the same time as the decoding and resizing as shown in FIG. 14.
When at least one or more image objects resized at the time of image storage are stored, the digital device should use the resized image data to determine whether to store the resized image data.
Here, the determination criterion may be implementation-dependent in the executing application. For example, the image data to be uploaded to the social network may be used as the resized image. However, you can also select the original image data when printing, printing on USB, etc. In other words, it can be user-selectable or it can be handled automatically by the application.
If the original image data is used instead of the resized image data, the original image is first decoded again with respect to the used objects of the resized image, and the coordinates, Size, shape, and so on. This allows the digital device to increase the resolution of the image while preserving the shape, content, and intent previously edited by the user. In other words, this is an operation for increasing the quality of an image such as a resolution while maintaining the editing history of the above-described operations.
Then, it can be encoded and stored or printed.
Referring to FIG. 17, sequentially, the digital device includes whether the image data is a resized image or whether at least one resized image object is included (S1704) when an image storage request is received (S1702) . That is, it is judged whether or not to store the resized image. Here, the determination criterion can be adjusted based on, for example, the output application.
If it is determined in step S1704 that the original image is not a resized image, the original image is decoded again (S1706). At this time, the decoding may use a hardware decoder.
Subsequently, the decoded image is substituted for the output image and calculated (S1708). In other words, the decoded original image data is recalculated in accordance with the coordinate / size and shape in which the object is placed. This can improve image resolution while preserving the user-edited look and content.
Finally, the image data is encoded and stored / printed (S1710 / S1712).
However, if it is determined in step S1704 that the resized image is to be used as it is, it is sufficient to directly encode and save / print the image (S1710 / S1712).
In the image loading and storing process described above, a hardware decoder may be required, and the hardware decoder may be combined with the web engine in the form as shown in FIG. 18 to be described later.
18 is a view for explaining a hardware decoder interlocking structure according to an embodiment of the present invention.
Referring to FIG. 18A, when a hardware decoder is used, a browser may be modified to modify a JPEG library and interwork with the hardware decoder. However, the structure of FIG. 18A may be difficult to cope with processing requests such as additional resizing, using only a hardware decoder.
Referring to FIG. 18B, a hardware decoder method is directly called from the above-described image object management entity. In this way, the decoding / resizing process can be collectively processed in a manner different from the existing JPEG processing routine, and in this case, management can also be performed. However, it is desirable that the web engine needs to be modified and standardized.
Referring to FIG. 18C, it is implemented as a separate plug-in extension module. Extending to the plug-in is available without complying with web standards. However, in this case, the application calls the APIs of the plug-in separately and may be difficult to use in an application in which the plug-in is not installed.
As described above, according to the contents disclosed in this specification, when a high-resolution image such as QHD or UHD is edited, it is edited based on a low-resolution image for editing / output, , The performance and response speed of the web-based graphic editor can be improved by using low-resolution images for editing as they are. Also, according to the approach, it is possible to implement the existing web browser image processing structure with minimal change. Particularly, the present invention can provide various advantages in the function development in an embedded environment of a digital device.
According to the present invention, a web-based graphic editor can be implemented in an embedded environment of a digital device to edit high-resolution image data input through an external device or a server, guarantee various user experiences, It can provide the graphic editor of the digital device which improved the response speed of the device such as the CPU, and it can promptly and easily process the high-resolution image data with large data capacity, thereby enhancing the usability of the user and improving the product satisfaction, can do.
The digital device and its operation method according to the present invention are not limited to the configuration and method of the embodiments described above but can be applied to all or some of the embodiments so that various modifications can be made. Or may be selectively combined.
Meanwhile, the operation method of the digital device of the present invention can be implemented as a code that can be read by a processor on a recording medium readable by a processor included in the digital device. The processor-readable recording medium includes all kinds of recording apparatuses in which data that can be read by the processor is stored. Examples of the recording medium that can be read by the processor include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and may also be implemented in the form of a carrier wave such as transmission over the Internet . In addition, the processor-readable recording medium may be distributed over network-connected computer systems so that code readable by the processor in a distributed fashion can be stored and executed.
While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It will be understood by those skilled in the art that various changes and modifications may be made without departing from the spirit and scope of the present invention.
201: network interface unit 202: TCP / IP manager
203: service delivery manager 204: SI decoder
205: Demultiplexer 206: Audio decoder
207: Video decoder 208:
209: Service Control Manager 210: Service Discovery Manager
211: SI & Metadata Database 212: Metadata Manager
213: service manager 214: UI manager
Claims (20)
Loading image data;
Decoding and resizing the loaded image data;
Attaching and registering the resized image data to a web browser; And
And editing the registered image data through a web browser.
Receiving an image storage request;
Determining whether to store the resize image data;
Re-decoding the loaded image data if the resized image data is not stored;
Replacing the re-decoded image data with the output image and calculating output data;
Encoding the substituted image data; And
Further comprising the step of storing or outputting the encoded image data.
Further comprising the step of determining whether or not to resize the loaded image data.
The determination may be made,
Wherein the determination is based on a maximum resolution supported by an application associated with the image data.
The decoding and resizing comprises:
Each being processed by a hardware decoder and a scaler.
An image data object associated with image data that is attached to and registered with the web browser,
And flag data for identifying whether the image data object includes the resized image data.
Wherein the step of determining whether to store the resized image data comprises:
And judging based on an output usage of the image data.
Replacing the re-decoded image data with the output image, and calculating output data,
And data on coordinate, size, and shape are calculated in order to apply the editing items of the image data previously edited to the re-decoded image data.
The decoding includes:
A browser interlocking type or a plug-in expanding type interlocking with a hardware decoder.
The digital device comprising:
A digital TV or a mobile terminal equipped with a web OS platform.
An input interface for receiving image data, loading of the image data, and an editing command of the loaded image data;
A decoder for decoding image data to be loaded;
A scaler for resizing the image data to be decoded;
Loading the image data, decoding and resizing the loaded image data, and
A control unit for attaching the resized image data to a web browser and controlling a register; And
And an image processing unit for editing the registered image data through a web browser.
Wherein the input interface unit further receives an image storage request,
If the resize image data is not stored, the control unit re-decodes the loaded image data, replaces the re-decoded image data with the re-decoded image data, and calculates output data And controls to encode, store or output the substituted image data.
Wherein,
And judges whether or not to resize the loaded image data.
Wherein,
And determines whether to resize the image data based on a maximum resolution supported by an application related to the image data.
The decoding and resizing comprises:
Are processed simultaneously by a hardware decoder and a scaler, respectively.
An image data object associated with image data that is attached to and registered with the web browser,
And flag data identifying whether the image data object includes the resized image data.
Wherein,
And determines whether to store the resize image data based on an output usage of the image data.
Wherein,
And calculates data on coordinates, size, and shape in order to apply edited items of the image data edited to the re-decoded image data, and to replace the re-decoded image data with the output image, .
Wherein,
Wherein the control unit is operable to decode the image data in cooperation with a hardware decoder with at least one of a browser interlocking type and a plug-in expanding type.
The digital device comprising:
A digital device characterized by being a digital TV or mobile terminal equipped with a web OS platform.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140145036A KR20160048430A (en) | 2014-10-24 | 2014-10-24 | Digital device and method of processing data thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140145036A KR20160048430A (en) | 2014-10-24 | 2014-10-24 | Digital device and method of processing data thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20160048430A true KR20160048430A (en) | 2016-05-04 |
Family
ID=56021961
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140145036A KR20160048430A (en) | 2014-10-24 | 2014-10-24 | Digital device and method of processing data thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20160048430A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10219010B2 (en) | 2016-07-21 | 2019-02-26 | Hanwha Techwin Co., Ltd. | Selective media playing method and apparatus according to live streaming and recorded streaming |
EP3474559B1 (en) * | 2016-07-07 | 2024-01-31 | Shenzhen Skyworth-RGB Electronic Co., Ltd. | Smart-television playback method and apparatus |
-
2014
- 2014-10-24 KR KR1020140145036A patent/KR20160048430A/en not_active Application Discontinuation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3474559B1 (en) * | 2016-07-07 | 2024-01-31 | Shenzhen Skyworth-RGB Electronic Co., Ltd. | Smart-television playback method and apparatus |
US10219010B2 (en) | 2016-07-21 | 2019-02-26 | Hanwha Techwin Co., Ltd. | Selective media playing method and apparatus according to live streaming and recorded streaming |
US10567809B2 (en) * | 2016-07-21 | 2020-02-18 | Hanwha Techwin Co., Ltd | Selective media playing method and apparatus according to live streaming and recorded streaming |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101567832B1 (en) | Digital device and method for controlling the same | |
US10542311B2 (en) | Display device and control method for displaying detailed information of a specific area | |
KR102413328B1 (en) | Main speaker, sub speaker and system comprising main speaker and sub speaker | |
KR20160062417A (en) | Multimedia device and method for controlling the same | |
KR101632221B1 (en) | Digital device and method for processing service thereof | |
KR102225946B1 (en) | Digital device and method of processing application thereof | |
KR102367882B1 (en) | Digital device and method of processing application data thereof | |
KR20170028104A (en) | Display device and method for controlling the same | |
KR20170090102A (en) | Digital device and method for controlling the same | |
KR20170087307A (en) | Display device and method for controlling the same | |
KR20150101900A (en) | Digital device and method for processing stt thereof | |
KR20160048430A (en) | Digital device and method of processing data thereof | |
KR20170092408A (en) | Digital device and method for controlling the same | |
KR20170022612A (en) | Display device and method for controlling the same | |
KR102443319B1 (en) | Digital device and method for controlling the same | |
KR102439464B1 (en) | Digital device and method for controlling the same | |
KR20160028226A (en) | Display device and method of processing content thereof | |
KR20170075486A (en) | Digital device and method for controlling the same | |
KR102528668B1 (en) | Digital device and method for controlling the same | |
KR102439465B1 (en) | Connected device system and method for processing application data the same | |
KR20150101902A (en) | Digital device and method of controlling thereof | |
KR102268751B1 (en) | Digital device and method for controlling the same | |
KR20170090103A (en) | Mobile device, display device and method for controlling the same | |
KR20170087323A (en) | Mobile device, display device and method for controlling the same | |
KR20160047179A (en) | Digital device and method of processing content thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |