The invention relates generally to capture, processing and/or broadcast of multi-performer audiovisual performances and, in particular, to techniques suitable for managing transmission latency for audiovisual content captured in the context of a near real-time audiovisual collaboration of multiple, geographically-distributed performers.
The installed base of mobile phones, personal media players, and portable computing devices, together with media streamers and television set-top boxes, grows in sheer number and computational power each day. Hyper-ubiquitous and deeply entrenched in the lifestyles of people around the world, many of these devices transcend cultural and economic barriers. Computationally, these computing devices offer speed and storage capabilities comparable to engineering workstation or workgroup computers from less than ten years ago, and typically include powerful media processors, rendering them suitable for real-time sound synthesis and other musical applications. Partly as a result, some portable handheld devices, such as iPhone®, iPad®, iPod Touch® and other iOS® or Android devices, as well as media application platforms and set-top box (STB) type devices such as AppleTV® devices, support audio and video processing quite capably, while at the same time providing platforms suitable for advanced user interfaces. Indeed, applications such as the Smule Ocarina™, Leaf Trombone®, I Am T-Pain™, AutoRap®, Smule (fka Sing! Karaoke™), Guitar! By Smule®, and Magic Piano® apps available from Smule, Inc. have shown that advanced digital acoustic techniques may be delivered using such devices in ways that provide compelling musical experiences.
Smule (fka Sing! Karaoke™) implementations have previously demonstrated accretion of vocal performances captured on a non-real-time basis with respect to each other using geographically-distributed, handheld devices, as well as implementations where more tightly-coupled coordination between portable handheld devices and a local media application platform (e.g., in-room) is supported, typically with short-range, negligible-latency communications on a same local- or personal-area network segment. Improved techniques and functional capabilities are desired to extend an intimate sense of “now” or “liveness” to collaborative vocal performances, where the performers are separated by more significant geographic distances and notwithstanding non-negligible communication latencies between devices.
As researchers seek to transition their innovations to commercial applications deployable to modern handheld devices and media application platforms within the real-world constraints imposed by processor, memory and other limited computational resources thereof and/or within communications bandwidth and transmission latency constraints typical of wireless and wide-area networks, significant practical challenges present. For example, while applications such as Smule (fka Sing! Karaoke™) have demonstrated the promise of post-performance audiovisual mixes to simulate vocal duets or collaborative vocal performances of larger numbers of performers, creating a sense of now and live collaboration has proved elusive without physical co-location.
Improved techniques and functional capabilities are desired, particularly relative to management of communication latencies and captured audiovisual content in such a way that a combined audiovisual performance nonetheless can be disseminated (e.g., broadcast) in a manner that presents to recipients, listeners and/or viewers as a live interactive collaboration of geographically-distributed performers. Audience involvement and participation constructs that provide an intimate sense of “now” or “liveness” are also desired.
It has been discovered that, despite practical limitations imposed by mobile device platforms and other media application execution environments, audiovisual performances, including vocal music, may be captured and coordinated with those of other users in ways that create compelling user and listener experiences. In some cases, the vocal performances of collaborating contributors are captured (together with performance synchronized video) in the context of a karaoke-style presentation of lyrics and in correspondence with audible renderings of a backing track. In some cases, vocals (and typically synchronized video) are captured as part of a live or unscripted performance with vocal interactions (e.g., a duet or dialog) between collaborating contributors. In either case, it is envisioned that non-negligible network communication latencies will exist between at least some of the collaborating contributors, particularly where those contributors are geographically separated. As a result, a technical challenge exists to manage latencies and the captured audiovisual content in such a way that a combined audiovisual performance nonetheless can be disseminated (e.g., broadcast) in a manner that presents to recipients, listeners and/or viewers as a live interactive collaboration.
In one technique for accomplishing this facsimile of live interactive performance collaboration, actual and non-negligible network communication latency is (in effect) masked in one direction between a guest and host performer and tolerated in the other direction. For example, a captured audiovisual performance of a guest performer on a “live show” internet broadcast of a host performer could include a guest+host duet sung in apparent real-time synchrony. In some cases, the guest could be a performer who has popularized a particular musical performance. In some cases, the guest could be an amateur vocalist given the opportunity to sing “live” (though remote) with the popular artist or group virtually “in studio” as (or with) the show's host. Notwithstanding a non-negligible network communication latency from guest-to-host involved in the conveyance of the guest's audiovisual contribution stream (perhaps 200-500 ms or more), the host performs in apparent synchrony with (though temporally lagged from, in an absolute sense) the guest and the apparently synchronously performed vocals are captured and mixed with the guest's contribution for broadcast or dissemination.
The result is an apparently live interactive performance (at least from the perspective of the host and the recipients, listeners and/or viewers of the disseminated or broadcast performance). Although the non-negligible network communication latency from guest-to-host is masked, it will be understood that latency exists and is tolerated in the host-to-guest direction. However, host-to-guest latency, while discernible (and perhaps quite noticeable) to the guest, need not be apparent in the apparently live broadcast or other dissemination. It has been discovered that lagged audible rendering of host vocals (or more generally, of the host's captured audiovisual performance) need not psychoacoustically interfere with the guest's performance.
Performance synchronized video may be captured and included in a combined audiovisual performance that constitutes the apparently live broadcast, wherein visuals may be based, at least in part, on time-varying, computationally-defined audio features extracted from (or computed over) captured vocal audio. In some cases or embodiments, these computationally-defined audio features are selective, over the course of a coordinated audiovisual mix, for particular synchronized video of one or more of the contributing vocalists (or prominence thereof).
Optionally, and in some cases or embodiments, vocal audio can be pitch-corrected in real-time at the guest performer's device (or more generally, at a portable computing device such as a mobile phone, personal digital assistant, laptop computer, notebook computer, pad-type computer or netbook, or on a content or media application server) in accord with pitch correction settings. In some cases, pitch correction settings code a particular key or scale for the vocal performance or for portions thereof. In some cases, pitch correction settings include a score-coded melody and/or harmony sequence supplied with, or for association with, the lyrics and backing tracks. Harmony notes or chords may be coded as explicit targets or relative to the score coded melody or even actual pitches sounded by a vocalist, if desired.
Using uploaded vocals captured at guest performer devices such as the aforementioned portable computing devices, a content server or service for the host can further mediate coordinated performances by manipulating and mixing the uploaded audiovisual content of multiple contributing vocalists for further broadcast or other dissemination. Depending on the goals and implementation of a particular system, in addition to video content, uploads may include pitch-corrected vocal performances (with or without harmonies), dry (i.e., uncorrected) vocals, and/or control tracks of user key and/or pitch correction selections, etc.
Synthesized harmonies and/or additional vocals (e.g., vocals captured from another vocalist at still other locations and optionally pitch-shifted to harmonize with other vocals) may also be included in the mix. Geocoding of captured vocal performances (or individual contributions to a combined performance) and/or listener feedback may facilitate animations or display artifacts in ways that are suggestive of a performance or endorsement emanating from a particular geographic locale on a user-manipulable globe. In this way, implementations of the described functionality can transform otherwise mundane mobile devices and living room or entertainment systems into social instruments that foster a unique sense of global connectivity, collaboration and community.
In some embodiments in accordance with the present invention(s), a collaboration method for a livestream broadcast of a coordinated audiovisual work of first and second performers captured at respective geographically-distributed, first and second devices includes: (1) receiving at the second device, a media encoding of an audiovisual performance mixed with a backing audio track and including (i) vocal audio captured at the first device from a first one of the performers and (ii) video that is performance synchronized with the captured first performer vocals; (2) at the second device, audibly rendering the received mixed audio performance and capturing thereagainst vocal audio from a second one of the performers; (3) mixing the captured second performer vocal audio with the received mixed audio performance to provide a broadcast audiovisual mix that includes the captured vocal audio of the first and second performers and the backing audio track without apparent temporal lag therebetween; and (4) supplying the audiovisual broadcast mix to a service platform configured to livestream the broadcast audiovisual mix to plural recipient devices constituting an audience.
In some cases or embodiments, the performance synchronized video included in the received media encoding is captured in connection with the vocal capture at the first device, the method further includes capturing, at the second device, video that is performance synchronized with the captured second performer vocals, and the audiovisual broadcast mix is an audiovisual mix of captured audio and video of at least the first and second performers.
In some embodiments, the method further includes capturing, at the second device, second performer video that is performance synchronized with the captured second performer vocals; and compositing the second performer video with video for the first performer in the supplied audiovisual broadcast mix. In some cases or embodiments, the first and second performer video compositing includes, for at least some portions of the supplied audiovisual broadcast mix, a computational blurring of image frames of first and second performer video at a visual boundary therebetween.
In some embodiments, the method further includes dynamically varying in a course of the audiovisual broadcast mix relative visual prominence of one or the other of the first and second performers. In some cases or embodiments, the dynamic varying is, at least partially, in correspondence with time varying vocal part codings in an audio score corresponding to and temporally synchronized with the backing audio track. In some cases or embodiments, the dynamic varying is, at least partially, based on evaluation of a computationally defined audio feature of either or both of the first and second performer vocals.
In some cases or embodiments, the first device is associated with the second device as a current livestream guest, and the second device operates as a current livestream host, the current livestream host controlling association and dissociation of particular devices from the audience as the current livestream guest. In some cases or embodiments, the current livestream host selects from a queue of requests from the audience to associate as the current livestream guest. In some cases or embodiments, the first device operates in a livestream guest role and the second device operates in a livestream host role, the method further comprising either or both of: the second device releasing the livestream host role for assumption by another device; and the second device passing the livestream host role to a particular device selected from a set comprising the first device and the audience.
In some embodiments, the method further includes accessing a machine readable encoding of musical structure that includes at least musical section boundaries coded for temporal alignment with the vocal audio captured at the first and second devices; and applying a first visual effect schedule to at least a portion of audiovisual broadcast mix, wherein the applied visual effect schedule encodes differing visual effects for differing musical structure elements of the first audiovisual performance encoding and provides visual effect transitions in temporal alignment with at least some of the coded musical section boundaries.
In some cases or embodiments, the differing visual effects encoded by the applied visual effect schedule include for a given element thereof, one or more of: a particle-based effect or lens flare; transitions between distinct source videos; animations or motion of a frame within a source video; vector graphics or images of patterns or textures; and color, saturation or contrast. In some cases or embodiments, the associated musical structure encodes musical sections of differing types; and the applied visual effect schedule defines differing visual effects for different ones of the encoded musical sections. In some cases or embodiments, the associated musical structure encodes events or transitions; and the applied visual effect schedule defines differing visual effects for different ones of the encoded events or transitions. In some cases or embodiments, the associated musical structure encodes group parts, and the applied visual effect schedule is temporally selective for particular performance synchronized video in correspondence with the encoded musical structure.
In some embodiments, the method is performed, at least in part, on a handheld mobile device communicatively coupled to a content server or service platform. In some embodiments, the method is embodied, at least in part, as a computer program product encoding of instructions executable on the second device as part of a cooperative system including a content server or service platform to which a plurality of geographically-distributed, network-connected, vocal capture devices, including the second device, are communicatively coupled.
In some embodiments in accordance with the present invention(s), a system for dissemination of an apparently live broadcast of a joint performance of geographically-distributed first and second performers includes first and second devices coupled by a communication network with non-negligible peer-to-peer latency for transmission of audiovisual content. The first device is communicatively coupled to supply to the second device an audiovisual performance mixed with a backing audio track and including (1) vocal audio of the first performer captured against the backing audio track and (2) video that is performance synchronized therewith. The second device is communicatively configured to receive a media encoding of the mixed audiovisual performance and to audibly render at least audio portions of the mixed audiovisual performance, to capture thereagainst vocal audio of the second performer, and to mix the captured second performer vocal audio with the received mixed audiovisual performance for transmission as the apparently live broadcast.
In some cases or embodiments, the second device is further configured to capture second performer video that is performance synchronized with the captured second performer vocals and to composite the second performer video with video for the first performer in the supplied audiovisual broadcast mix. In some cases or embodiments, the first and second performer video compositing includes, for at least some portions of the supplied audiovisual broadcast mix, a computational blurring of image frames of first and second performer video at a visual boundary therebetween.
In some cases or embodiments, the first and second performer video compositing includes dynamically varying in a course of the audiovisual broadcast mix relative visual prominence of one or the other of the first and second performers. In some cases or embodiments, the dynamic varying is, at least partially, in correspondence with time varying vocal part codings in an audio score corresponding to and temporally synchronized with the backing audio track. In some cases or embodiments, the dynamic varying is, at least partially, based on evaluation of a computationally defined audio feature of either or both of the first and second performer vocals.
In some cases or embodiments, the first device is associated with the second device as a current livestream guest, and the second device operates as a current livestream host, the current livestream host controlling association and dissociation of particular devices from the audience as the current livestream guest. In some cases or embodiments, the current livestream host selects from a queue of requests from the audience to associate as the current livestream guest.
In some embodiments, the system further includes a video compositor that accesses a machine readable encoding of musical structure including at least musical section boundaries coded for temporal alignment with the vocal audio captured at the first and second devices and that applies a first visual effect schedule to at least a portion of audiovisual broadcast mix, wherein the applied visual effect schedule encodes differing visual effects for differing musical structure elements of the first audiovisual performance encoding and provides visual effect transitions in temporal alignment with at least some of the coded musical section boundaries. In some cases or embodiments, the video compositor is hosted either on the second device or on a content server or service platform through which the apparently live performance is supplied.
In some cases or embodiments, as part of a user interface visual on either or both of the first and second devices, for a current song selection, a different vocal part selection is presented for each of the performers; and responsive to, and in correspondence with, gestures by either or both of the first and second performers at the respective geographically-distributed devices, the vocal part selections are updated, wherein assignment of a particular vocal part selection to the respective first or second performers is changeable until one or the other of the first and second performers gestures a start of vocal capture on a respective geographically-distributed device, whereupon a then-current assignment of particular vocal part selections to the respective first or second performers is fixed for duration of capture of the coordinated multi-vocal performance.
In some embodiments in accordance with the present invention(s), a user interface method for social media includes (1) as part of a user interface visual on a touchscreen display of a client device, presenting on the touchscreen display, live video captured using a camera of the client device; (2) responsive to a first touchscreen gesture by a user of the client device, initiating capture of a snippet of the live video and presenting, as part of the user interface visual, a progress indication in correspondence with an accreting capture of the snippet; and (3) responsive to a second touchscreen gesture by the user of the client device, transmitting the captured snippet to a network-coupled service platform as a posting in multiuser social media thread.
In some cases or embodiments, the method further includes presenting the multiuser social media thread on the touchscreen display, the presented multiuser social media thread including the captured snippet together with posted temporally-ordered content from other users received via the network-coupled service platform, wherein the posted content from at least one other user includes one or more of text and captured snippet of video from the at least one other user.
In some cases or embodiments, the captured snippet is a fixed-length snippet, and the method further includes visually updating the progress indication in correspondence portion of the fixed-length snippet captured. In some cases or embodiments, the first touchscreen gesture is a maintained contact, by the user, with a first visually presented feature on the touchscreen display, and wherein the second touchscreen gesture includes release of the maintained contact. In some cases or embodiments, the first touchscreen gesture is a first tap-type contact, by the user, with a first visually presented feature on the touchscreen display, and wherein the second touchscreen gesture is a second tap-type contact following the first tap-type contact on the touchscreen display. In some cases or embodiments, the method further includes presenting the multiuser social media thread on the touchscreen display in correspondence with a livestreamed audiovisual broadcast mix.
In some embodiments in accordance with the present invention(s), a method for capture of at least a portion of a coordinated multi-vocal performance of first and second performers at respective first and second geographically-distributed devices includes (1) as part of a user interface visual on either or both of the first and second devices, presenting for a current song selection, a different vocal part selection for each of the performers; and (2) responsive to, and in correspondence with, gestures by either or both of the first and second performers at the respective geographically-distributed devices, updating the vocal part selections, wherein assignment of a particular vocal part selection to the respective first or second performers is changeable until one or the other of the first and second performers gestures a start of vocal capture on a respective geographically-distributed device, whereupon a then-current assignment of particular vocal part selections to the respective first or second performers is fixed for duration of capture of the coordinated multi-vocal performance.
In some cases or embodiments, the method further includes updating the vocal part selections at the second device in correspondence with a gestured selection communicated from the first device; and supplying the first device with updates to the vocal part selections in correspondence with a gestured selection at the second device. In some cases or embodiments, the method further includes changing the current song selection and, in correspondence therewith, updating on either or both of the first and second devices the user interface visual. In some cases or embodiments, the change in current song selection is triggered by one or the other of the first and second performers on a respective one of the first and second devices.
In some cases or embodiments, the method further includes triggering the change in current song selection based on a periodic or recurring event. In some cases or embodiments, the change in current song selection selects from a library of song selections based on one or more of coded interests and performance history of either or both of the first and second performers.
In some cases or embodiments, beginning with the start of vocal capture, the method further includes receiving at the second device, a media encoding of a mixed audio performance (i) including vocal audio captured at the first device from a first one of the performers and (ii) mixed with a backing audio track for the current song selection; at the second device, audibly rendering the received mixed audio performance and capturing thereagainst vocal audio from a second one of the performers; and mixing the captured second performer vocal audio with the received mixed audio performance to provide a broadcast mix that includes the captured vocal audio of the first and second performers and the backing audio track without apparent temporal lag therebetween.
In some cases or embodiments, the method further includes, at the second device, visually presenting in correspondence with the audible rendering, lyrics and score-coded note targets for the current song selection, wherein the visually presented lyrics and note targets correspond the assignment of a particular vocal part at the start of vocal capture. In some cases or embodiments, the received media encoding includes video that is performance synchronized with the captured first performer vocals, wherein the method further includes capturing, at the host device, video that is performance synchronized with the captured second performer vocals, and wherein the broadcast mix is an audiovisual mix of captured audio and video of at least the first and second performers.
In some cases or embodiments, the method further includes capturing, at the host device, second performer video that is performance synchronized with the captured second performer vocals; and compositing the second performer video with video for the first performer in the supplied audiovisual broadcast mix. In some cases or embodiments, the method further includes supplying the broadcast mix to a service platform configured to livestream the broadcast mix to plural recipient devices constituting an audience.
The present invention(s) are illustrated by way of examples and not limitation with reference to the accompanying figures, in which like references generally indicate similar elements or features.
Skilled artisans will appreciate that elements or features in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions or prominence of some of the illustrated elements or features may be exaggerated relative to other elements or features in an effort to help to improve understanding of embodiments of the present invention. Likewise, a multiplicity of data and control flows (including constituent signals or encodings) will be understood consistent with the descriptions notwithstanding illustration in the drawings of a single flow for simplicity or avoid complexity that might otherwise obscure description of the inventive concepts.
Techniques have been developed to facilitate the livestreaming of group audiovisual performances. Audiovisual performances including vocal music are captured and coordinated with performances of other users in ways that can create compelling user and listener experiences. For example, in some cases or embodiments, duets with a host performer may be supported in a sing-with-the-artist style audiovisual livestream in which aspiring vocalists request or queue particular songs for a live radio show entertainment format. The developed techniques provide a communications latency-tolerant mechanism for synchronizing vocal performances captured at geographically-separated devices (e.g., at globally-distributed, but network-connected mobile phones or tablets or at audiovisual capture devices geographically separated from a live studio).
While audio-only embodiments are certainly contemplated, it is envisioned that livestream content will typically include performance-synchronized video captured in connection with vocals. In addition, while network-connected mobile phones are illustrated as audiovisual capture devices, it will be appreciated based on the description herein that audiovisual capture and viewing devices may include suitably-configured computers, smart TVs and/or living room style set-top box configurations, and even intelligent virtual assistance devices with audio and/or audiovisual capture devices or capabilities. Finally, while applications to vocal music are described in detail, it will be appreciated based on the description herein that audio or audiovisual capture applications need not be limited to vocal duets, but may be adapted to other forms of group performance in which one or more successive performances are accreted to a prior performance to produce a livestream.
In some cases, the vocal performances of collaborating contributors are captured (together with performance synchronized video) in the context of a karaoke-style presentation of lyrics and in correspondence with audible renderings of a backing track. In some cases, vocals (and typically synchronized video) are captured as part of a live or unscripted performance with vocal interactions (e.g., a duet or dialog) between collaborating contributors. In each case, it is envisioned that non-negligible network communication latencies will exist between at least some of the collaborating contributors, particularly where those contributors are geographically separated. As a result, a technical challenge exists to manage latencies and the captured audiovisual content in such a way that a combined audio visual performance nonetheless can be disseminated (e.g., broadcast) in a manner that presents to recipients, listeners and/or viewers as a live interactive collaboration.
In one technique for accomplishing this facsimile of live interactive performance collaboration, actual and non-negligible network communication latency is (in effect) masked in one direction between a guest and host performer and tolerated in the other direction. For example, a captured audiovisual performance of a guest performer on a “live show” Internet broadcast of a host performer could include a guest+host duet sung in apparent real-time synchrony. In some cases, the host could be a performer who has popularized a particular musical performance. In some cases, the guest could be an amateur vocalist given the opportunity to sing “live” (though remote) with the popular artist or group “in studio” as (or with) the show's host. Notwithstanding a non-negligible network communication delay from guest-to-host (perhaps 200-500 ms or more) to convey the guest's audiovisual contribution, the host performs in apparent synchrony with (though temporally lagged from, in an absolute sense) the guest and the apparently synchronously performed vocals are captured and mixed with the guest's contribution for broadcast or dissemination.
The result is an apparently live interactive performance (at least from the perspective of the host and the recipients, listeners and/or viewers of the disseminated or broadcast performance). Although the non-negligible network communication latency from guest-to-host is masked, it will be understood that latency exists and is tolerated in the host-to-guest direction. However, host-to-guest latency, while discernible (and perhaps quite noticeable) to the guest, need not be apparent in the apparently live broadcast or other dissemination. It has been discovered that lagged audible rendering of host vocals (or more generally, of the host's captured audiovisual performance) need not psychoacoustically interfere with the guest's performance.
Although much of the description herein presumes, for purposes of illustration, a fixed host performer on a particular host device, it will be appreciated based on the description herein that some embodiments in accordance with the present invention(s) may provide host/guest control logic that allows a host to “pass the mic” such that a new user (in some cases a user selected by the current host and other cases, a user who “picks up the mic” after the current host “drops the mic”) may take over as host. Likewise, it will be appreciated based on the description herein that some embodiments in accordance with the present invention(s) may provide host/guest control logic that queues guests (and/or aspiring hosts) and automatically assigns queued users to appropriate roles.
In some cases or embodiments, vocal audio of individual host- and guest-role performers is captured together with performance synchronized video in a karaoke-style user interface framework and coordinated with audiovisual contributions of the other users to form duet-style or glee club-style group audiovisual performances. For example, the vocal performances of individual users may be captured (together with performance synchronized video) on mobile devices, television-type display and/or set-top box equipment in the context of karaoke-style presentations of lyrics in correspondence with audible renderings of a backing track. In some cases or embodiments, score-coded continuous pitch correction may be provided as well as user selectable audio and/or video effects. Consistent with the foregoing, but without limitation as to any particular embodiment claimed, karaoke-style vocal performance capture using portable handheld devices provides illustrative context.
Although embodiments of the present invention are not limited thereto, pitch-corrected, karaoke-style, vocal capture using mobile phone-type and/or television-type audiovisual equipment provides a useful descriptive context. For example, in some embodiments such as illustrated in
In the illustration of
Content that is mixed to form group audiovisual performance mix 111 is captured, in the illustrated configuration, in the context of karaoke-style performance capture wherein lyrics 102, optional pitch cues 105 and, typically, a backing track 107 are supplied from content server 110 to either or both of current guest device 101A and current host device 101B. A current host (on current host device 101B) typically exercises ultimate control over the live stream, e.g., by selecting a particular user (or users) from the audience to act as the current guest(s), by selecting a particular song from a request queue (and/or vocal parts thereof for particular users), and/or by starting, stopping or pausing the group AV performance. Once the current host selects or approves a guest and/or song, the guest user may (in some embodiments) start/stop/pause the roll of backing track 107A for local audible rendering and otherwise control the content of guest mix 106 (backing track roll mixed with captured guest audiovisual content) supplied to current host device 101B. Roll of lyrics 102A and optional pitch cues 105A at current guest device 101A is in temporal correspondence with the backing track 107A, and is likewise subject start/stop/pause control by the current guest. In some cases or situations, backing audio and/or video may be rendered from a media store such as an iTunes™ library resident or accessible from a handheld, set-top box, etc.
Typically, song requests 132 are audience-sourced and conveyed by signaling paths to content selection and guest queue control logic 112 of content server 110. Host controls 131 and guest controls 133 are illustrated as bi-directional signaling paths. Other queuing and control logic configurations consistent with the operations described, including host or guest controlled queueing and/or song selection, will be appreciated based on the present disclosure.
In the illustrated configuration of
It will be understood that temporal lag in the peer-to-peer communications channel between current guest device 101A and current host device 101B affects both guest mix 106 and communications in the opposing direction (e.g., host mic 103C signal encodings). Any of a variety of communications channels may be used to convey audiovisual signals and controls between current guest device 101A and current host device 101B, as well as between the guest and host devices 101A, 101B and content server 110 and between audience devices 120A, 120B . . . 120N and content server 110. For example, respective telecommunications carrier wireless facilities and/or wireless local area networks and respective wide-area network gateways (not specifically shown) may provide communications to and from devices 101A, 101B, 120A, 120B . . . 120N. Based on the description herein, persons of skill in the art will recognize that any of a variety of data communications facilities, including 802.11 Wi-Fi, Bluetooth™, 4G-LTE, 5G, or other communications, wireless, wired data networks, wired or wireless audiovisual interconnects such as in accord with HDMI, AVI, Wi-Di standards or facilities may employed, individually or in combination to facilitate communications and/or audiovisual rendering described herein.
User vocals 103A and 103B are captured at respective handhelds 101A, 101B, and may be optionally pitch-corrected continuously and in real-time and audibly rendered mixed with the locally-appropriate backing track (e.g., backing track 107A at current guest device 101A and guest mix 106 at current host device 101B) to provide the user with an improved tonal quality rendition of his/her own vocal performance. Pitch correction is typically based on score-coded note sets or cues (e.g., the pitch and harmony cues 105A, 105B visually displayed at current guest device 101A and at current host device 101B, respectively), which provide continuous pitch-correction algorithms executing on the respective device with performance-synchronized sequences of target notes in a current key or scale. In addition to performance-synchronized melody targets, score-coded harmony note sequences (or sets) provide pitch-shifting algorithms with additional targets (typically coded as offsets relative to a lead melody note track and typically scored only for selected portions thereof) for pitch-shifting to harmony versions of the user's own captured vocals. In some cases, pitch correction settings may be characteristic of a particular artist such as the artist that performed vocals associated with the particular backing track.
In general, lyrics, melody and harmony track note sets and related timing and control information may be encapsulated in an appropriate container or object (e.g., in a Musical Instrument Digital Interface, MIDI, or Java Script Object Notation, json, type format) for supply together with the backing track(s). Using such information, devices 101A and 1018 (as well as associated audiovisual displays and/or set-top box equipment, not specifically shown) may display lyrics and even visual cues related to target notes, harmonies and currently detected vocal pitch in correspondence with an audible performance of the backing track(s) so as to facilitate a karaoke-style vocal performance by a user. Thus, if an aspiring vocalist selects “When I Was Your Man” as popularized by Bruno Mars, your_man.json and your_man.m4a may be downloaded from the content server (if not already available or cached based on prior download) and, in turn, used to provide background music, synchronized lyrics and, in some situations or embodiments, score-coded note tracks for continuous, real-time pitch-correction while the user sings. Optionally, at least for certain embodiments or genres, harmony note tracks may be score coded for harmony shifts to captured vocals. Typically, a captured pitch-corrected (possibly harmonized) vocal performance together with performance synchronized video is saved locally, on the handheld device or set-top box, as one or more audiovisual files and is subsequently compressed and encoded for communication (e.g., as guest mix 106 or group audiovisual performance mix 111 or constituent encodings thereof) to content server 110 as an MPEG-4 container file. MPEG-4 is one suitable standard for the coded representation and transmission of digital multimedia content for the Internet, mobile networks and advanced broadcast applications. Other suitable codecs, compression techniques, coding formats and/or containers may be employed if desired.
As will be appreciated by persons of skill in the art having benefit of the present disclosure, performances of multiple vocalists (including performance synchronized video) may be accreted and combined, such as to form a duet-style performance, glee club, or vocal jam session. In some embodiments of the present invention, social network constructs may at least partially supplant or inform host control of the pairings of geographically-distributed vocalists and/or formation of geographically-distributed virtual glee clubs. For example, relative to
Where supply and use of backing tracks is illustrated and described herein, it will be understood, that vocals captured, pitch-corrected (and possibly, though not necessarily, harmonized) may themselves be mixed (as with guest mix 106) to produce a “backing track” used to motivate, guide or frame subsequent vocal capture. Furthermore, additional vocalists may be invited to sing a particular part (e.g., tenor, part B in duet, etc.) or simply to sing, the subsequent vocal capture device (e.g., current host device 101B in the configuration of
Based on the description herein, persons of skill in the art will appreciate a variety of host-guest synchronization methods that tolerate non-negligible temporal lag in the peer-to-peer communications channel between guest device 101A and host device 101B. As illustrated in the context of
More specifically,
A key to masking actual latencies is to include track 107A in the audio mix suppled from guest device 101A and to the broadcaster's device, host device 101B, This audio flow ensures that the guest's voice and backing track is always synced from the broadcaster's point of view (based on audible rendering at host speaker or headset 240B. The guest may still perceive that the broadcaster is singing slightly out of sync if the network delay is significant. However, as long as the guest focuses on singing in time with the backing track instead of the host's slightly delayed voice, the multi-vocal mix of host vocals with guest vocals and the backing track is in sync when livestreamed to an audience.
This limited perception of delay is accomplished by playing the backing track locally on both devices, and working to keep them in sync in real-time. The guest device 101A sends periodic timing messages to the host containing the current position in the song, and the host device 101B adjusts the playback position of the song accordingly.
We have experimented with two different approaches to keeping the backing tracks in sync on the two devices (guest and host devices 101A and 101B):
For “shared latency” configurations, method 2 has proven more stable than method 1. As an optimization, to avoid excessive timing adjustments, the host only updates the backing track playback position if we are currently more than 50 ms off from the guest's backing track playback position.
As described herein, though video signal/data components may not be specifically illustrated in all drawings, a person of skill in the art having benefit of the present disclosure will understand that performance synchronized video may also be conveyed in audiovisual data encodings that include the more explicitly illustrated audio and in flows analogous to those more explicitly illustrated for audio signal/data components. Just as audio signals are captured, conveyed and mixed, video captured at respective devices is composited in correspondence with the audio with which it is performance synchronized as a temporal alignment and distributed performer synchronization baseline. Video compositing is typically performed at the host device, but in some cases may be performed using facilities of a content server or service platform (recall
Both pitch correction and added harmonies are chosen to correspond to a score 207, which in the illustrated configuration, is wirelessly communicated (261) to the device(s) (e.g., from content server 110 to guest device 101A or via guest device 101A to host device 101B, recall
In some embodiments of techniques described herein, the note (in a current scale or key) that is closest to that sounded by the user/vocalist is determined based on score 207. While this closest note may typically be a main pitch corresponding to the score-coded vocal melody, it need not be. Indeed, in some cases, the user/vocalist may intend to sing harmony and the sounded notes may more closely approximate a harmony track.
Audiovisual Capture at Handheld Device
Although performance synchronized video capture need not be supported in all embodiments, handheld device 101 (e.g., current guest device 101A or current host device 101B, recall
Based on the description herein, persons of ordinary skill in the art will appreciate suitable allocations of signal processing techniques (sampling, filtering, decimation, etc.) and data representations to functional blocks (e.g., decoder(s) 352, digital-to-analog (D/A) converter 351, capture 353, 353A and encoder 355) of a software executable to provide signal processing flows 350 illustrated in
As will be appreciated by persons of ordinary skill in the art, pitch-detection and pitch-correction have a rich technological history in the music and voice coding arts. Indeed, a wide variety of feature picking, time-domain and even frequency-domain techniques have been employed in the art and may be employed in some embodiments in accord with the present invention. With this in mind, and recognizing that multi-vocalist synchronization techniques in accordance with the present invention(s) are generally independent of any particular pitch-detection or pitch-correction technology, the present description does not seek to exhaustively inventory the wide variety of signal processing techniques that may be suitable in various design or implementations in accord with the present description. Instead, we simply note that in some embodiments in accordance with the present inventions, pitch-detection methods calculate an average magnitude difference function (AMDF) and execute logic to pick a peak that corresponds to an estimate of the pitch period. Building on such estimates, pitch shift overlap add (PSOLA) techniques are used to facilitate resampling of a waveform to produce a pitch-shifted variant while reducing aperiodic effects of a splice. Specific implementations based on AMDF/PSOLA techniques are described in greater detail in commonly-owned, U.S. Pat. No. 8,983,829, entitled “COORDINATING AND MIXING VOCALS CAPTURED FROM GEOGRAPHICALLY DISTRIBUTED PERFORMERS,” and naming Cook, Lazier, Lieber, and Kirk as inventors.
Summarizing briefly, mobile device 400 includes a display 402 that can be sensitive to haptic and/or tactile contact with a user. Touch-sensitive display 402 can support multi-touch features, processing multiple simultaneous touch points, including processing data related to the pressure, degree and/or position of each touch point. Such processing facilitates gestures and interactions with multiple fingers and other interactions. Of course, other touch-sensitive display technologies can also be used, e.g., a display in which contact is made using a stylus or other pointing device.
Typically, mobile device 400 presents a graphical user interface on the touch-sensitive display 402, providing the user access to various system objects and for conveying information. In some implementations, the graphical user interface can include one or more display objects 404, 406. In the example shown, the display objects 404, 406, are graphic representations of system objects. Examples of system objects include device functions, applications, windows, files, alerts, events, or other identifiable system objects. In some embodiments of the present invention, applications, when executed, provide at least some of the digital acoustic functionality described herein.
Typically, the mobile device 400 supports network connectivity including, for example, both mobile radio and wireless internetworking functionality to enable the user to travel with the mobile device 400 and its associated network-enabled functions. In some cases, the mobile device 400 can interact with other devices in the vicinity (e.g., via Wi-Fi, Bluetooth, etc.). For example, mobile device 400 can be configured to interact with peers or a base station for one or more devices. As such, mobile device 400 may grant or deny network access to other wireless devices.
Mobile device 400 includes a variety of input/output (I/O) devices, sensors and transducers. For example, a speaker 460 and a microphone 462 are typically included to facilitate audio, such as the capture of vocal performances and audible rendering of backing tracks and mixed pitch-corrected vocal performances as described elsewhere herein. In some embodiments of the present invention, speaker 460 and microphone 662 may provide appropriate transducers for techniques described herein. An external speaker port 464 can be included to facilitate hands-free voice functionalities, such as speaker phone functions. An audio jack 466 can also be included for use of headphones and/or a microphone. In some embodiments, an external speaker and/or microphone may be used as a transducer for the techniques described herein.
Other sensors can also be used or provided. A proximity sensor 468 can be included to facilitate the detection of user positioning of mobile device 400. In some implementations, an ambient light sensor 470 can be utilized to facilitate adjusting brightness of the touch-sensitive display 402. An accelerometer 472 can be utilized to detect movement of mobile device 400, as indicated by the directional arrow 474. Accordingly, display objects and/or media can be presented according to a detected orientation, e.g., portrait or landscape. In some implementations, mobile device 400 may include circuitry and sensors for supporting a location determining capability, such as that provided by the global positioning system (GPS) or other positioning systems (e.g., systems using Wi-Fi access points, television signals, cellular grids, Uniform Resource Locators (URLs)) to facilitate geocodings described herein. Mobile device 400 also includes a camera lens and imaging sensor 480. In some implementations, instances of a camera lens and sensor 480 are located on front and back surfaces of the mobile device 400. The cameras allow capture still images and/or video for association with captured pitch-corrected vocals.
Mobile device 400 can also include one or more wireless communication subsystems, such as an 802.11b/g/n/ac communication device, and/or a Bluetooth™ communication device 488. Other communication protocols can also be supported, including other 802.x communication protocols (e.g., WiMax, 3G), fourth generation protocols and modulations (4G-LTE) and beyond (e.g., 5G), code division multiple access (CDMA), global system for mobile communications (GSM), Enhanced Data GSM Environment (EDGE), etc. A port device 490, e.g., a Universal Serial Bus (USB) port, or a docking port, or some other wired port connection, can be included and used to establish a wired connection to other computing devices, such as other communication devices 400, network access devices, a personal computer, a printer, or other processing devices capable of receiving and/or transmitting data. Port device 490 may also allow mobile device 400 to synchronize with a host device using one or more protocols, such as, for example, the TCP/IP, HTTP, UDP and any other known protocol.
While the invention(s) is (are) described with reference to various embodiments, it will be understood that these embodiments are illustrative and that the scope of the invention(s) is not limited to them. Many variations, modifications, additions, and improvements are possible. For example, while pitch correction vocal performances captured in accord with a karaoke-style interface have been described, other variations will be appreciated. Furthermore, while certain illustrative signal processing techniques have been described in the context of certain illustrative applications, persons of ordinary skill in the art will recognize that it is straightforward to modify the described techniques to accommodate other suitable signal processing techniques and effects.
In some embodiments in accordance with the present invention(s), an audio collaboration method is provided for broadcast of a joint performance of geographically distributed performers with non-negligible peer-to-peer communications latency between host and guest devices. The method includes (1) receiving at the host device, operating as a local peer, a media encoding of a mixed audio performance (i) including vocal audio captured at the guest device, communicatively coupled as a remote peer, from a first one of the performers and (ii) mixed with a backing audio track; (2) at the host device, audibly rendering the received mixed audio performance and capturing thereagainst vocal audio from a second one of the performers; and (3) mixing the captured second performer vocal audio with the received mixed audio performance for transmission to an audience as the broadcast, wherein the broadcast mix includes vocal audio of the first and second performers and the backing audio track with negligible temporal lag therebetween.
In some embodiments, the method further includes transmitting to plural recipients, over a wide-area network, the broadcast mix as a live stream, the plural recipients constituting the audience. In some embodiments, the method further includes the second performer, at the host device, selectively joining the first performer to the joint performance.
In some cases or embodiments, the joined first performer is selected from the audience and, at least for duration of the joint performance, is decoupled from live stream transmission of the broadcast to the audience. In some cases or embodiments, the transmitted live stream broadcast to the audience is temporally lagged by at least several seconds relative to the first performer vocal audio capture.
In some embodiments, the method further includes returning the first performer to the audience and, coincident therewith, recoupling to the live stream transmission. In some embodiments, the method further includes selectively joining a third performer as a new remote peer and thereafter (1) receiving at the host device a second media encoding (i) including vocal audio captured from the third performer at a new guest device, communicatively coupled as the new remote peer, and (ii) mixed with a second backing audio track; (2) at the host device, audibly rendering the second media encoding and capturing thereagainst additional vocal audio from the second performer; and (3) mixing the captured additional vocal audio with the received second media encoding for transmission to the audience as a continuation of the broadcast, wherein the broadcast mix includes vocal audio of the second and third performers and the second backing audio track with negligible temporal lag therebetween.
In some embodiments, the method further includes supplying the second performer captured vocal audio to the guest device remote peer for audible rendering at the guest device with at least some guest-side temporal lag relative to the capture of vocal audio from the first performer. In some cases or embodiments, the apparent guest-side temporal lag is at least about 40-1200 ms.
In some cases or embodiments, a substantial entirety of the non-negligible peer-to-peer communications latency is apparent in the guest-side temporal lag. In some cases or embodiments, essentially none of the non-negligible peer-to-peer communications latency is apparent at the host device or in the broadcast mix of first and second performers. In some cases or embodiments, the non-negligible peer-to-peer communications latency includes input signal to send delay, network delay, jitter buffer delay and buffer and output delay. The non-negligible peer-to-peer communications latency may vary and, in some cases, can be psychoacoustically significant. In some cases or embodiments, the non-negligible peer-to-peer communications latency is at least about 30-100 ms. In some cases or embodiments, the non-negligible peer-to-peer communications latency is at least about 100-250 ms. In some cases or embodiments, the non-negligible peer-to-peer communications latency is about 100-600 ms.
In some cases or embodiments, receipt at the host device of the mixed audio performance and supply of the second performer captured vocal audio to the guest device are via a peer-to-peer audiovisual connection using a Web Real-Time Communications (WebRTC)-type framework. In some embodiments, the method further includes supplying the broadcast mix of vocal audio of the first and second performers over a wide-area network. In some cases or embodiments, supply of the broadcast mix is via a real-time messaging protocol (RTMP)-type audiovisual streaming protocol. In some cases or embodiments, at least the guest device constitutes a mobile handheld phone or media player.
In some embodiments, the method further includes pitch correcting second performer vocals at the host device in accord with a vocal score that encodes a sequence of notes for a vocal melody. In some embodiments, the method further includes pitch correcting at the host device second performer vocals in accord with a vocal score that encodes at least a first set of harmony notes for at least some portions of the vocal melody.
In some cases or embodiments, the first performer vocals included in the received mixed performance are pitch corrected vocals. In some cases or embodiments, one of the first and second performer vocals is pitch corrected in accord with a vocal score that encodes a sequence of notes for a vocal melody, and the other of the first and second performer vocals in accord with a vocal score that encodes at least a first set of harmony notes for at least some portions of the vocal melody.
In some cases or embodiments, either or both of the first and second performer vocals are computationally processed, prior to inclusion in the broadcast, to apply one or more audio effects. In some cases or embodiments, the applied audio effects include one or more of a reverberation effect, digital filtering, spectral equalization, non-linear distortion, audio compression, pitch correction or pitch shifting, channel-relative gain and/or phase delay to manipulate apparent placement of the first or second performer within a stereo field.
In some cases or embodiments, the received media encoding includes video that is performance synchronized with the captured first performer vocals, the method further includes capturing, at the host device, video that is performance synchronized with the captured second performer vocals, and the broadcast mix is an audiovisual mix of captured audio and video of at least the first and second performers.
In some embodiments, the method further includes dynamically varying in the broadcast mix at least visual prominence of one or the other of the first and second performers based on evaluation of a computationally audio defined feature of either or both of the first and second performer vocals. In some embodiments, the method further includes applying one or more video effects to the broadcast mix based, at least in part, on a computationally defined audio or video feature of either or both of the first and second performer audio or video.
In some embodiments, the method further includes receiving at the host device, chat messages from members of the audience. In some embodiments, the method further includes incorporating at least some content of the chat messages as part of video of the broadcast mix. In some embodiments, the method further includes receiving at the host device, one or more of chat messages, emojis, animated GIFs and voting indications from members of the audience. In some embodiments, the method further includes incorporating a visual presentation of at least some of the received chat messages content, emojis, animated GIFs or voting indications as part of the broadcast mix.
In some embodiments, the method further includes queuing playlist requests from one or more recipients of the broadcast mix. In some embodiments, responsive to a selection by the second performer at the host device of a particular one of the queued playlist requests, the method further includes retrieving one or more of the backing audio track, lyrics, and score-coded note targets from a content repository. In some embodiments, responsive to a selection by the second performer at the host device of a particular one of the queued playlist requests, the method further includes demand supplying the communicatively-coupled guest device with one or more of the backing audio track, lyrics and score-coded note targets.
In some cases or embodiments, the broadcast mix is presented as a vocal duet. In some embodiments, the method further includes receiving at the host device a media encoding of at least another mixed audio performance (i) that constitutes vocal audio captured at another guest device, communicatively coupled as another remote peer, from a third performer and (ii) is temporally aligned or alignable with the backing audio track. In some cases or embodiments, audio of the live stream includes both conversational-type audio portions captured in correspondence with interactive conversation between the first and second performers and vocal performance audio portions captured in correspondence with vocal musical performance of either or both of the first and second performers against the backing audio track.
In some embodiments, the method further includes selecting a highlights clips set of segments from the live stream, wherein highlights clips set of segments generally include the vocal musical performance portions and generally exclude the conversational-type audio portions. In some embodiments, the method further includes selecting a highlight clips set of segments from the live stream based on one or more of audience reactions to the live stream, song structure, and audio power. In some embodiments, the method further includes selecting a highlight clips set of segments based on correspondence of particular audio portions of the live stream with verse, chorus or musical section boundaries, whether score-coded or computationally determined by audio feature analysis. In some embodiments responsive to selection by a user, the method further includes saving or sharing an audiovisual encoding of one or more of the highlight clips.
In some embodiments, the method further includes receiving from the guest device one or more lyrics synchronization markers. The lyrics synchronization markers convey to the host device a temporal alignment of lyrics visually presented at the guest device with the vocal audio captured the guest device. In some embodiments, the method further includes visually presenting the lyrics at the host device, wherein the visual presentation of the lyrics is temporally aligned with the media encoding of the mixed audio performance received from the guest device based on the received one or more lyrics synchronization markers. In some cases or embodiments, the received one or more lyrics synchronization markers coordinate progression of the lyrics presented on the host device with a pause or other temporal control at the guest device.
In some embodiments in accordance with the present invention(s), a system for dissemination of an apparently live broadcast of a joint performance of geographically-distributed first and second performers includes host and guest devices. The host and guest devices are coupled as local and remote peers by communication network with non-negligible peer-to-peer latency for transmissions of audiovisual content. The host device is communicatively coupled as the local peer to receive a media encoding of a mixed audio performance constituting vocal audio captured at the guest device, and the guest device is communicatively coupled as the remote peer to supply the media encoding captured from a first one of the performers and mixed with a backing audio track. The host device is configured to audibly render the received mixed audio performance, to capture thereagainst a vocal audio from a second one of the performers, and to mix the captured second performer vocal audio with the received mixed audio performance for transmission as the apparently live broadcast.
In some embodiments in accordance with the present invention(s), an audio collaboration method for a livestream broadcast of a coordinated audiovisual work of first and second performers captured at respective geographically-distributed, first and second devices includes: (a) receiving at the second device, a media encoding of a mixed audio performance (i) including vocal audio captured at the first device from a first one of the performers and (ii) mixed with a backing audio track; (b) at the second device, audibly rendering the received mixed audio performance and capturing thereagainst vocal audio from a second one of the performers; (c) mixing the captured second performer vocal audio with the received mixed audio performance to provide a broadcast mix that includes the captured vocal audio of the first and second performers and the backing audio track without apparent temporal lag therebetween; and (d) supplying the broadcast mix to a service platform configured to livestream the broadcast mix to plural recipient devices constituting an audience.
In some cases or embodiments, the first device is associated with the second device as a current livestream guest, and the second device operates as a current livestream host. The current livestream host controls association and dissociation of particular devices from the audience as the current livestream guest. In some cases or embodiments, the current livestream host selects from a queue of requests from the audience to associate as the current livestream guest.
In some cases or embodiments, the first device operates in a livestream guest role and the second device operates in a livestream host role. The method further includes either or both of: the second device releasing the livestream host role for assumption by another device; and the second device passing the livestream host role to a particular device selected from a set comprising the first device and the audience.
Embodiments in accordance with the present invention may take the form of, and/or be provided as, a computer program product encoded in a machine-readable medium as instruction sequences and other functional constructs of software, which may in turn be executed in a computational system (such as a iPhone handheld, mobile or portable computing device, media application platform, set-top box, or content server platform) to perform methods described herein. In general, a machine readable medium can include tangible articles that encode information in a form (e.g., as applications, source or object code, functionally descriptive information, etc.) readable by a machine (e.g., a computer, computational facilities of a mobile or portable computing device, media device or streamer, etc.) as well as non-transitory storage incident to transmission of the information. A machine-readable medium may include, but need not be limited to, magnetic storage medium (e.g., disks and/or tape storage); optical storage medium (e.g., CD-ROM, DVD, etc.); magneto-optical storage medium; read only memory (ROM); random access memory (RAM); erasable programmable memory (e.g., EPROM and EEPROM); flash memory; or other types of medium suitable for storing electronic instructions, operation sequences, functionally descriptive information encodings, etc.
In general, plural instances may be provided for components, operations or structures described herein as a single instance, Boundaries between various components, operations and data stores are somewhat arbitrary, and particular operations are illustrated in the context of specific illustrative configurations. Other allocations of functionality are envisioned and may fall within the scope of the invention(s). In general, structures and functionality presented as separate components in the exemplary configurations may be implemented as a combined structure or component. Similarly, structures and functionality presented as a single component may be implemented as separate components. These and other variations, modifications, additions, and improvements may fall within the scope of the invention(s).
The present application claims priority of U.S. Provisional Patent application No. 62/685,727, filed Jun. 15, 2018. The present application is also a CIP of U.S. patent application Ser. No. 15/944,537, filed Apr. 3, 2018, entitled “AUDIOVISUAL COLLABORATION METHOD WITH LATENCY MANAGEMENT FOR WIDE-AREA BROADCAST,” naming Holmberg, Hersh, Yang, Cook and Smith as inventors, which in turn claims priority to U.S. Provisional Application No. 62/480,610, filed Apr. 3, 2017. The entirety of each of the foregoing applications is incorporated herein by reference. The present application is related to commonly-owned, co-pending U.S. application Ser. No. 16/107,351, filed Aug. 21, 2017, and entitled “Audio-Visual Effects System for Augmentation of Captured Performance based on Emotional Content Thereof” and to U.S. Pat. Nos. 9,866,731, 9,911,403 and 8,983,829.
Number | Name | Date | Kind |
---|---|---|---|
4688464 | Gibson et al. | Aug 1987 | A |
5231671 | Gibson et al. | Jul 1993 | A |
5301259 | Gibson et al. | Apr 1994 | A |
5477003 | Muraki et al. | Dec 1995 | A |
5719346 | Yoshida et al. | Feb 1998 | A |
5811708 | Matsumoto | Sep 1998 | A |
5889223 | Matsumoto | Mar 1999 | A |
5902950 | Kato et al. | May 1999 | A |
5939654 | Anada | Aug 1999 | A |
5966687 | Ojard | Oct 1999 | A |
6121531 | Kato | Sep 2000 | A |
6307140 | Iwamoto | Oct 2001 | B1 |
6336092 | Gibson et al. | Jan 2002 | B1 |
6353174 | Schmidt et al. | Mar 2002 | B1 |
6369311 | Iwamoto | Apr 2002 | B1 |
6971882 | Kumar et al. | Dec 2005 | B1 |
7003496 | Ishil et al. | Feb 2006 | B2 |
7068596 | Mou | Jun 2006 | B1 |
7096080 | Asada et al. | Aug 2006 | B2 |
7297858 | Paepcke | Nov 2007 | B2 |
7853342 | Redmann | Dec 2010 | B2 |
8682653 | Salazar et al. | Mar 2014 | B2 |
8868411 | Cook et al. | Oct 2014 | B2 |
8983829 | Cook et al. | Mar 2015 | B2 |
8996364 | Cook et al. | Mar 2015 | B2 |
9058797 | Salazar et al. | Jun 2015 | B2 |
9147385 | Salazar et al. | Sep 2015 | B2 |
9305601 | Itelman | Apr 2016 | B1 |
9324330 | Chordia et al. | Apr 2016 | B2 |
9601127 | Yang et al. | Mar 2017 | B2 |
9866731 | Godfrey et al. | Jan 2018 | B2 |
9911403 | Sung et al. | Mar 2018 | B2 |
20020004191 | Tice et al. | Jan 2002 | A1 |
20020032728 | Sako et al. | Mar 2002 | A1 |
20020051119 | Sherman et al. | May 2002 | A1 |
20020056117 | Hasegawa et al. | May 2002 | A1 |
20020082731 | Pitman et al. | Jun 2002 | A1 |
20020091847 | Curtin | Jul 2002 | A1 |
20020177994 | Chang et al. | Nov 2002 | A1 |
20030014262 | Kim | Jan 2003 | A1 |
20030099347 | Ford et al. | May 2003 | A1 |
20030100965 | Sitrick et al. | May 2003 | A1 |
20030117531 | Rovner et al. | Jun 2003 | A1 |
20030164924 | Sherman et al. | Sep 2003 | A1 |
20040159215 | Tohgi et al. | Aug 2004 | A1 |
20040263664 | Aratani et al. | Dec 2004 | A1 |
20050120865 | Tada | Jun 2005 | A1 |
20050123887 | Joung et al. | Jun 2005 | A1 |
20050252362 | McHale et al. | Nov 2005 | A1 |
20060165240 | Bloom et al. | Jul 2006 | A1 |
20060206582 | Finn | Sep 2006 | A1 |
20070065794 | Mangum | Mar 2007 | A1 |
20070140510 | Redmann | Jun 2007 | A1 |
20070150082 | Yang et al. | Jun 2007 | A1 |
20070245881 | Egozy et al. | Oct 2007 | A1 |
20070245882 | Odenwalk | Oct 2007 | A1 |
20070250323 | Dimkovic et al. | Oct 2007 | A1 |
20070260690 | Coleman | Nov 2007 | A1 |
20070287141 | Milner | Dec 2007 | A1 |
20070294374 | Tamori | Dec 2007 | A1 |
20080033585 | Zopf | Feb 2008 | A1 |
20080105109 | Li et al. | May 2008 | A1 |
20080156178 | Georges et al. | Jul 2008 | A1 |
20080190271 | Taub et al. | Aug 2008 | A1 |
20080270541 | Keener | Oct 2008 | A1 |
20080312914 | Rajendran et al. | Dec 2008 | A1 |
20090003659 | Forstall et al. | Jan 2009 | A1 |
20090038467 | Brennan | Feb 2009 | A1 |
20090063419 | Nurminen | Mar 2009 | A1 |
20090106429 | Siegal et al. | Apr 2009 | A1 |
20090107320 | Willacy et al. | Apr 2009 | A1 |
20090165634 | Mahowald | Jul 2009 | A1 |
20100005501 | Stokking | Jan 2010 | A1 |
20100126331 | Golovkin et al. | May 2010 | A1 |
20100142926 | Coleman | Jun 2010 | A1 |
20100157016 | Sylvain | Jun 2010 | A1 |
20100087240 | Egozy et al. | Aug 2010 | A1 |
20100192753 | Gao et al. | Aug 2010 | A1 |
20100203491 | Yoon | Aug 2010 | A1 |
20100326256 | Emmerson | Dec 2010 | A1 |
20110126103 | Cohen et al. | May 2011 | A1 |
20110144981 | Salazar et al. | Jun 2011 | A1 |
20110144982 | Salazar et al. | Jun 2011 | A1 |
20110144983 | Salazar et al. | Jun 2011 | A1 |
20110154197 | Hawthorne et al. | Jun 2011 | A1 |
20110251841 | Cook et al. | Oct 2011 | A1 |
20110251842 | Cook | Oct 2011 | A1 |
20130006625 | Gunatilake et al. | Jan 2013 | A1 |
20130254231 | Decker et al. | Sep 2013 | A1 |
20140007147 | Anderson | Jan 2014 | A1 |
20140105411 | Santos et al. | Apr 2014 | A1 |
20140181881 | Haot | Jun 2014 | A1 |
20140229831 | Chordia et al. | Aug 2014 | A1 |
20140282748 | McNamee et al. | Sep 2014 | A1 |
20140290465 | Salazar et al. | Oct 2014 | A1 |
20150201161 | Lachapelle | Jul 2015 | A1 |
20150279427 | Godfrey et al. | Oct 2015 | A1 |
20160057316 | Godfrey | Feb 2016 | A1 |
20160358595 | Sung | Dec 2016 | A1 |
20180007098 | Malatesha | Jan 2018 | A1 |
20180152736 | Alexander | May 2018 | A1 |
20190182554 | Schupak | Jun 2019 | A1 |
Number | Date | Country |
---|---|---|
102456340 | May 2012 | CN |
102982832 | Mar 2013 | CN |
108040497 | May 2018 | CN |
1065651 | Jan 2001 | EP |
2018058 | Jan 2009 | EP |
2554322 | Mar 2018 | GB |
2006-311079 | Nov 2006 | JP |
2016206575 | Dec 2016 | JP |
10-2007-0016901 | Feb 2007 | KR |
10-1605497 | Mar 2016 | KR |
WO2003030143 | Apr 2003 | WO |
WO2011075446 | Jun 2011 | WO |
WO2011130325 | Oct 2011 | WO |
2015103415 | Jul 2015 | WO |
WO2016070080 | May 2016 | WO |
WO2016196987 | Dec 2016 | WO |
WO2018187360 | Oct 2018 | WO |
Entry |
---|
PCT International Search Report of International Search Authority for counterpart application, dated Feb. 17, 2016, of PCT/US2015/058373 filed Oct. 30, 2015. |
PCT International Search Report/Written Opinion of International Search Authority for Counterpart application, dated Oct. 17, 2016 of PCT/US2016/035810. |
Kuhn, William. “A Real-Time Pitch Recognition Algorithm for Music Applications.” Computer Music Journal, vol. 14, No. 3, Fall 1990, Massachusetts Institute of Technology, Print pp. 60-71. |
Johnson. Joel. “Glee on iPhone More than Good—It's Fabulous.” Apr. 15, 2010. Web. http://gizmodo.com/5518067/glee-on-iphone-more-than-goodits-fabulous. Accessed Jun. 28, 2011. p. 1-3. |
Wortham, Jenna. “Unleash Your Inner Gleek on the iPad.” Bits, The New York Times. Apr. 15, 2010. Web. <http:. |
Gerhard, David. “Pitch Extraction and Fundamental Frequency: History and Current Techniques.” Department of Computer Science, University of Regina, Saskatchewan, Cananda. Nov. 2003 Print. p. 1-22. |
“Auto-Tune: Intonation Correcting Plug-In.” User's Manual. Antares Audio Technologies. 2000. Print. p. 1-52. |
Trueman, Daniel. et al “PLOrk: the Princton Laptop Orchestra, Year 1. ”Music Department, Princeton University. 2009 Print. 10 pages. |
Conneally, Tim. “The Age of Egregious Auto-tuning: 1998-2009.” Tech Gear News-Betanews. Jun. 15, 2009. Web. www.betanews.com/artical/the-age-of-egregious-autotuning-19982009/1245090927 Accessed Dec. 10, 2009. |
Baran, Tom. “Autotalent v0.2: Pop Music in a Can!” Department of Electrical Engineering and Computer Science, Massachusetts Institute of Technology. May 22, 2011. Web. http//web.mit.edu/tbaran/www/autotalent.html> Accessed Jul. 5, 2011. p. 1-5. |
Atal, Bishnu S. “The History of Linear Prediction.” IEEE Signal Processing Magazine. vol. 154, Mar. 2006 Print. p. 154-161. |
Shaffer, H. and Ross, M. and Cohen, A. “AMDF Pitch Extractor.” 85th Meeting Acoustical Society of America. vol. 54:1, Apr. 13, 1973. Print. p. 340. |
Kumparak , Greg. “Gleeks Rejoice! Smule Packs Fox's Glee Into A Fantastic IPhone Application” MobilCrunch. Apr. 15, 2010 Web. Accessed Jun. 28, 2011; <http://www.mobilecrunch.com/2010/04/15gleeks-rejoice-smule-packs-foxs-glee-into-a-fantastic-iphone-app/>. |
Rabiner, Lawrence R. “On the Use of Autocorrelation Analysis for Pitch Detection.” IEEE Transactions on Acoustics, Speech, and Signal Processing. vol. Assp. -25:Feb. 1, 1977. Print p. 24-33. |
Wang, Ge. “Designing Smule's IPhone Ocarina.” Center for Computer Research in Music and Acoustics, Standford University. Jun. 2009. Print 5 pages. |
Clark, Don; “MuseAmi Hopes to Take Music Automation to New Level.” The Wall Street Journal, Digits, Technology News and Insigts, Mar. 19, 2010 Web. Accessed Jul. 6, 2011 <http://blogs.wsj.com/digits/2010/19/museami-hopes-to-take-music-automation-to-new-level/>. |
Ananthapadmanabha, Tirupattur V. et al. “Epoch Extraction from Linear Prediction Residual for Identification of Closed Glottis Interval.” IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. ASSP-27:4. Aug. 1979. Print, p. 309-319. |
Cheng, M.J. “Some Comparisons Among Several Pitch Detection Algorithms.” Bell Laboratories. Murray Hill, NJ. 1976. p. 332-335. |
International Search Report and Written Opinion mailed in International Application No. PCT/US2010/60135 dated Feb. 8, 2011, 17 pages. |
International Search Report mailed in International Application No. PCT/US2011/032185 dated Aug. 17, 2011, 6 pages. |
Johnson-Bristow, Robert. “A Detailed Analysis of a Time-Domain Formant Corrected Pitch Shifting Alogorithm” AES: An Audio Engineering Society Preprint. Oct. 1993. Print. 24 pages. |
Lent, Keith. “An Efficient Method for Pitch Shifting Digitally Sampled Sounds.” Departments of Music and Electrical Engineering, University of Texas at Austin. Computer Music Journal, vol. 13:4, Winter 1989, Massachusetts Institute of Technology. Print. p. 65-71. |
McGonegal, Carol A. et al. “A Semiautomatic Pitch Detector (SAPD).” Bell Laboratories. Murray Hill, NJ. May 19, 1975. Print. p. 570-574. |
Ying, Goangshiuan S. et al. “A Probabilistic Approach to AMDF Pitch Detection.” School of Electrical and Computer Engineering, Purdue University. 1996. Web. <http://purcell.ecn.purdue.edu/˜speechg>. Accessed Jul. 5, 2011. 5 pages. |
Movie Maker, “Windows Movie Maker: Transitions and Video Effects”, [online], published Jan. 2007. |
PCT International Search Report/Written Opinion of International Search Authority for Counterpart application, dated Sep. 28, 2018 of PCT/US2018/025937. |
Number | Date | Country | |
---|---|---|---|
20190306540 A1 | Oct 2019 | US |
Number | Date | Country | |
---|---|---|---|
62685727 | Jun 2018 | US | |
62480610 | Apr 2017 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 15944537 | Apr 2018 | US |
Child | 16443022 | US |