CN113727199A - HLS slice rapid playing starting method - Google Patents

HLS slice rapid playing starting method Download PDF

Info

Publication number
CN113727199A
CN113727199A CN202111015553.0A CN202111015553A CN113727199A CN 113727199 A CN113727199 A CN 113727199A CN 202111015553 A CN202111015553 A CN 202111015553A CN 113727199 A CN113727199 A CN 113727199A
Authority
CN
China
Prior art keywords
file
slicing
resource
playing
hls
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN202111015553.0A
Other languages
Chinese (zh)
Inventor
蔡坤松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Anhui Xufan Information Technology Co ltd
Original Assignee
Anhui Xufan Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Anhui Xufan Information Technology Co ltd filed Critical Anhui Xufan Information Technology Co ltd
Priority to CN202111015553.0A priority Critical patent/CN113727199A/en
Publication of CN113727199A publication Critical patent/CN113727199A/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot

Abstract

The invention relates to streaming media, in particular to a method for quickly starting playing HLS slices, wherein a client sends an HLS request to an edge node to request for playing resources; the edge node requests a scheduling center to play a resource address, and the scheduling center sends a slicing request to the resource node; the resource node completes slicing according to a preset slicing rule, and sends the m3u8 file to a dispatching center, and the dispatching center returns a playing resource address to the edge node; after the edge node acquires the playing resource address, the stream is taken from the resource node and returned to the client, and the client starts playing; the technical scheme provided by the invention can effectively overcome the defect that the playing start delay can not be effectively reduced under the condition of not causing the pause in the prior art.

Description

HLS slice rapid playing starting method
Technical Field
The invention relates to streaming media, in particular to a method for quickly playing HLS slices.
Background
The HTTP Live Streaming (HTTP Live Streaming) Protocol is a Streaming media Transfer Protocol implemented by apple inc based on HTTP (HyperText Transfer Protocol). In recent years, the HLS protocol is widely used in the field of streaming media, because the protocol uses HTTP transmission, the code rate can be adaptively adjusted according to the network bandwidth, that is, the server is allowed to store a plurality of multimedia streams with different code rates for the same program content, the terminal can adaptively adjust the code rate of the multimedia stream to be downloaded according to the actual network download speed, and when the network bandwidth is tight, the terminal can realize uninterrupted play by reducing the code rate; and relative to other streaming media communication protocols, the HLS protocol can be better compatible with other related technologies when deployed. HLS also has a very great advantage: HTML5(HyperText markup Language 5) can be directly played, which means that a live link can be forwarded and shared through WeChat and the like, and can be watched without installing any independent APP, so that the popularity is high.
Based on these advantages of the HLS Protocol, ott (over the top) Streaming Media is widely used, but compared to common Streaming Media live protocols, such as RTMP (Real Time Messaging Protocol), RTSP (Real Time Streaming Protocol), MMS (Microsoft Media server Protocol), etc., the HLS is the biggest difference in that the client acquires not a complete data stream. The HLS protocol stores the live data stream as continuous media files (MPEG-TS format) with short duration at the server side, and the client side continuously downloads and plays the small files, because the server side always generates the latest live data into new small files, the client side can play the files continuously and sequentially, and the live broadcast is realized.
As shown in fig. 3, a client requests a scheduling center to play a resource, the scheduling center sends a slicing request to a resource node, the resource node sends an m3u8 file to the scheduling center after slicing is completed, the scheduling center returns a playing resource address to the client, and the client acquires an m3u8 file and a ts file from the resource node and starts playing the files. As shown in fig. 4, when a resource node performs a slicing operation, after slicing is performed to obtain 3 ts files by using an equal-interval slicing method, an m3u8 file is generated, that is, there is a delay of 3 slice durations when broadcasting is started, and if the duration of each slice is 2s, the broadcasting start delay is 6 s.
Therefore, in the prior art, the resource node is required to continuously return to the client, the load cannot be effectively balanced, and the delay time of the start playing is long. Furthermore, during slicing, if the slicing is performed directly from a short duration to a large duration, a temporal gap may exist between adjacent slices, thereby causing a stuck.
Disclosure of Invention
Technical problem to be solved
Aiming at the defects in the prior art, the invention provides a method for rapidly starting playing HLS slices, which can effectively overcome the defect that the playing delay cannot be effectively reduced under the condition of not causing pause in the prior art.
(II) technical scheme
In order to achieve the purpose, the invention is realized by the following technical scheme:
an HLS slice fast playing method comprises the following steps:
s1, the client sends HLS request to the edge node to request for playing resources;
s2, the edge node requests the dispatching center to play the resource address, and the dispatching center sends the slicing request to the resource node;
s3, slicing the resource nodes according to a preset slicing rule, sending the m3u8 file to a dispatching center, and returning playing resource addresses to the edge nodes by the dispatching center;
and S4, after the edge node acquires the playing resource address, the edge node acquires the stream from the resource node and returns the stream to the client, and the client starts playing.
Preferably, the preset slicing rule includes:
and the resource nodes are sliced in a progressive slicing mode to obtain the first three ts files, and are sliced in an equal interval slicing mode to obtain the subsequent ts files.
Preferably, the resource node slices in a progressive slicing mode to obtain a first ts file, a second ts file and a third ts file, wherein the duration of the first ts file, the duration of the second ts file and the duration of the third ts file are t in sequence1、t2、t3The resource nodes adopt equal interval cuttingThe time length of each ts file after the third one is obtained by slicing in a slice mode is t, and the time length t is1、t2、t3Is an arithmetic series, and t1+t2+t3>t。
Preferably, the resource node slices in a progressive slicing mode to obtain the first ts file, the second ts file and the third ts file in sequence for 0.8s, 1s and 1.2s, and the resource node slices in an equal interval slicing mode to obtain each ts file after the third ts file in sequence for 2 s.
Preferably, the resource node performs slicing operation on the first three ts files obtained by slicing in a progressive slicing mode in an equal interval slicing mode, and divides each ts file slice into a first sub-slice and a second sub-slice which are equal in duration.
Preferably, the preset slicing rule includes:
and the resource nodes are sliced in an equal interval slicing mode to obtain the first three ts files and the subsequent ts files.
Preferably, the resource node slices in an equal interval slicing mode to obtain the first ts file, the second ts file and the third ts file, wherein the time lengths of the first ts file, the second ts file and the third ts file are all T1And the resource node slices in an equal interval slicing mode to obtain the time length of each ts file after the third one as T2Then 3T1>T2
Preferably, when the resource node slices in a progressive slicing mode or an equal interval slicing mode based on the slicing duration to obtain a ts file, and when a frame corresponding to the slicing duration is not a key frame I, combining the corresponding difference frame P with the previous key frame I to generate a new key frame I, and then completing the slicing operation.
(III) advantageous effects
Compared with the prior art, the method for quickly starting playing the HLS slice, provided by the invention, has the advantages that the playing resources are cached by setting the edge nodes, so that the times of returning the source to the client by the resource nodes can be effectively reduced, and the load is effectively balanced; through setting up different section rules of predetermineeing, carry out reasonable setting to the length of time of preceding three ts file, not only can avoid the start-up broadcast card to pause, can also effectively reduce the start-up broadcast and postpone, promote client user's the experience of watching.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below. It is obvious that the drawings in the following description are only some embodiments of the invention, and that for a person skilled in the art, other drawings can be derived from them without inventive effort.
FIG. 1 is a schematic flow diagram of the present invention;
FIG. 2 is a diagram illustrating a predetermined slicing rule according to the present invention;
FIG. 3 is a flow chart of a method for starting playing HLS slices in the prior art;
fig. 4 is a schematic diagram of fig. 3 regarding a slicing operation.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention. It is to be understood that the embodiments described are only a few embodiments of the present invention, and not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
An HLS slice fast playing method, as shown in fig. 1, S1, a client sends an HLS request to an edge node to request to play a resource;
s2, the edge node requests the dispatching center to play the resource address, and the dispatching center sends the slicing request to the resource node;
s3, slicing the resource nodes according to a preset slicing rule, sending the m3u8 file to a dispatching center, and returning playing resource addresses to the edge nodes by the dispatching center;
and S4, after the edge node acquires the playing resource address, the edge node acquires the stream from the resource node and returns the stream to the client, and the client starts playing.
In the technical scheme of the application, the preset slicing rule comprises two types:
1) the resource nodes are sliced in a progressive slicing mode to obtain the first three ts files, and are sliced in an equal interval slicing mode to obtain the subsequent ts files;
2) and the resource nodes are sliced in an equal interval slicing mode to obtain the first three ts files and the subsequent ts files.
As shown in fig. 2, for the first preset slicing rule: the resource nodes slice in a progressive slicing mode to obtain a first ts file, a second ts file and a third ts file, wherein the time lengths of the first ts file, the second ts file and the third ts file are t1, t2 and t3 in sequence, the time length of each ts file after the resource nodes slice in an equal interval slicing mode to obtain the third ts file is t, the time lengths t1, t2 and t3 are arithmetic series, and t1+ t2+ t3 is greater than t.
For example, the resource node slices in a progressive slicing manner to obtain the first ts file, the second ts file and the third ts file with the time durations of 0.8s, 1s and 1.2s in sequence, and the resource node slices in an equal interval slicing manner to obtain each ts file after the third ts file with the time duration of 2 s.
After the first three ts files (namely 3s) are obtained by slicing, an m3u8 file can be generated and played, compared with a slicing mode in the prior art (as shown in fig. 4, 6s are needed for obtaining the first three ts files by slicing), the playing delay can be obviously reduced, the time length (2 s) of each ts file after the third time is less than the sum (3 s) of the time lengths (2 s) for obtaining the first three ts files by slicing, therefore, no time gap occurs, the fourth slice can be guaranteed to be in seamless connection with the first three slices, and the playing pause can be avoided.
And the resource node performs slicing operation on the first three ts files obtained by slicing in a progressive slicing mode in an equal interval slicing mode, and divides each ts file slice into a first sub-slice and a second sub-slice which are equal in duration.
The first three ts files are sliced in an equal-interval slicing mode, 6 sub-slices (the time lengths are 0.4s, 0.5s, 0.6s and 0.6s respectively) corresponding to the first three ts files can be obtained, and the fluency of a broadcasting picture can be further improved because the time length of each sub-slice is more uniform when the broadcasting is started.
For a second preset slicing rule: the resource nodes are sliced in an equal interval slicing mode to obtain a first ts file, a second ts file and a third ts file, wherein the time lengths of the first ts file, the second ts file and the third ts file are all T1The duration of each ts file after the resource node is sliced to obtain the third ts file by adopting an equal-interval slicing mode is T2Then 3T1>T2
For example, the time length of the first ts file, the second ts file and the third ts file obtained by the resource node by slicing in the equal interval slicing mode is 0.8s, and the time length of each ts file obtained by the resource node by slicing in the equal interval slicing mode after the third ts file is 2 s.
In the preset slicing rule, since the first three ts files are played in a more uniform time length, the fluency of the played picture can be improved, and after the first three ts files (i.e. 2.4s) are obtained by slicing, the m3u8 file can be generated for playing, so that compared with the slicing method in the prior art (as shown in fig. 4, the slicing method needs 6s to obtain the first three ts files), the playing delay can also be obviously reduced.
And when the resource node slices to obtain a ts file by adopting a progressive slicing mode or an equal interval slicing mode based on the slicing time length, combining the corresponding difference frame P with the previous key frame I to generate a new key frame I when the corresponding frame of the slicing time length is not the key frame I, and then finishing the slicing operation.
In the technical scheme of the application, for slicing of the ts file, slicing can be performed generally when a key frame (I frame) exists in the video stream. However, due to the change of the preset slicing rule, at 0.8s, a key frame (I frame) does not necessarily exist in the video stream, and thus the slicing cannot be performed.
For this case, when the corresponding frame appearing at 0.8s is not a key frame (I-frame) but a difference frame (P-frame), it is necessary to combine the corresponding difference frame (P-frame) with the previous key frame (I-frame), generate a new key frame (I-frame), and then complete the slicing operation.
Wherein, the key frame (I frame) is the complete reservation of the frame picture, and the decoding can be completed only by the frame data; the difference frame (P frame) represents the difference between the current frame and the previous key frame (I frame) or the difference frame (P frame), and the difference defined by the current frame needs to be superimposed on the previously buffered picture to generate the final picture during decoding.
Through the further optimization of the two preset slicing rules, the fast completion of the playing slicing operation can be guaranteed, the playing speed is further improved, and better watching experience is brought to a client user.
The above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not depart from the spirit and scope of the corresponding technical solutions.

Claims (8)

1. A fast playing method for HLS slices is characterized in that: the method comprises the following steps:
s1, the client sends HLS request to the edge node to request for playing resources;
s2, the edge node requests the dispatching center to play the resource address, and the dispatching center sends the slicing request to the resource node;
s3, slicing the resource nodes according to a preset slicing rule, sending the m3u8 file to a dispatching center, and returning playing resource addresses to the edge nodes by the dispatching center;
and S4, after the edge node acquires the playing resource address, the edge node acquires the stream from the resource node and returns the stream to the client, and the client starts playing.
2. The HLS slice fast-start-up method according to claim 1, characterized in that: the preset slicing rule comprises the following steps:
and the resource nodes are sliced in a progressive slicing mode to obtain the first three ts files, and are sliced in an equal interval slicing mode to obtain the subsequent ts files.
3. The HLS slice fast-start-up method according to claim 2, characterized in that: the resource node slices in a progressive slicing mode to obtain a first ts file, a second ts file and a third ts file, wherein the duration of the first ts file, the duration of the second ts file and the duration of the third ts file are t in sequence1、t2、t3And when the resource node slices in an equal interval slicing mode to obtain the time length of each ts file after the third one is t, the time length t is1、t2、t3Is an arithmetic series, and t1+t2+t3>t。
4. The HLS slice fast-start-up method according to claim 3, characterized in that: the resource node slices in a progressive slicing mode to obtain a first ts file, a second ts file and a third ts file, wherein the time duration of the first ts file, the second ts file and the third ts file is 0.8s, 1s and 1.2s in sequence, and the time duration of each ts file after the resource node slices in an equal interval slicing mode to obtain the third ts file is 2 s.
5. The HLS slice fast-start-up method according to claim 2, characterized in that: and the resource node performs slicing operation on the first three ts files obtained by slicing in a progressive slicing mode in an equal interval slicing mode, and divides each ts file slice into a first sub-slice and a second sub-slice which are equal in time length.
6. The HLS slice fast-start-up method according to claim 1, characterized in that: the preset slicing rule comprises the following steps:
and the resource nodes are sliced in an equal interval slicing mode to obtain the first three ts files and the subsequent ts files.
7. The HLS slice fast-start-up method of claim 6, wherein: the resource node slices in an equal interval slicing mode to obtain a first ts file, a second ts file and a third ts file, wherein the time lengths of the first ts file, the second ts file and the third ts file are all T1The resource nodes adopt equal-interval slicing methodThe time length of each ts file after the third one is obtained by formula slicing is T2Then 3T1>T2
8. The HLS slice fast start-up method according to any one of claims 1, 2, 5, 6, characterized by: and when the resource node slices in a progressive slicing mode or an equal interval slicing mode based on the slicing duration to obtain a ts file, and when a frame corresponding to the slicing duration is not a key frame I, combining the corresponding difference frame P with the previous key frame I to generate a new key frame I, and then finishing the slicing operation.
CN202111015553.0A 2021-08-31 2021-08-31 HLS slice rapid playing starting method Withdrawn CN113727199A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111015553.0A CN113727199A (en) 2021-08-31 2021-08-31 HLS slice rapid playing starting method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111015553.0A CN113727199A (en) 2021-08-31 2021-08-31 HLS slice rapid playing starting method

Publications (1)

Publication Number Publication Date
CN113727199A true CN113727199A (en) 2021-11-30

Family

ID=78680014

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111015553.0A Withdrawn CN113727199A (en) 2021-08-31 2021-08-31 HLS slice rapid playing starting method

Country Status (1)

Country Link
CN (1) CN113727199A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114979721A (en) * 2022-05-18 2022-08-30 咪咕文化科技有限公司 Video slicing method, device, equipment and storage medium
CN115484239A (en) * 2022-09-15 2022-12-16 北京百度网讯科技有限公司 Multimedia data stream processing method and device, electronic equipment and storage medium
CN115550746A (en) * 2022-10-11 2022-12-30 杭州视洞科技有限公司 HLS low-delay method based on network camera and media distribution service system
US11985072B2 (en) 2022-09-15 2024-05-14 Beijing Baidu Netcom Science Technology Co., Ltd. Multimedia data stream processing method, electronic device, and storage medium

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114979721A (en) * 2022-05-18 2022-08-30 咪咕文化科技有限公司 Video slicing method, device, equipment and storage medium
CN114979721B (en) * 2022-05-18 2024-02-23 咪咕文化科技有限公司 Video slicing method, device, equipment and storage medium
CN115484239A (en) * 2022-09-15 2022-12-16 北京百度网讯科技有限公司 Multimedia data stream processing method and device, electronic equipment and storage medium
CN115484239B (en) * 2022-09-15 2023-10-27 北京百度网讯科技有限公司 Method and device for processing multimedia data stream, electronic equipment and storage medium
US11985072B2 (en) 2022-09-15 2024-05-14 Beijing Baidu Netcom Science Technology Co., Ltd. Multimedia data stream processing method, electronic device, and storage medium
CN115550746A (en) * 2022-10-11 2022-12-30 杭州视洞科技有限公司 HLS low-delay method based on network camera and media distribution service system

Similar Documents

Publication Publication Date Title
US9871844B2 (en) Method and apparatus for transmitting and receiving adaptive streaming mechanism-based content
US9615119B2 (en) Method and apparatus for providing timeshift service in digital broadcasting system and system thereof
EP2391086B1 (en) Method and apparatus for playing live content
CN113727199A (en) HLS slice rapid playing starting method
US20140129618A1 (en) Method of streaming multimedia data over a network
US20120246335A1 (en) Method, terminal, and server for implementing fast playout
CN108063769B (en) Method and device for realizing content service and content distribution network node
US10958972B2 (en) Channel change method and apparatus
US10225319B2 (en) System and method of a link surfed http live streaming broadcasting system
CN102130958A (en) Method and system for video live broadcasting in small file slice mode based on hypertext transport protocol (HTTP)
US20080281803A1 (en) Method of Transmitting Content With Adaptation of Encoding Characteristics
JP6257611B2 (en) Provision of media and content for individuals
US11863841B2 (en) Video playing control method and system
CN106789976A (en) The player method of media file, service end, client and system
CN113141522B (en) Resource transmission method, device, computer equipment and storage medium
Durak et al. Evaluating the performance of Apple’s low-latency HLS
US20220295127A1 (en) Consolidating content streams to conserve bandwidth
CN115136609A (en) Client-based storage of remote element parsing
CN113923502B (en) Live video playing method and device
CN106612462B (en) Fast forward and fast backward processing method and terminal
Kim et al. Analysis and improvement of MPEG-DASH-based internet live broadcasting Services in Real-world Environments
CN111726651A (en) Audio and video stream live broadcasting method and system based on HILS protocol
CN110933476A (en) HLS first screen time optimization scheme based on Relay
WO2012094992A1 (en) Method and system for data acquisition
CN106302465B (en) A kind of method and device of playing audio-video data

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication

Application publication date: 20211130

WW01 Invention patent application withdrawn after publication