Title of Invention: METHOD AND SYSTEM FOR INTERACTING WITH AUDIENCE OF MULTIMEDIA CONTENT Abstract: A method of interacting with an audience of multimedia content is disclosed. The method includes receiving, from a client device, data associated with a piece of multimedia content from a group of pieces of multimedia content that is presented to a user of the client device. The data is obtained at the client device in response to an instruction provided to the client device by the user. The method includes determining, based on the data, an identifier of the piece of multimedia content from a set of identifiers, each of which identifies a piece of multimedia content from the group of pieces of multimedia content. The method includes retrieving, based on the identifier of the piece of multimedia content, interactive content associated with the piece of multimedia content. The method includes sending the interactive content to the client device such that the client device presents the interactive content to the user. Detailed Description: PRIORITY CLAIM AND RELATED APPLICATION This application is a continuation application of PCT Patent Application No. PCT/CN2015/071772, entitled “METHOD AND SYSTEM FOR INTERACTING WITH AUDIENCE OF MULTIMEDIA CONTENT” filed on Jan. 28, 2015, which claims priority to Chinese Patent Application Serial No. 201410265948.X, entitled “Method and System for Video-Based Interaction with Audience”, filed on Jun. 13, 2014, both of which are incorporated herein by reference in their entirety. FIELD OF THE APPLICATION The present application generally relates to the field of computer technologies, and more particularly to a method and related device and system for interacting with an audience of multimedia content. BACKGROUND Nowadays multimedia content such as audios and videos have become an essential part of people's everyday life. An audience can receive different types of multimedia content via various methods such as watching TV, listening to radio, visiting websites that host videos or audios, etc. As a result of receiving the multimedia content, an audience may generate interest towards a service or an item of merchandise associated with the multimedia content. Currently, in order to gain more information of the service or merchandise, the audience generally needs to search one or more keywords associated with the service or merchandise (e.g., using a search engine website). Such a known approach of interacting with multimedia content (i.e., searching keywords after receiving multimedia content), however, typically causes delays in the interactions of the audience with the multimedia content. This can potentially reduce the possibility of converting the audience's interest towards the service or merchandise into subsequent commercial activities (e.g., purchasing the service or merchandise). Thus, a need exists for a method and system that can enable an audience to interact with multimedia content in substantially real time or with insignificant delays. SUMMARY The above deficiencies associated with the known approach of interacting with multimedia content may be reduced or eliminated by the techniques described herein. In some embodiments, a method for interacting with an audience of multimedia content is disclosed. The method is performed at a server device, which includes one or more processors and memory for storing programs to be executed by the one or more processors. The method includes receiving, from a client device, data associated with a piece of multimedia content presented to a user of the client device. The piece of multimedia content is from a set of pieces of multimedia content. The data associated with the piece of multimedia content is obtained at the client device in response to an instruction provided to the client device by the user of the client device. In some instances, the piece of multimedia content is a video clip or an audio clip, and the data associated with the piece of multimedia content includes an audio fingerprint of the piece of multimedia content. The method includes determining, based on the data, an identifier of the piece of multimedia content from a set of identifiers for the set of pieces of multimedia content. Each identifier from the set of identifiers identifies at least one piece of multimedia content from the set of pieces of multimedia content. In some instances, the data includes an audio fingerprint of the piece of multimedia content. In such instances, the determining the identifier of the piece of multimedia content can include, for example, comparing the audio fingerprint included in the data with a set of audio fingerprints of the set of pieces of multimedia content. Where each audio fingerprint from the set of audio fingerprint uniquely identifies a piece of multimedia content from the set of pieces of multimedia content. The method also includes retrieving, based on the identifier of the piece of multimedia content, interactive content associated with the piece of multimedia content. In some instances, the interactive content includes an interactive webpage associated with the piece of multimedia content. In some instances, the piece of multimedia content is an advertisement being presented to the audience, and the data associated with the piece of multimedia content includes an audio fingerprint of the advertisement. In such instances, the interactive content can be configured to, for example, enable the user of the client device to purchase a product associated with the advertisement. Moreover, the method further includes sending the interactive content to the client device such that the client device presents the interactive content to the user of the client device. In some instances, the set of pieces of multimedia content are presented to the audience via a group of channels. In such instances, the method can include receiving signals of the multimedia content, and periodically determining, based on the received signals, audio fingerprints of the multimedia content. The method can further include, storing the audio fingerprints into a real-time audio fingerprint database such that an audio fingerprint associated with the multimedia content presented via each channel from the group of channels that is stored in the real-time audio fingerprint database is periodically updated. In the instances described above, the data can include an audio fingerprint and a timestamp of the piece of multimedia content. Determining the identifier of the piece of multimedia content can include comparing the audio fingerprint included in the data with the audio fingerprints stored in the real-time audio fingerprint database to determine a channel from the group of channels via which the piece of multimedia content is presented. Determining the identifier of the piece of multimedia content can further include determining, based on the channel and the timestamp included in the data, the identifier of the piece of multimedia content from a predefined database of multimedia content. In some instances, the predefined database of multimedia content stores an identifier of each piece of multimedia content from the set of pieces of multimedia content, and information of at least a channel and a time duration of each piece of multimedia content from the set of pieces of multimedia content. In some embodiments, a server device includes one or more processors and memory storing one or more programs for execution by the one or more processors. The one or more programs include instructions that cause the server device to perform the method for interacting with multimedia content as described above. In some embodiments, a non transitory computer readable storage medium stores one or more programs including instructions for execution by one or more processors. The instructions, when executed by the one or more processors, cause the processors to perform the operations of interacting with multimedia content as described above. BRIEF DESCRIPTION OF DRAWINGS The aforementioned features and advantages of the present application as well as additional features and advantages thereof will be more clearly understood hereinafter as a result of a detailed description of preferred embodiments when taken in conjunction with the drawings. FIG. 1 is a schematic diagram illustrating a system configured to enable a user to interact with multimedia content in accordance with some embodiments. FIG. 2 is a flowchart illustrating a method performed at a client device for enabling a user to interact with multimedia content in accordance with some embodiments. FIG. 3 is a flowchart illustrating a method performed at a client device for capturing data of multimedia content in performing the method of FIG. 2. FIG. 4 is a flowchart illustrating a method performed at a server device for retrieving and sending interactive content associated with a piece of multimedia content in accordance with some embodiments. FIG. 5 is a flowchart illustrating a method performed at a server device for determining identifiers for time durations in time streams of multimedia content presented via a group of channels in accordance with some embodiments. FIG. 6 is a schematic diagram illustrating a process of enabling a user to interact with a TV advertisement in accordance with some embodiments. FIG. 7 is a block diagram illustrating structure of a client device in accordance with some embodiments. FIG. 8 is a block diagram illustrating structure of a receive module within the client device in FIG. 7. FIG. 9 is a block diagram illustrating structure of a system consisting of modules within a client device and a server device in accordance with some embodiments. FIG. 10 is a block diagram illustrating structure of an identification module within the system in FIG. 9. FIG. 11 is a block diagram illustrating structure of another system consisting of modules within a client device and a server device in accordance with some embodiments. FIG. 12 is a block diagram illustrating structure of an association module within the system in FIG. 11. FIG. 13 is a block diagram illustrating structure of a server device in accordance with some embodiments. Like reference numerals refer to corresponding parts throughout the several views of the drawings. DETAILED DESCRIPTION Reference will now be made in detail to embodiments, examples of which are illustrated in the accompanying drawings. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the subject matter presented herein. But it will be apparent to one skilled in the art that the subject matter may be practiced without these specific details. In other instances, well-known methods, procedures, components, and circuits have not been described in detail so as not to unnecessarily obscure aspects of the embodiments. To promote an understanding of the objectives, technical solutions, and advantages of the present application, embodiments of the present application are further described in detail below with reference to the accompanying drawings. FIG. 1 is a schematic diagram illustrating a system 100 configured to enable a user to interact with multimedia content in accordance with some embodiments. As shown in FIG. 1, the system 100 includes a server device 70, a client device 50, and a terminal device 30. The server device 70 is operatively coupled to and communicates with the client device 50 via one or more networks (not shown in FIG. 1). The terminal device 30 receives multimedia content from a source of multimedia content such as, for example, a satellite 10. The terminal device 30 then presents the received multimedia content to the user 55. Additionally, as shown in FIG. 1, the client device 50 is operated by a user 55, which can be any person receiving the multimedia content presented by the terminal device 30 and interested in interacting with the received multimedia content. Specifically, the terminal device 30 can be any type of electronic device configured to present multimedia content to users (e.g., the user 55) of the terminal device 30. The multimedia content presented by the terminal device 30 can be one or more types of multimedia content such as, for example, web-based video clips, TV-based video programs, web-based audio clips, broadcasted radio, and/or any other suitable type of multimedia content. Correspondingly, the terminal device 30 can be, for example, a computer (equipped with a web browser, media player, speaker, etc.), a TV, a radio receiver, and/or any other suitable device to receive and present multimedia content. In some embodiments, as shown in FIG. 1, the terminal device 30 can receive the multimedia content (e.g., video content, audio content, etc.) from the satellite 10. In such embodiments, the terminal device 30 is equipped with a wireless receiver (e.g., an antenna) configured to receive wireless communication signals from the satellite 10. In other embodiments, the terminal device 30 is configured to receive multimedia content from a source of multimedia content in any other suitable method (e.g., via a TV cable, a cellular network, the Internet, etc.) In some embodiments, audience of the multimedia content presented by the terminal device 30 can be an individual user (e.g., the user 55) or a large number of users. For example, the terminal device 30 can be a TV configured to show TV programs in a home of a user (e.g., the user 55). For another example, the terminal device 30 can be a big-screen display in a shopping mall configured to play commercial advertisements to customers in the shopping mall. For yet another example, the terminal device 30 can be a radio receiver in a transportation tool (e.g., a boat, a vehicle, a train, a plane, etc.) configured to broadcast radio to passengers in the transportation tool. The client device 50 can be any type of electronic device configured to function as a client-side device to enable users (e.g., the user 55) to interact with the multimedia content presented by the terminal device 30. In some embodiments, such a client device can be, for example, a cellular phone, a smart phone, a mobile Internet device (MI)), a personal digital assistant (PDA), a palmtop computer, a tablet computer, an e-reader, a laptop computer, a handheld computer, a wearable device, a desktop computer, a vehicle terminal, a portable electronic device, a controller of a smart TV or a display device, and/or the like. In some embodiments, such a client device can be referred to as, for example, a terminal device, a user device, a mobile device, a portable device, a personal electronic device, and/or the like. In some embodiments, the client device 50 includes a device or a component (e.g., a microphone, an audio recorder) capable of receiving and capturing (e.g., recording) audio content of the multimedia content presented by the terminal device 30. In such embodiments, as described below, the client device 50 is configured to capture audio content of the multimedia content in association with enabling users (e.g., the user 55) to interact with the multimedia content. Details of a client device are shown and described below with respect to FIGS. 7-9 and 11. The server device 70 can be any type of device configured to function as a server-side device to enable users (e.g., the user 55) to interact with the multimedia content presented by the terminal device 30. Such a server device 70 can typically be configured to communicate with multiple client devices (e.g., the client device 50) via one or more networks. In some embodiments, the server device 70 can be, for example, a background server, a back end server, a database server, a workstation, a desktop computer, a cloud computing server, a data processing server, and/or the like. In some embodiments, the server device 70 can be a server cluster or server center consisting of two or more servers (e.g., a data processing server and a database server). Details of a server device are shown and described below with respect to FIGS. 9-13. Although not shown in FIG. 1, a network connecting a client device (e.g., the client device 50) and a server device (e.g., the server device 70) can be any type of network configured to operatively couple one or more client devices to one or more server devices, and enable communications between the client device(s) and the server device(s). In some embodiments, such a network can include one or more networks such as, for example, a cellular network, a satellite network, a local area network (LAN), a wide area network (WAN), a wireless local area network (WLAN), the Internet, etc. In some embodiments, such a network can be optionally implemented using any known network protocol including various wired and/or wireless protocols such as, for example, Ethernet, universal serial bus (USB), global system for mobile communications (GSM), enhanced data GSM environment (EDGE), general packet radio service (GPRS), long term evolution (LTE), code division multiple access (CDMA), wideband code division multiple Access (WCDMA), time division multiple access (TDMA), Bluetooth, Wi-Fi, voice over internet protocol (VoIP), Wi-MAX, etc. FIG. 2 is a flowchart illustrating a method 200 performed at a client device for enabling a user to interact with multimedia content in accordance with some embodiments. The client device performing the method 200 is similar to the client device 50 shown and described above with respect to FIG. 1. Particularly, the client device is operated by a user (e.g., the user 55 in FIG. 1), who receives multimedia content presented by a terminal device (e.g., the terminal device 30 in FIG. 1). Furthermore, the client device is operatively coupled to and communicates with a server device similar to the server device 70 shown and described above with respect to FIG. 1. In some embodiments, the client device performing the method 200 can include one or more processors and memory. In such embodiments, the method 200 can be implemented using instructions or code of an application that are stored in a non-transitory computer readable storage medium of the client device and executed by the one or more processors of the client device. The application is associated with enabling a user to interact with multimedia content presented by a terminal device. Such an application typically has a client-side portion that is stored in and/or executed at the client device, and a server-side portion that is stored in and/or executed at the server device operatively coupled to and communicating with the client device. As a result of the client-side portion of the application being executed, the method 200 is performed at the client device. As shown in FIG. 2, the method 200 includes the following steps. At S210, the client device receives an interaction instruction from the user of the client device. Such an interaction instruction can be entered by the user in response to receiving a piece of multimedia content currently presented by the terminal device that draws interest of the user. In some embodiments, the user can enter an interaction instruction to the client device (e.g., a smart phone, a laptop computer, a PDA, a touchpad, etc.) in response to, for example, watching an advertisement on a TV, listening to a radio program, watching a video clip provided by a website, and/or the like. In some embodiments, the user can provide an interaction instruction by, for example, pressing a button on a user interface displayed at the client device, generating and entering a voice command to the client device, initiating an application installed and executed at the client device, or using any other suitable method. The client device then captures, in response to the interaction instruction, data associated with the piece of multimedia content presented to the user. In some embodiments, the data associated with the piece of multimedia content includes audio data of the piece of multimedia content. For example, the user can use a webcam or a video camera of the client device to record a video clip from the piece of multimedia content (e.g., a video clip, a TV show, etc.) being presented at the terminal device to the user. For another example, the user can use a recorder of the client device to record an audio recording from the piece of multimedia content (e.g., an audio clip, a radio program, etc.) being presented at the terminal device to the user. In some embodiments, the data associated with the piece of multimedia content can optionally include a video or image of the piece of multimedia content. In some embodiments, the client device can be configured to extract, from the captured audio data of the piece of multimedia content, an audio fingerprint of the piece of multimedia content. In such embodiments, the client device can implement any suitable method or algorithm to extract the audio fingerprint of the piece of multimedia content. Moreover, the data associated with the piece of multimedia content can include the audio fingerprint of the piece of multimedia content that is extracted at the client device based on the captured audio data of the piece of multimedia content. At S230, the client device sends the data to the server device such that the server device determines, based on the data, an identifier of the piece of multimedia content. In some embodiments, each different piece of multimedia content is identified by a unique identifier. That is, each identifier can be used to link to a unique piece of multimedia content. In some other embodiments, more than one different pieces of multimedia content can be identified by a common identifier. For example, multiple different commercial advertisements of a product can be identified by the same identifier. In some embodiments, the server device is configured to determine the identifier of the piece of multimedia content based on the audio fingerprint of the piece of multimedia content that is received from the client device. In other embodiments, the server device can determine the identifier of the piece of multimedia content based on any other data associated with the piece of multimedia content that is received from the client device. In some embodiments, the data associated with the piece of multimedia content (e.g., the audio fingerprint of the piece of multimedia content) can uniquely identify the piece of multimedia content and differentiate the piece of multimedia content from other pieces of multimedia content. At S250, the client device receives, from the server device and in response to the data, interactive content associated with the piece of multimedia content. The interactive content can be, for example, an interactive webpage associated with the piece of multimedia content that can be displayed at the client device to the user. For example, the interactive content associated with a TV commercial of an automobile can be an interactive webpage presenting an application for a test drive of the automobile at a nearby dealer. For another example, the interactive content associated with an advertisement of a beverage can be an interactive webpage including information of a lottery to win the beverage as a prize. In some embodiments, the interactive content associated with various pieces of multimedia content is stored at a predefined database of interactive content that is accessible to the server device. In such embodiments, the server device can retrieve the interactive content based on the identifier of the piece of multimedia content that is determined at the server device (at S230). Furthermore, the client device then presents the interactive content to the user. In some embodiments, a client device (e.g., a smart phone, a touchpad, a computer) can display the interactive content (e.g., an interactive webpage) at a display device (e.g., a screen, a monitor) of the client device. In some other embodiments, a client device (e.g., a controller of a smart TV) can display the interactive content (e.g., an interactive webpage) at an external display device such as, for example, a display device of the terminal device (e.g., the screen of the smart TV). In some embodiments, different pieces of multimedia content can be associated with the same interactive content. In such embodiments, for example, the same interactive webpage can be presented to the user when the user instructs to interact with any of the different advertisements of the same product. In some embodiments, the same piece of multimedia content can be associated with different interactive content. In such embodiments, for example, an interactive webpage can be randomly (or in any other suitable method) selected from a group of interactive webpages and presented to the user when the user instructs to interact with an advertisement of a product. FIG. 3 is a flowchart illustrating a method 300 for capturing data of multimedia content in performing the method 200 of FIG. 2. The method 300 can be performed by the client device that performs the method 200 as described above with respect to FIG. 2. Operations of the method 300 correspond to the operations in performing S210 of the method 200. As shown in FIG. 3, the method 300 includes the following steps. At S211, the client device receives, from the user of the client device, the interaction instruction associated with the piece of multimedia content currently being presented to the user. At S213, in response to the interaction instruction, the client device initiates recording an audio stream of the piece of multimedia content. The client device can be configured to record the audio stream of the piece of multimedia content using any suitable recording method. In some embodiments, for example, the client device can sample the audio stream of the piece of multimedia content with a sampling frequency of 8 kHz, and then quantize the sampled data with 16 bits to generate the digital audio data. At S215, the client device extracts, from the recorded audio data, an audio fingerprint of the piece of multimedia content. Such an audio fingerprint may be a compact unique content-based digital signature of the audio data recorded from the piece of multimedia content. Features or parameters of an audio fingerprint typically include, for example, robustness, reliability, fingerprint size, granularity, search speed, scalability, etc. As an example, extracting the audio fingerprint from the recorded audio data can include the following operations. (1) Segment the recorded audio data into multiple frames in the time-domain to generate multi-frame audio signals. Specifically, various window functions (e.g., Hamming window, Harming window, Gaussian window, etc.) can be used as a parameter to segment the audio data into frames. For example, the client device can use a Hamming window w(n) is defined as: w  ( n ) = 0.54 - 0.46  cos  ( 2  n   π N - 1 ) ,  0 ≤ n ≤ N - 1. (2) Perform Short-Time Fourier Transform (STFT) on each frame of the audio signals to generate a frequency spectrum (in the frequency domain) of that frame of the audio signals (in the time domain). The resulted frequency spectrum X(m) is: X  ( m ) = ∑ n = 0 N - 1   w  ( n )  x  ( n )   - j2   π   mn N , where j is the parameter corresponding to the window function, and N is the number of data points used in the STFT (e.g., N=1024). (3) Extract an amplitude spectrum for each frame of the audio signals, and then generate a two-dimensional spectrogram based on the time, frequency spectrum and amplitude spectrum of each frame of the audio signals. The resulted two-dimensional spectrogram S(t, f) can be calculated as S(t, f)=|X(t, f)|. (4) Perform time-based modulo calculation on the two-dimensional spectrogram to generate a group of a predefined number of sub-spectrograms, where each sub-spectrogram from the group of sub-spectrograms corresponds to a phase channel of the audio signals. The predefined number of sub-spectrograms (denoted as M) can be a configurable positive integer. The two-dimensional spectrogram is then segmented based on the result of the time t mod M. As a result, a number of M sub-spectrograms are generated as: Sk(t, f), where k=1, 2, . . . , M. (5) Identify at least one peak characteristic point for each phase channel from the M phase channels. The at least one peak characteristic point for each phase channel forms a sequence of peak characteristic points for that phase channel. Specifically, for example, for each phase channel from the M phase channels, identifying the at least one peak characteristic point can include: a) calculating an energy value for each characteristic point of the sub-spectrogram corresponding to that phase channel; b) based on the calculated energy values, identifying a characteristic point that has the highest energy value among all the characteristic points within a certain rectangle area in the sub-spectrogram as a peak characteristic point for that phase channel; and c) repeating the operation of b) for each such rectangle area in the sub-spectrogram to identify all the peak characteristic points for that phase channel. In such a method, the size of the certain rectangle area can be adjusted depending on the specific circumstances. In some embodiments, the at least one peak characteristic point can be identified for each sub-spectrogram using other suitable methods or algorithms. As a result, at least one peak characteristic point can be identified for each phase channel from the M phase channels. The at least one peak characteristic point can then be reordered to form the sequence of peak characteristic points for the corresponding phase channel. Such a reordering can be performed in any suitable method. For example, the peak characteristic points can be ordered based on the time of each peak characteristic point (e.g., a peak characteristic point with an earlier time is placed to a position ahead of another peak characteristic point with a later time). Moreover, for multiple peak characteristic points with the same time (or substantially the same time), the multiple peak characteristic points can be ordered based on the frequency of each peak characteristic point (e.g., a peak characteristic point with a higher frequency is placed to a position ahead of another peak characteristic point with a lower frequency). (6) Make a pair for each peak characteristic point in the sequence of peak characteristic points for each phase channel to generate a sequence of pairs of peak characteristic points for that phase channel. Specifically, assume Sn(tk, fk) denotes an arbitrary peak characteristic point in the sequence of peak characteristic points for an arbitrary phase channel, where n represents an index of the phase channel in the M phase channels (0<n≦M); k represents an index of the peak characteristic point in the sequence of peak characteristic points (k is a positive integer); tk represents the time of the peak characteristic point; and fk represents the frequency of the peak characteristic point. As an example, for each peak characteristic point in the sequence of peak characteristic points for a phase channel from the M phase channels (assume such a peak characteristic point is denoted as Sn(tk, fk)), the pairing for that peak characteristic point can be performed in the following steps: a) Use the peak characteristic point Sn(tk, fk) as an anchor to select a targeted rectangle area. Such a targeted rectangle area can be defined as: tstart≦tk≦tend and fstart≦fk≦fend, where tstart represents a starting time for the targeted rectangle area; tend represents an ending time for the targeted rectangle area; fstart represents a minimum frequency for the targeted rectangle area; and fend represents a maximum frequency for the targeted rectangle area. b) Identify another peak characteristic point within the targeted rectangle area to be paired with the anchor Sn(tk, fk). Denote the identified peak characteristic point as Sn(tb, fb), then Sn(tk, fk) and Sn(tb, fb) form a pair of peak characteristic points in the sequence of pairs of peak characteristic points for the phase channel. The pairing peak characteristic point can be identified for an anchor based on any suitable principle such as, for example, the identified peak characteristic point has the minimum time difference from the anchor among all qualified peak characteristic points (i.e., all the peak characteristic points that are within the targeted rectangle area except the anchor), the identified peak characteristic point has the maximum energy value among all qualified peak characteristic points, and/or the like. Thus, the peak characteristic points in the sequence of peak characteristic points for each phase channel can be paired to form a sequence of pairs of peak characteristic points for that phase channel. In some embodiments, peak characteristic points can be paired for each sub-spectrogram using other suitable methods or algorithms. A resulted pair of peak characteristic points can be denoted by (tk, fk, Δfk, Δtk)n, where n represents an index of the phase channel in the M phase channels (0<n≦M); k represents an index of the anchor peak characteristic point in the sequence of peak characteristic points; Δtk=tb−tk represents the difference in time between the two peak characteristic points in the pair; and Δfk=fb−fk represents the difference in frequency between the two peak characteristic points in the pair. (7) Perform hash calculation on each sequence of peak characteristic points to generate a fingerprint sequence for the corresponding phase channel. The collection of such fingerprint sequences for the M phase channels then forms the desired audio fingerprint of the audio signals. Specifically, for a pair of peak characteristic points represented by (tb, fk, Δfk, Δtk)n, (fk, Δfk, Δtk) represents the characteristic portion of the pair of peak characteristic points, and tk represents the time when that characteristic portion occurs in the sub-spectrogram in other words, in the audio signals). The hash calculation can be performed on (fk, Δfk, Δtk) to represent (fk, Δfk, Δtk) using hash codes of a fixed bit length such as, for example, hashcodek=(fk, Δfk, Δtk). As a result of such a hash calculation, each pair of peak characteristic points in the sequence of pairs of peak characteristic points for each phase channel can be represented by (tk, hashcodek)n, which is a fingerprint sequence that is used in forming the audio fingerprint of the audio signals. FIG. 4 is a flowchart illustrating a method 400 performed at a server device for retrieving and sending interactive content associated with a piece of multimedia content in accordance with some embodiments. The server device performing the method 400 is similar to the server device 70 shown and described above with respect to FIG. 1. Particularly, the server device is operatively coupled to and communicates with one or more client devices that are similar to the client device 50 shown and described above with respect to FIG. 1. A client device operatively coupled to and communicating with the server device is operated by a user (e.g., the user 55 in FIG. 1), who receives multimedia content presented by a terminal device (e.g., the terminal device 30 in FIG. 1). Related to operations of S230-S250 in performing the method 200 shown and described above with respect to FIG. 2, the server device performs operations of the method 400 to retrieve and send interactive content in response to receiving data associated with the piece of multimedia content from the client device. In some embodiments, the server device performing the method 400 can include one or more processors and memory. In such embodiments, the method 400 can be implemented using instructions or code of an application that are stored in a non-transitory computer readable storage medium of the server device and executed by the one or more processors of the server device. The application is associated with enabling a user to interact with multimedia content presented by a terminal device. Such an application typically has a client-side portion that is stored in and/or executed at each client device operatively coupled to the server device, and a server-side portion that is stored in and/or executed at the server device. As a result of the server-side portion of the application being executed, the method 400 is performed at the server device. As shown in FIG. 4, the method 400 includes the following steps. At S401, the server device receives, from the client device, data associated with the piece of multimedia content. The server device then determines, based on the received data, a channel via which the piece of multimedia content is presented and a time of the interaction. In some embodiments, the piece of multimedia content is from multiple pieces of multimedia content that are presented via a group of channels. The group of channels can include, for example, a group of different TV channels, a group of different radio frequencies, a group of different websites hosting video content, and/or the like. In some embodiments, the group of channels can include a combination of different types of channels such as TV channels, radio frequencies, websites, etc. In some embodiments, at any given moment, at most one piece of multimedia content from the multiple pieces of multimedia content is presented via a channel from the group of channels. In such embodiments, at any given time, a user can receive (e.g., view, watch, hear) at most one piece of multimedia content via a channel from the group of channels using one terminal device. Similarly, at any given time a user can receive more than one piece of multimedia content via multiple channels using more than one terminal device. In some embodiments, the data associated with the piece of multimedia content that is received from the client device includes an audio fingerprint of the piece of multimedia content. In such embodiments, the server device is configured to compare the audio fingerprint of the piece of multimedia content with a group of audio fingerprints stored at a database of audio fingerprints for multiple pieces of multimedia content presented via the group of channels. The server device includes or can access such a database. As a result of the comparison, the server device determines the channel from the group of channels via which the piece of multimedia content is presented. Additionally, the server device can determine the time of the interaction. For example, the process of comparing the received audio fingerprint of the piece of multimedia content with the audio fingerprints stored in the database of audio fingerprints for multimedia content can include the following steps. (1) identify, by comparing each audio fingerprint from the database with the received audio fingerprint, hash-coded pairs of peak characteristic points (e.g., hashcodek) of that audio fingerprint that are the same (or substantially the same) as the hash-coded pairs of peak characteristic points of the received audio fingerprint. As a result, each hash-coded pair of peak characteristic points that is included in both the received audio fingerprint and an audio fingerprint stored in the database can be identified. Specifically, assume the received audio fingerprint is represented by FP1={(τ1, h21), (τ2, h21), . . . (τM, hM1)}, and any arbitrary audio fingerprint stored in the database is represented by FP2={(t1, h12), (t2, h22), . . . (tN, hN2)}, where each h is a hash-coded pair of peak characteristic points, and τ, t are timestamps for the hash-coded peak characteristic points. Thus, by comparing the hash-coded pairs of peak characteristic points from FP1 and FP2, (τi, hi1) and (tj, hj2) having the same h (or substantially the same h) can be determined (that is, hi1=hj2), and the corresponding pair of timestamps (τi, tj) can be determined. (2) Calculate the time difference for each pair of timestamps (ti, tj) determined in the step (1), and then generate a histogram for the calculated time differences. Specifically, for each pair of timestamps (τi, tj) calculate Δt=tj−τi. (3) Calculate the peak height of the histogram. Such a peak height of the histogram is a match score representing the similarity of the two audio fingerprints (i.e., the received audio fingerprint FP1 and the arbitrary audio fingerprint from the database FP2). (4) Determine, based on the peak height of the histogram calculated at the step (3), whether the two audio fingerprints match each other. Specifically, the calculated peak height is compared to a predefined threshold. If the calculated peak height is greater than the predefined threshold, then according to linear correlation, the corresponding histogram has an obvious peak. Thus, the two audio fingerprints are determined to match each other. Otherwise, if the calculated peak height is not greater than the predefined threshold, then according to linear correlation, the corresponding histogram has no obvious peak. Thus, the two audio fingerprints are determined not to match each other. Additionally, in the case of a successful match being found between the received audio fingerprint and an audio fingerprint stored in the database, the time difference corresponding to the peak height in the histogram represents an offset of time between the two audio fingerprints. The time of interaction can be calculated based on such an offset of time. Each audio fingerprint stored in the database is associated with a channel from the group of channels. That is, each audio fingerprint stored in the database represents a piece of multimedia content that is presented via an associated channel from the group of channels. Thus, by performing the steps (1)-(4) described above, the server device can determine the channel from the group of channels via which the piece of multimedia content is presented, as well as the corresponding time of the interaction. In some embodiments, the server device can determine more than one audio fingerprint from the database, each of which matches the received audio fingerprint. The multiple matches indicate that the piece of multimedia content can be presented via more than one channel from the group of channels (at substantially or approximately the same time). In such embodiments, the server device can select one channel from the more than one channel as the one via which the user is assumed to receive the piece of multimedia content. For example, the server device can randomly select one channel from the more than one channel, or select the one channel that has the highest match score among the more than one channel. At S403, the server device determines a time duration in a time stream of multimedia content presented via the channel, as well as an identifier of the multimedia content presented via the channel during that time duration, where the time duration includes the time of the interaction. In some embodiments, each channel from the group of channels is associated with a time stream of multimedia content presented via that channel. Such a time stream is divided into a number of predefined, mutually-exclusive time durations, each of which is associated with a single piece of multimedia content. In other words, one and only one piece of multimedia content is presented during each time duration. Thus, each time duration is associated with the identifier of the piece of multimedia content that is presented via the channel during that time duration. Therefore, the server device locates the time of interaction within the time stream for the determined channel, and then determines, from all the time durations of the time stream, a time duration that includes the time of interaction. Accordingly, the server device determines the identifier of the multimedia content presented via the channel during the determined time duration. Presumably, the multimedia content presented via the channel during the determined time duration is the same multimedia content as the piece of multimedia content whose data is received from the client npatterson@example.com. At S405, the server device retrieves, based on the determined identifier, interactive content associated with the multimedia content presented via the channel during the time duration. In some embodiments, interactive content associated with the multimedia content presented via the group of channels is stored in a predefined database of interactive content, where each piece of multimedia content that is potentially presented via a channel from the group of channels is associated with one or more pieces of interactive content. As described above with respect to FIG. 2, the interactive content can include, for example, an interactive webpage configured to promote or advertise a product or service associated with the corresponding piece of multimedia content (e.g., an advertisement). In such embodiments, the server device can retrieve the interactive content associated with the piece of multimedia content using the identifier of the piece of multimedia content. The server device can then send the interactive content to the client device. FIG. 5 is a flowchart illustrating a method 500 performed at a server device for determining identifiers for time durations in time streams of multimedia content presented via a group of channels in accordance with some embodiments. The server device performing the method 500 is similar to the server device 70 shown and described above with respect to FIG. 1. Particularly, the server device is operatively coupled to and communicates with one or more client devices that are similar to the client device 50 shown and described above with respect to FIG. 1. A client device operatively coupled to and communicating with the server device is operated by a user (e.g., the user 55 in FIG. 1), who receives multimedia content presented by a terminal device (e.g., the terminal device 30 in FIG. 1). Related to operations of S430 in performing the method 400 shown and described above with respect to FIG. 4, the server device performs operations of the method 500 to associate each time duration in the time stream with an identifier of a piece of multimedia content. In some embodiments, the server device performing the method 500 can include one or more processors and memory. In such embodiments, the method 500 can be implemented using instructions or code of an application stored in a non-transitory computer readable storage medium of the server device and executed by the one or more processors of the server device. The application is associated with enabling a user to interact with multimedia content presented by a terminal device. Such an application typically has a client-side portion that is stored in and/or executed at each client device operatively coupled to the server device, and a server-side portion that is stored in and/or executed at the server device. As a result of the server-side portion of the application being executed, the method 500 is performed at the server device. As shown in FIG. 5, the method 500 includes the following steps. At S501, the server device receives signals of multimedia content presented via a group of channels. In some embodiments, for example, the multimedia content is TV programs and/or TV advertisements that are presented to users via TVs (as terminal devices). In such embodiments, the server device can implement, for example, a digital satellite receiver apparatus to receive satellite signals of the multimedia content that are transmitted from a TV satellite. After receiving the satellite signals, the server device processes the satellite signals to retrieve audio signals of the multimedia content. Then, the server device periodically determines data of the multimedia content based on the received audio signals. In some embodiments, the data of the multimedia content includes audio fingerprints of the multimedia content. In such embodiments, the server device can perform the operations in S215 of the method 300 described above with respect to FIG. 3 to extract the audio fingerprints of the multimedia content from the audio signals. At S503, the server device compares the periodically-determined data with data stored at a predefined database of multimedia content. The server device then determines an identifier for each piece of periodically-determined data based on the comparison result. At S505, the server device associates each of the identifiers with a corresponding time duration in a time stream of multimedia content presented via a channel from the group of channels, where the time duration includes the time of receiving the corresponding signals of the multimedia content or the corresponding time of interaction. In some embodiments, the predefined database of multimedia content stores data associated with multiple pieces of multimedia content that are presented via the group of channels. Such data can be, for example, audio fingerprints for the multiple pieces of multimedia content. In some embodiments, the data associated with the multimedia content can be provided by the producer or provider of the multimedia content prior to the server device receiving signals of the multimedia npatterson@example.com. In some embodiments, each piece of multimedia content (whose data is stored in the predefined database of multimedia content) is associated with an identifier. The server device compares the data (e.g., an audio fingerprint) of a piece of multimedia content (whose audio signals are received and processed at S501 to extract the data of that piece of multimedia content) with the data of the multiple pieces of multimedia content that is stored in the predefined database of multimedia content. As a result of the comparison, the server device determines, from the multiple pieces of multimedia content, a piece of multimedia content whose data is stored in the predefined database and matches the data of the received piece of multimedia content. The server device then determines the identifier of the received piece of multimedia content. In such a method, the server device determines an identifier for the periodically-determined data of each piece of multimedia content, whose signals are received at the server device. Thus, the server device establishes a time stream for each channel from the group of channels, where each time stream includes multiple mutually-exclusive time durations. Each time duration included in a time stream for a channel is associated with an identifier identifying a piece of multimedia content that is presented via the channel during that time duration. In other words, the server device determines an identifier of multimedia content for each time duration included in a time stream associated with the multimedia content presented via each channel from the group of channels. Additionally, each time duration included in a time
{'application_number': '<application-reference appl-type="utility">\n<document-id>\n<country>US</country>\n<doc-number>15190026</doc-number>\n<date>20160622</date>\n</document-id>\n</application-reference>', 'publication_number': '<publication-reference>\n<document-id>\n<country>US</country>\n<doc-number>20160301972</doc-number>\n<kind>A1</kind>\n<date>20161013</date>\n</document-id>\n</publication-reference>', 'source_file': './application/2016/ipa161013.xml', 'source_data': 'USPTO-Application'}