Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13.
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer.
Claims 1-30 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-3, 5-6, 10, and 12-14 of U.S. Patent No. 12,167,063. Although the claims at issue are not identical, they are not patentably distinct from each other.
Instant Application
U.S. Patent No: 12,167,063
A method comprising: receiving a first segment of a first version of a content; determining a latency time based on sending a request for the first segment to receiving a first portion of the first segment;
and sending, based on the latency time, a request for a second segment of a second version of the content.
2.The method of claim 1, further comprising: determining, based on the latency time, an estimated time to receive the second segment of the second version of the content, wherein the sending the request for the second segment is further based on the determined estimated time.
3. The method of claim 2, wherein the determining the estimated time to receive the second segment of the second version of the content is further based on a size of the second segment of the second version of the content.
4. The method of claim 2, wherein the estimated time to receive the second segment of the second version of the content is determined according to the following equation: E = T1 + Y*T2/X where: E is the estimated time to receive the second segment of the second version of the content; T1 is the latency time; T₂ is a second time from the receiving the at least a first portion of the first segment to receiving an end portion of the first segment; X is a size of the first segment; and Y is a size of the second segment.
5. The method of claim 1, wherein the first portion of the first segment comprises one of a first bit or a first byte of the segment.
6. The method of claim 1, wherein the first version of the content is encoded at a different bitrate than the second version of the content.
7. The method of claim 1, wherein the sending is further based on an estimated time to receive the second segment of the second version of the content satisfying a threshold.
8. The method of claim 7, wherein the threshold comprises a presentation duration associated with the content.
9. The method of claim 8, wherein the presentation duration comprises two seconds.
10. The method of claim 1, wherein the content comprises at least one of linear content, non-linear content, video content, audio content, multi-media content, a movie, a television show, a presentation, a song, an album, a live broadcast, recorded content, or stored content.
11. An apparatus comprising: one or more processors; and memory storing computer-executable instructions that, when executed, cause: receiving a first segment of a first version of a content; determining a latency time based on sending a request for the first segment to receiving a first portion of the first segment; and sending, based on the latency time, a request for a second segment of a second version of the content.
12. The apparatus of claim 11, wherein the computer-executable instructions, when executed, further cause: determining, based on the latency time, an estimated time to receive the second segment of the second version of the content, wherein the sending the request for the second segment is further based on the determined estimated time.
13. The apparatus of claim 12, wherein the determining the estimated time to receive the second segment of the second version of the content is further based on a size of the second segment of the second version of the content.
14. The apparatus of claim 12, wherein the estimated time to receive the second segment of the second version of the content is determined according to the following equation: E=T₁+Y*T₇/X where: E is the estimated time to receive the second segment of the second version of the content; T1 is the latency time; T₂ is a second time from the receiving the at least a first portion of the first segment to receiving an end portion of the first segment; X is a size of the first segment; and Y is a size of the second segment.
15. The apparatus of claim 11, wherein the first portion of the first segment comprises one of a first bit or a first byte of the segment.
16. The apparatus of claim 11, wherein the first version of the content is encoded at a different bitrate than the second version of the content.
17. The apparatus of claim 11, wherein the sending is further based on an estimated time to receive the second segment of the second version of the content satisfying a threshold.
18. The apparatus of claim 17, wherein the threshold comprises a presentation duration associated with the content.
19. The apparatus of claim 18, wherein the presentation duration comprises two seconds.
20. The apparatus of claim 11, wherein the content comprises at least one of linear content, non-linear content, video content, audio content, multi-media content, a movie, a television show, a presentation, a song, an album, a live broadcast, recorded content, or stored content.
21. A non-transitory, computer-readable medium storing instructions that, when executed, cause: receiving a first segment of a first version of a content; determining a latency time based on sending a request for the first segment to receiving a first portion of the first segment; and sending, based on the latency time, a request for a second segment of a second version of the content.
22. The non-transitory, computer-readable medium of claim 21, wherein the instructions, when executed, further cause: determining, based on the latency time, an estimated time to receive the second segment of the second version of the content, wherein the sending the request for the second segment is further based on the determined estimated time.
23. The non-transitory, computer-readable medium of claim 22, wherein the determining the estimated time to receive the second segment of the second version of the content is further based on a size of the second segment of the second version of the content.
24. The non-transitory, computer-readable medium of claim 22, wherein the estimated time to receive the second segment of the second version of the content is determined according to the following equation: E=T₁+Y*T₂/X where: E is the estimated time to receive the second segment of the second version of the content; T₁ is the latency time; T₂ is a second time from the receiving the at least a first portion of the first segment to receiving an end portion of the first segment; X is a size of the first segment; and Y is a size of the second segment.
25. The non-transitory, computer-readable medium of claim 21, wherein the first portion of the first segment comprises one of a first bit or a first byte of the segment.
26. The non-transitory, computer-readable medium of claim 21, wherein the first version of the content is encoded at a different bitrate than the second version of the content.
27. The non-transitory, computer-readable medium of claim 21, wherein the sending is further based on an estimated time to receive the second segment of the second version of the content satisfying a threshold.
28. The non-transitory, computer-readable medium of claim 27, wherein the threshold comprises a presentation duration associated with the content.
29. The non-transitory, computer-readable medium of claim 28, wherein the presentation duration comprises two seconds.
30. The non-transitory, computer-readable medium of claim 21, wherein the content comprises at least one of linear content, non-linear content, video content, audio content, multi-media content, a movie, a television show, a presentation, a song, an album, a live broadcast, recorded content, or stored content.
1. A method comprising: receiving, based on a request for a first segment of a first version of a plurality of versions of content, the first segment; determining, based on an amount of time from a sending of the request for the first segment to receiving a first portion of the first segment, a latency associated with the receiving the first portion of the first segment; and sending a request for a second segment, wherein a requested version of the second segment is based on an estimated time to receive a second segment of a second version of the content and the determined latency.
1.determining, based on an amount of time from a sending of the request for the first segment to receiving a first portion of the first segment, a latency associated with the receiving the first portion of the first segment; and sending a request for a second segment, wherein a requested version of the second segment is based on an estimated time to receive a second segment of a second version of the content and the determined latency.
3. The method recited in claim 1, wherein a size of the second segment differs from a size of the first segment, and wherein the determining the estimated time to receive the second segment of the second version of the content is further based on the size of the second segment of the second version of the content.
10. The method recited in claim 7, wherein the estimated time to receive the second segment of the second version of the content is determined according to the following equation:
E=T.sub.1+Y*T.sub.2/X where: E is the estimated time to receive the second segment of the second version of the content; T.sub.1 is the latency time; T.sub.2 is a second time from the receiving the at least a first portion of the first segment to receiving an end portion of the first segment; X is a size of the first segment; and Y is a size of the second segment.
2. The method recited in claim 1, wherein the first portion of the first segment comprises one of a first bit or a first byte of the first segment.
5. The method recited in claim 1, wherein the first version of the content is encoded at a different bitrate than the second version of the content.
12. The method recited in claim 7, wherein the sending is further based on the estimated time to receive the second segment of the second version of the content satisfying a threshold.
13. The method recited in claim 12, wherein the threshold comprises a presentation duration associated with the content.
14. The method recited in claim 13, wherein the presentation duration comprises two seconds.
6. The method recited in claim 1, wherein the content comprises at least one of linear content, non-linear content, video content, audio content, multi-media content, a movie, a television show, a presentation, a song, an album, a live broadcast, recorded content, or stored content.
1. A method comprising: receiving, based on a request for a first segment of a first version of a plurality of versions of content, the first segment; determining, based on an amount of time from a sending of the request for the first segment to receiving a first portion of the first segment, a latency associated with the receiving the first portion of the first segment; and sending a request for a second segment, wherein a requested version of the second segment is based on an estimated time to receive a second segment of a second version of the content and the determined latency.
1.determining, based on an amount of time from a sending of the request for the first segment to receiving a first portion of the first segment, a latency associated with the receiving the first portion of the first segment; and sending a request for a second segment, wherein a requested version of the second segment is based on an estimated time to receive a second segment of a second version of the content and the determined latency.
3. The method recited in claim 1, wherein a size of the second segment differs from a size of the first segment, and wherein the determining the estimated time to receive the second segment of the second version of the content is further based on the size of the second segment of the second version of the content.
10. The method recited in claim 7, wherein the estimated time to receive the second segment of the second version of the content is determined according to the following equation:
E=T.sub.1+Y*T.sub.2/X where: E is the estimated time to receive the second segment of the second version of the content; T.sub.1 is the latency time; T.sub.2 is a second time from the receiving the at least a first portion of the first segment to receiving an end portion of the first segment; X is a size of the first segment; and Y is a size of the second segment.
2. The method recited in claim 1, wherein the first portion of the first segment comprises one of a first bit or a first byte of the first segment.
5. The method recited in claim 1, wherein the first version of the content is encoded at a different bitrate than the second version of the content
12. The method recited in claim 7, wherein the sending is further based on the estimated time to receive the second segment of the second version of the content satisfying a threshold.
13. The method recited in claim 12, wherein the threshold comprises a presentation duration associated with the content.
14. The method recited in claim 13, wherein the presentation duration comprises two seconds.
6. The method recited in claim 1, wherein the content comprises at least one of linear content, non-linear content, video content, audio content, multi-media content, a movie, a television show, a presentation, a song, an album, a live broadcast, recorded content, or stored content.
1. A method comprising: receiving, based on a request for a first segment of a first version of a plurality of versions of content, the first segment; determining, based on an amount of time from a sending of the request for the first segment to receiving a first portion of the first segment, a latency associated with the receiving the first portion of the first segment; and sending a request for a second segment, wherein a requested version of the second segment is based on an estimated time to receive a second segment of a second version of the content and the determined latency.
1.determining, based on an amount of time from a sending of the request for the first segment to receiving a first portion of the first segment, a latency associated with the receiving the first portion of the first segment; and sending a request for a second segment, wherein a requested version of the second segment is based on an estimated time to receive a second segment of a second version of the content and the determined latency.
3. The method recited in claim 1, wherein a size of the second segment differs from a size of the first segment, and wherein the determining the estimated time to receive the second segment of the second version of the content is further based on the size of the second segment of the second version of the content.
10. The method recited in claim 7, wherein the estimated time to receive the second segment of the second version of the content is determined according to the following equation:
E=T.sub.1+Y*T.sub.2/X where: E is the estimated time to receive the second segment of the second version of the content; T.sub.1 is the latency time; T.sub.2 is a second time from the receiving the at least a first portion of the first segment to receiving an end portion of the first segment; X is a size of the first segment; and Y is a size of the second segment.
2. The method recited in claim 1, wherein the first portion of the first segment comprises one of a first bit or a first byte of the first segment.
5. The method recited in claim 1, wherein the first version of the content is encoded at a different bitrate than the second version of the content.
12. The method recited in claim 7, wherein the sending is further based on the estimated time to receive the second segment of the second version of the content satisfying a threshold.
13. The method recited in claim 12, wherein the threshold comprises a presentation duration associated with the content.
14. The method recited in claim 13, wherein the presentation duration comprises two seconds.
6. The method recited in claim 1, wherein the content comprises at least one of linear content, non-linear content, video content, audio content, multi-media content, a movie, a television show, a presentation, a song, an album, a live broadcast, recorded content, or stored content.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1, 5-6, 11, 15-16, 21, 25 and 26 are rejected under 35 U.S.C. 102(a)(2) as being anticipated by MacInnis (US 2016/0134673)
As per claim 1. MacInnis discloses a method comprising: receiving a first segment of a first version of a content; ([0021] FIG. 1B is a signal flow diagram depicting one such embodiment of ABR streaming between a client device 100 and media server 102. As shown, at a first time, the client device 100 may transmit a first request 104a to the server 102. The server may process the request and prepare the first segment for transfer during time period 108a, and may transmit the first segment via one or more packets at 106a.)
determining a latency time based on sending a request for the first segment to receiving a first portion of the first segment; and ([0046] At step 322, the client 300 may monitor a performance of the network and/or performance of the client 300 and/or server 302. In many implementations, step 322 may be performed periodically or in parallel with steps 326-334 while the client device 300 is waiting to receive a segment and/or prior to transmitting a next request. As discussed above, monitoring performance may comprise monitoring one or more characteristics, including network congestion, latency, round trip time, processor load, memory usage, buffer fullness, block error rates, packet loss rates, time to receive an entire segment after requesting the segment or after the end of receipt of a previous segment, or any other such characteristics, and comparing characteristic values to one or more thresholds. )
sending, based on the latency time, a request for a second segment of a second version of the content. ([0025]; Accordingly, in a second aspect of the present disclosure, before a client has received some or all of a first segment, the client may send an early indicator or message to a server identifying which representation it will request for the second segment.)
As per claim 5, McInnis discloses the method of claim 1, wherein the first portion of the first segment comprises one of a first bit or a first byte of the segment. ([0021]; As shown, at a first time, the client device 100 may transmit a first request 104a to the server 102. The server may process the request and prepare the first segment for transfer during time period 108a, and may transmit the first segment via one or more packets at 106a.)
As per claim 6, McInnis discloses the method of claim 1, wherein the first version of the content is encoded at a different bitrate than the second version of the content. ([0047]; In some implementations in which two or three predetermined bitrates are available, each of steps 324a-324c may indicate to generate a request at a specific bitrate of the two or three predetermined bitrates.)
As per claims 11 and 21, please see the discussion under claim 1 as similar logic applies.
As per claims 15 and 25, please see the discussion under claim 5 as similar logic applies.
As per claims 16 and 26, please see the discussion under claim 6 as similar logic applies.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 2-3, 7-10, 12-13, 17-20, 22-23 and 27-30 are rejected under 35 U.S.C. 103 as being unpatentable over MacInnis (US 2016/0134673) in view of Mao et al. – hereinafter Mao (US 2015/0100701)
As per claim 2, MacInnis discloses the method of claim 1. MacInnis fails to disclose further comprising: determining, based on the latency time, an estimated time to receive the second segment of the second version of the content, wherein the sending the request for the second segment is further based on the determined estimated time.
Mao discloses comprising: determining, based on the latency time, an estimated time to receive the second segment of the second version of the content, wherein the sending the request for the second segment is further based on the determined estimated time. ([0081] In another embodiment, the time needed to download the current segment at the new representation may be the time period 616 between the fourth time T.sub.4 610 and a fifth time T.sub.5 614 when the download of the current segment at the new representation will be finished. Thus, the cost of switching representations to a new representation may be the total time needed to switch representations, calculated as the sum of the time period 612 to cancel the first download and request download of a different representation plus the time period 616 to complete the download of the different representation. Calculating the costs of switching representations in terms of time is further described below with reference to FIG. 7.; [0103] When the receiver device processor determines that the total time cost exceeds the time cost threshold (i.e., determination block 712="Yes"), the processor may determine whether each representation in the ordered list of representations has been selected in determination block 506. In an embodiment, the receiver device processor may select each representation with a bit rate lower than the current representation in descending order to determine the representation with the highest bit rate available for the current segment that will avoid the playout stall.)
It would have been obvious before the effective filing date of the invention MacInnis to be modified so that the current segment is the second segment that is requested by the of for the client to request a second segment of the content based the cost it takes upon the time it take to receive the second segment at the different bitrate taking into account the latency and the cost of switching representations of the bitrates associated with the segments. This would have been advantageous to improve the users experience to watch a video at a highest quality while avoid playout stalls.
As per claim 3, McInnis / Mao disclose the method of claim 2. Mao discloses wherein the determining the estimated time to receive the second segment of the second version of the content is further based on a size of the second segment of the second version of the content. (([0059]; However, and particularly for quickly degrading performance characteristics, this may allow the system to avoid interruptions or latency, as the second segment re-prepared at 516b may be able to be transmitted faster at 506b and/or processed and displayed faster at 512b than may have been possible for the originally prepared second segment, particularly if the request is for a smaller picture size and/or significantly lower quality. In some implementations, if a time to prepare and transmit the second segment at 516b and 506b may exceed a time to transmit the second segment already prepared at 516a, the media server may disregard the parameters of the second request 504b and transmit the second segment prepared at 516a. The server may estimate the transmission time for the already prepared segment based on monitoring network characteristics, such as a time from beginning transmission of a segment to when a next segment is requested, for implementations in which the segment is requested upon completion of receipt of the prior segment.)
As per claim 7, MacInnis discloses the method of claim 1. Mao discloses wherein the sending is further based on an estimated time to receive the second segment of the second version of the content satisfying a threshold. . ([0103] When the receiver device processor determines that the total time cost exceeds the time cost threshold (i.e., determination block 712="Yes"), the processor may determine whether each representation in the ordered list of representations has been selected in determination block 506. In an embodiment, the receiver device processor may select each representation with a bit rate lower than the current representation in descending order to determine the representation with the highest bit rate available for the current segment that will avoid the playout stall.)
As per claim 8, MacInnis / Mao disclose the method of claim 7. McInnis discloses wherein the threshold comprises a presentation duration associated with the content. ([0046]; For example, a characteristic of round trip time from the transmission of a request for a segment until receipt of the entire segment may be compared to a threshold, which may be based on a nominal segment playback length (e.g. a ten second segment).
As per claim 9, MacInnis / Mao discloses the method of claim 8. MacInnis discloses wherein the presentation duration comprises two seconds. ([0034]; Segments may be of any length, such as one second, two seconds, five seconds, ten seconds, one minute, or any other length. )
As per claim 10, MacInnis discloses the method of claim 1. Mao discloses wherein the content comprises at least one of linear content, non-linear content, video content, audio content, multi-media content, a movie, a television show, a presentation, a song, an album, a live broadcast, recorded content, or stored content. ([0026] While streaming content (e.g., videos), a receiver device may experience fluctuations in available bandwidth for various reasons.)
As per claims 12 and 22, please see the discussion under claim 2 as similar logic applies.
As per claims 13 and 23, please see the discussion under claim 2 as similar logic applies.
As per claims 17 and 27, please see the discussion under claim 7 as similar logic applies.
As per claims 18 and 28, please see the discussion under claim 8 as similar logic applies.
As per claims 19 and 29, please see the discussion under claim 2 as similar logic applies.
As per claims 20 and 30, please see the discussion under claim 2 as similar logic applies.
Allowable Subject Matter
Claims 4, 14 and 24 are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
Conclusion
The prior art made of record and not relied upon is considered pertinent toapplicant's disclosure. See PTO-892 form.
Any inquiry concerning this communication or earlier communications from theexaminer should be directed to Chirag R Patel whose telephone number is (571)272-7966. The examiner can normally be reached on Monday to Friday from 9:00AM to 6:00PM. If attempts to reach the examiner by telephone are unsuccessful, theexaminer's supervisor, Glenton Burgess, can be reached on 571-272-3949. The fax phone number for the organization where this application or proceedingis assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status informationfor published applications may be obtained from either Private PAIR or PublicPAIR. Status information for unpublished applications is available throughPrivate PAIR only. For more information about the PAIR system, seehttp://pairdirect.uspto.gov. Should you have questions on access to the PrivatePAIR system, contact the Electronic Business Center (EBC) at 866-217-9197(toll free).
/Chirag R Patel/
Primary Examiner, Art Unit 2454