Source: http://www.google.com/patents/US7882510?dq=system+for+measuring+web+traffic&ei=Lg8FT__TIIr-sQKzxaGRCg
Timestamp: 2017-10-19 22:33:04
Document Index: 268900594

Matched Legal Cases: ['Application No. 2003125827', 'Application No. 2003', 'Application No. 2003', 'Application No. 03158834', 'Application No. 2003125827', 'Application No. 03158834', 'Application No. 03158834']

Patent US7882510 - Demultiplexer application programming interface - Google Patents
A set of interfaces and data structures (i.e., a demultiplexer API) represents a demultiplexer of multimedia data. The data structure utilizes a number of fields, each containing an element of a command. In one embodiment, at least seven commands are formed for proper operation of the demultiplexer,...http://www.google.com/patents/US7882510?utm_source=gb-gplus-sharePatent US7882510 - Demultiplexer application programming interface
Publication number US7882510 B2
Application number US 10/635,730
Also published as CA2438418A1, CN1581067A, CN1581067B, EP1505501A1, US20050030980
Publication number 10635730, 635730, US 7882510 B2, US 7882510B2, US-B2-7882510, US7882510 B2, US7882510B2
Inventors Kirt Debique, Robin C. B. Speed, C. Alan Ludwig, Geoffrey T. Dunbar
Patent Citations (43), Non-Patent Citations (17), Classifications (10), Legal Events (3)
Demultiplexer application programming interface
US 7882510 B2
IMFStreamDescriptor* pMuxedStreamDescriptor,
IMFMediaType* pSelectedMediaType,
DWORD cMajorTypes,
GUID* aMajorTypes,
The pMuxedStreamDescriptor parameter is an input parameter and it is a pointer to a Stream Descriptor object that describes the muxed stream. The primary purpose for this parameter is to allow any metadata that may be on the stream descriptor to be used by the Demultiplexer 300. The pSelectedMediatype parameter is an input parameter that specifies the selected media type for the pMuxedStreamDescriptor. This is the media type corresponding to the samples that are passed to the Demultiplexer 300 in calls to ProcessInput( ). The cMajorTypes parameter is an input parameter that is the count of major types in the aMajorType array. This parameter can be zero. The aMajorTypes parameter is an input parameter and it is an array of major types of the elementary streams that the caller is interested in retrieving as output from the demultiplexer 300. This parameter can be NULL if cMajorTypes is equal to zero. The default stream of each major type found in the array will be selected in the presentation descriptor that is returned from GetPendingPresentationDescriptor( ). The method returns a S_OK value if the method succeeds. If the method fails, it returns an error code. If a presentation is available, then it can be retrieved via the GetPendingPresentationDescriptor method. If the presentation is not available after initialization, then after data has been fed to the demultiplexer via ProcessInput, a presentation may become available.
HRESULT SetPresentationDescriptor(
IMFPresentationDescriptor* pPresentationDescriptor
The pPresentationDescriptor parameter is a pointer to a presentation descriptor object. If the method succeeds, it returns S_OK. It may fail with MF_E_INVALID_PRESENTATION if the presentation descriptor is invalid. It may fail with MF_E_OUTPUT_PENDING if the presentation descriptor is a pending presentation and there is still pending output from the current active presentation. SetPresentationDescriptor( ) may not be called with a pending presentation if there is pending output from the current active presentation. SetPresentationDescriptor( ) may be called with the active presentation to select or deselect streams. If a stream is deselected, then all samples from that stream that are in the output queue are lost. If a new stream is selected, then samples from that stream will become available at some future time. Because different streams have different input and output buffering requirements it will depend on the individual demultiplexer at what point the new stream's samples will be available.
HRESULT GetPresentationDescriptor(
IMFPresentationDescriptor* ppPresentationDescriptor
The ppPresentationDescriptor is a pointer to a pointer to a presentation descriptor object. If the method succeeds, it returns S_OK. If it fails, it returns an error code. If there is pending output then GetPresentationDescriptor returns the presentation descriptor that corresponds to that output.
HRESULT GetPendingPresentationDescriptor(
IMFPresentationDescriptor* ppPendingPresentationDescriptor
The ppPendingPresentationDescriptor parameter is a pointer to a pointer to a presentation descriptor object. If the method succeeds, it returns S_OK. If there are no pending presentations, then the method returns MF_E_PRESENTATION_NOT_AVAILABLE. If ProcessInput is called several times, there may be several pending presentations queued. This method will only return the next pending presentation. Once all output for the currently active presentation has been processed, then the pending presentation is made active by calling SetPresentation.
IMFSample* pSample
BOOL* pfNewPresentationAvailable
The pSample parameter is a pointer to a sample object. If the method succeeds, it returns S_OK. The pfiVewPresentationAvailable parameter returns TRUE when a call to ProcessInput results in a new presentation descriptor being added to the pending presentation queue. The Demultiplexing operation may be done by the demultiplexer either on the call to ProcessInput or ProcessOutput. In either case the data will be queued on the call to ProcessInput until the user calls ProcessOutput or the data is discarded with a call to Flush( ). Only one presentation may be active at one time. When a new presentation is available the caller must clear all pending output by calling ProcessOutput, retrieve the new presentation by calling GetPendingPresentationDescriptor and then set the active presentation by calling SetPresentation.
DWORD dwStreamIdentifier,
IMFSample* ppSample
The dwStreamIdentifier parameter is a 32-bit value containing the stream identifier from the active presentation for the sample requested. The ppSample parameter is a pointer to a pointer to a sample object. If the method succeeds, it returns S_OK. If it fails, it returns an error code. If the end of the stream has been reached, then the MF_E_ENDOFSTREAM error code will be returned. If E_NO_MORE_DATA is returned, there is no data available to process. Calling ProcessInput( ) with another multiplexed data sample may alleviate the error. When processing of available data is blocked because the active presentation is no longer valid, the method will return MF_E_NEW_PRESENTATION. When the presentation changes, there is a new set of streams available. The user must indicate to the demultiplexer 300 what streams are to be extracted. Calling GetPendingPresentationDescriptor, selecting the desired streams, and calling SetPresentationDescriptor( ) will enable the processing of more samples from the input queue. The Demultiplexer object 300 will allocate space for the samples if required. The Demultiplexing operation may be done by the demultiplexer either on the call to ProcessInput or ProcessOutput. In either case, the data will be queued on the call to ProcessInput until the user calls ProcessOutput or the data is discarded with a call to Flush( ).
US2351002 Nov 18, 1941 Jun 13, 1944 Gus Burton Emergency landing runway
US5835591 Dec 19, 1996 Nov 10, 1998 Thomson Multimedia S.A. Demultiplexing device
US6611907 Oct 19, 2000 Aug 26, 2003 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
US6891547 * Jul 17, 2002 May 10, 2005 Samsung Electronics Co., Ltd. Multimedia data decoding apparatus and method capable of varying capacity of buffers therein
US6944186 * Dec 14, 2000 Sep 13, 2005 General Instrument Corporation MPEG re-multiplexer having multiple inputs and multiple outputs
US6975628 * Dec 22, 2000 Dec 13, 2005 Intel Corporation Method for representing and controlling packet data flow through packet forwarding hardware
US7010004 * Aug 3, 2001 Mar 7, 2006 Optibase Ltd. Method for multiplexing data for packet networks
US20010031136 * Apr 3, 2001 Oct 18, 2001 Sony Corporation Data reproduction apparatus and data storage medium
US20020107979 Jan 11, 2002 Aug 8, 2002 Adc Telecommunications, Inc. Computer data transmission over a telecommunictions network
US20030026276 * Aug 3, 2001 Feb 6, 2003 Hillel Gazit Method for multiplexing data for packet networks
US20080209115 Apr 29, 2008 Aug 28, 2008 Takuji Maeda Semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
KR20010050513A Title not available
RU2143726C1 Title not available
WO1998046006A2 * Apr 7, 1998 Oct 15, 1998 At & T Corp. System and method for interfacing mpeg-coded audiovisual objects permitting adaptive control
WO2001061488A2 Jan 17, 2001 Aug 23, 2001 Microsoft Corporation Coupling a filter graph space to a network driver space
1 "Extending JMF", 1999, 24 pgs., Reprinted from the Internet at: http://members.jcom.home.ne.jp/311721660/jmf2guide.JMFExtending.html.
2 "MPEG and Multimedia Communications", Leonardo Chiarliglione, IEEE Transactions on Circuits and Systems for Video Technology, vol. 7, No. 1, Feb. 1997, 14 pgs.
3 Decision on Grant cited in related Russian Application No. 2003125827/09(027567), dated Aug. 21, 2003, 5 pgs.
4 Decision to Grant cited in related Japanese Application No. 2003-299342 dated Dec. 16, 2008, 3 pgs.
5 European Search Report, Application No. EP 03 01 9007, dated Feb. 13, 2004, 3 pgs.
6 J.M. Kappes and S.I. Sayegh, Programmable Demultiplexer/Demodulator Processor, 5 pages, COMSAT Laboratories, Clarksburg, Maryland.
7 Marco RE et al., Efficient Implementation of a Filter Bank Architecture for Demultiplexing in Satellites Applications, 5 pages, Univ. of Rome "Tor Vergata", Dept. of Electronic Eng., Rome, Italy.
8 Notice of Rejection in related Japanese Application No. 2003-299342, dated May 9, 2008.
9 Notice on Grant cited in related Chinese Application No. 03158834.4 dated Dec. 4, 2009, 1 pg.
10 Office Action cited in related European Application No.: 03019007.8-1244 dated Jul. 29, 2009.
11 Office Action cited in related European Application No.: 03019007.8-1244 dated Jun. 2, 2007, 7 pgs.
12 Office Action cited in related Russian Application No. 2003125827, dated Oct. 8, 2007, 8 pgs.
13 Office Action cited in related Shanghai Application No. 03158834.4, dated May 6, 2009, 3 pgs.
14 Office Action cited in related Shanghai Application No. 03158834.4, dated Sep. 3, 2007, 9 pgs.
15 * Sun Microsystems, Inc, "Java Media Framework API Guide", Aug. 2000, Sun Microsystems, JMF 2.0 FCS, pp. section 6, pp. 1-18, and Appendix C.
16 U.S. Appl. No. 09/629,234, filed Jul. 31, 2000, Speed et al.
17 U.S. Appl. No. 09/629,289, filed Jul. 31, 2000, Crites et al.
U.S. Classification 719/328, 386/357
International Classification H04N7/08, H04N7/081, G06F13/00, H04N7/173, G06F3/00, G06F9/46
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DEBIQUE, KIRT;SPEED, ROBIN C.B.;LUDWIG, C. ALAN;AND OTHERS;REEL/FRAME:014379/0186;SIGNING DATES FROM 20030728 TO 20030804
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DEBIQUE, KIRT;SPEED, ROBIN C.B.;LUDWIG, C. ALAN;AND OTHERS;SIGNING DATES FROM 20030728 TO 20030804;REEL/FRAME:014379/0186