1. A method for presenting interactive multimedia programs, the method comprising: configuring a computer system including at least one memory and at least one processor to perform the following steps: selecting a multimedia program for presentation, the multimedia program having a plurality of segments; classifying the multimedia program and the plurality of segments according to content; generating a plurality of additional content items based on the classification, wherein each of the plurality of additional content items is associated with at least one of the plurality of segments; generating a plurality of pre-defined queries for each segment among the plurality of segments based on a content of the segment and at least one speech recognition grammar based on the plurality of pre-defined queries, wherein the plurality of additional content items are retrievable responsive to the plurality of pre-defined queries; generating a data stream including the at least one speech recognition grammar and all of the plurality of additional content items and the plurality of pre-defined queries arranged according to an order of the plurality of segments, wherein a timing of the data stream is configured to coincide with a timing of the plurality of segments as they are presented to a user; receiving at least one spoken user query during presentation of the multimedia program; identifying one of the plurality of pre-defined queries corresponding to the received at least one spoken user query based on the at least one speech recognition grammar; retrieving one of the plurality of additional content items associated with a current segment among the plurality of segments and responsive to the identified pre-defined query; and presenting the retrieved additional content item without interfering with presentation of the multimedia program.
1. A method for presenting interactive multimedia programs, the method comprising: configuring a computer system including at least one memory and at least one processor to perform the following steps: selecting a multimedia program for presentation, the multimedia program having a plurality of segments; classifying the multimedia program and the plurality of segments according to content; generating a plurality of additional content items based on the classification, wherein each of the plurality of additional content items is associated with at least one of the plurality of segments; generating a plurality of pre-defined queries for each segment among the plurality of segments based on a content of the segment and at least one speech recognition grammar based on the plurality of pre-defined queries, wherein the plurality of additional content items are retrievable responsive to the plurality of pre-defined queries; generating a data stream including the at least one speech recognition grammar and all of the plurality of additional content items and the plurality of pre-defined queries arranged according to an order of the plurality of segments, wherein a timing of the data stream is configured to coincide with a timing of the plurality of segments as they are presented to a user; receiving at least one spoken user query during presentation of the multimedia program; identifying one of the plurality of pre-defined queries corresponding to the received at least one spoken user query based on the at least one speech recognition grammar; retrieving one of the plurality of additional content items associated with a current segment among the plurality of segments and responsive to the identified pre-defined query; and presenting the retrieved additional content item without interfering with presentation of the multimedia program. 3. The method of claim 1 , wherein the at least one speech recognition grammar comprises a plurality of sub-grammars associated with each of the plurality of segments.