U.S. patent application number 17/830125 was filed with the patent office on 2022-09-15 for systems and methods for creating custom media channels.
The applicant listed for this patent is Disney Enterprises, Inc.. Invention is credited to Michael P. Goslin, Skarphedinn Hedinsson, Scott F. Watson.
Application Number | 20220295132 17/830125 |
Document ID | / |
Family ID | 1000006374372 |
Filed Date | 2022-09-15 |
United States Patent
Application |
20220295132 |
Kind Code |
A1 |
Hedinsson; Skarphedinn ; et
al. |
September 15, 2022 |
Systems and Methods for Creating Custom Media Channels
Abstract
There is provided a system including a memory and a processor
configured to display a programming guide for a first media channel
including a first media content scheduled to play at a first
broadcast time and a second media channel including a second media
content scheduled to play at a second broadcast time, receive a
user input for creating a custom channel, the custom channel
including the first media content obtained from the first media
channel and the second media content obtained from the second media
channel, create a custom content for the custom channel, in
response to the user input, by obtaining the first media content
from the first media channel at the first broadcast time and
obtaining the second media content from the second media channel at
the second broadcast time, receive a request for playing the custom
channel, and display the custom content of the custom channel on a
display.
Inventors: |
Hedinsson; Skarphedinn;
(Encino, CA) ; Goslin; Michael P.; (Sherman Oaks,
CA) ; Watson; Scott F.; (Marina Del Rey, CA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Disney Enterprises, Inc. |
Burbank |
CA |
US |
|
|
Family ID: |
1000006374372 |
Appl. No.: |
17/830125 |
Filed: |
June 1, 2022 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
15073506 |
Mar 17, 2016 |
11381863 |
|
|
17830125 |
|
|
|
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
H04N 21/4532 20130101;
H04N 21/4334 20130101; H04N 21/4667 20130101; H04N 21/44213
20130101; H04N 21/4821 20130101; H04N 21/47202 20130101; H04N
21/2668 20130101 |
International
Class: |
H04N 21/2668 20060101
H04N021/2668; H04N 21/482 20060101 H04N021/482; H04N 21/472
20060101 H04N021/472; H04N 21/45 20060101 H04N021/45; H04N 21/466
20060101 H04N021/466; H04N 21/442 20060101 H04N021/442; H04N 21/433
20060101 H04N021/433 |
Claims
1-20. (canceled)
21: A system comprising: a non-transitory memory storing an
executable code; a hardware processor is configured to execute the
executable code to: receive a first user input to create a first
custom channel; in response to receiving the first user input,
obtain a first media content from any of a plurality of media
channels; schedule the first media content to be played on the
first custom channel; receive a second user input selecting a
more-like-this option to find one or more additional media contents
from any of the plurality of media channels, the one or more
additional media contents having a subject matter similar to that
of the first media content; in response to receiving the second
user input, find the one or more additional media contents having
the subject matter similar to that of the first media content; and
update the first custom channel to include the one or more
additional media contents.
22: The system of claim 21, wherein the hardware processor is
further configured to execute the executable code to: play the one
or more additional media contents on the first custom channel.
23: The system of claim 21, wherein the hardware processor is
further configured to execute the executable code to: in response
to receiving the first user input, obtain the first media content
from any of the plurality of media channels played at a first
broadcast time of the plurality of broadcast times.
24: The system of claim 23, wherein the hardware processor is
further configured to execute the executable code to: obtain a
second media content from any of the plurality of media channels
played at a second broadcast time of the plurality of broadcast
times; and update the first custom channel by including the first
media content at a third broadcast time of the plurality of
broadcast times, and by including the second media content at a
fourth broadcast time of the plurality of broadcast times; wherein
the first broadcast time is different than the third broadcast
time, or the second broadcast time is different than the fourth
broadcast time.
25: The system of claim 24, wherein obtaining the first media
content and obtaining the second media content occur during
overlapping time periods.
26: The system of claim 24, wherein the hardware processor is
further configured to execute the executable code to: record the
second media content while playing the first media content on the
first custom channel.
27: The system of claim 24, wherein the hardware processor is
further configured to execute the executable code to: receive a
third user input indicating a first level of interest in the first
media content; and receive a fourth user input indicating a second
level of interest in the second media content; wherein the first
level of interest is higher than the second level of interest.
28: The system of claim 24, wherein the first media content is
obtained from a first media channel of the plurality of media
channels and the second media content is obtained from a second
media channel of the plurality of media channels, and wherein the
first media channel is different than the second media channel.
29: The system of claim 21, wherein the second user input is a
voice command.
30: The system of claim 21, wherein the hardware processor is
further configured to execute the executable code to: in response
to receiving the first user input, obtain the first media content
from any of the plurality of media channels played at a first
broadcast time of the plurality of broadcast times. update the
first custom channel by including the first media content at a
second broadcast time of the plurality of broadcast times; wherein
the first broadcast time is different than the second broadcast
time.
31: A method comprising: receiving a first user input to create a
first custom channel; in response to receiving the first user
input, obtaining a first media content from any of a plurality of
media channels; scheduling the first media content to be played on
the first custom channel; receiving a second user input selecting a
more-like-this option to find one or more additional media contents
from any of the plurality of media channels, the one or more
additional media contents having a subject matter similar to that
of the first media content; in response to receiving the second
user input, finding the one or more additional media contents
having the subject matter similar to that of the first media
content; and updating the first custom channel to include the one
or more additional media contents.
32: The method of claim 31, further comprising: playing the one or
more additional media contents on the first custom channel.
33: The method of claim 31, further comprising: in response to
receiving the first user input, obtaining the first media content
from any of the plurality of media channels played at a first
broadcast time of the plurality of broadcast times.
34: The method of claim 33, further comprising: obtaining a second
media content from any of the plurality of media channels played at
a second broadcast time of the plurality of broadcast times; and
updating the first custom channel by including the first media
content at a third broadcast time of the plurality of broadcast
times, and by including the second media content at a fourth
broadcast time of the plurality of broadcast times; wherein the
first broadcast time is different than the third broadcast time, or
the second broadcast time is different than the fourth broadcast
time.
35: The method of claim 34, wherein obtaining the first media
content and obtaining the second media content occur during
overlapping time periods.
36: The method of claim 34, further comprising: recording the
second media content while playing the first media content on the
first custom channel.
37: The method of claim 34, further comprising: receiving a third
user input indicating a first level of interest in the first media
content; and receiving a fourth user input indicating a second
level of interest in the second media content; wherein the first
level of interest is higher than the second level of interest.
38: The method of claim 37, wherein the first media content is
obtained from a first media channel of the plurality of media
channels and the second media content is obtained from a second
media channel of the plurality of media channels, and wherein the
first media channel is different than the second media channel.
39: The method of claim 31, wherein the second user input is a
voice command.
40: The method of claim 31, further comprising: in response to
receiving the first user input, obtaining the first media content
from any of the plurality of media channels played at a first
broadcast time of the plurality of broadcast times. updating the
first custom channel by including the first media content at a
second broadcast time of the plurality of broadcast times; wherein
the first broadcast time is different than the second broadcast
time.
Description
BACKGROUND
[0001] Traditionally, watching television meant selecting a
television station to watch and watching the programming and
advertisements broadcast thereon. Digital video recorders began to
free viewers from the traditional model by allowing the viewers to
choose when to watch a program, and even allowing the consumer to
forward through advertisements. Cable providers began to provide
some on-demand content, allowing the viewers to pay extra to view
the on-demand content that was not otherwise available. Now,
television networks and other content providers commonly provide
programs for viewing on-line. However, such on-line and on-demand
viewings, and other alternative viewing options do not completely
fulfill the viewer's desire for personal and customized viewing
options.
SUMMARY
[0002] The present disclosure is directed to systems and methods
for creating custom media channels, substantially as shown in
and/or described in connection with at least one of the figures, as
set forth more completely in the claims.
BRIEF DESCRIPTION OF THE DRAWINGS
[0003] FIG. 1 shows a diagram of an exemplary system for creating a
custom media channel, according to one implementation of the
present disclosure;
[0004] FIG. 2 shows a diagram of an exemplary programming guide for
use with the system of FIG. 1, according to one implementation of
the present disclosure;
[0005] FIG. 3 shows a diagram of an exemplary display showing a
media content and a custom media channel message, according to one
implementation of the present disclosure; and
[0006] FIG. 4 shows a flowchart illustrating an exemplary method of
eating a custom media channel, according to one implementation of
the present disclosure.
DETAILED DESCRIPTION
[0007] The following description contains specific information
pertaining to implementations in the present disclosure. The
drawings in the present application and their accompanying detailed
description are directed to merely exemplary implementations.
Unless noted otherwise, like or corresponding elements among the
figures may be indicated by like or corresponding reference
numerals. Moreover, the drawings and illustrations in the present
application are generally not to scale, and are not intended to
correspond to actual relative dimensions.
[0008] FIG. 1 shows a diagram of an exemplary system for creating a
custom media channel, according to one implementation of the
present disclosure. Diagram 100 includes media input 101, computing
device 110, input device 193, and display device 195. Computing
device 110 includes processor 120, memory 130, and microphone 160.
Processor 120 is a hardware processor, such as a central processing
unit (CPU) used in computing devices. Memory 130 is a
non-transitory storage device for storing computer code for
execution by processor 120, and also storing various data and
parameters. Memory 130 includes executable code 140, custom channel
database 150, and voice command database 155. Computing device may
be a service provider's server, or computing device 110 may be an
in-home device, such as a computer, a tablet computer, a smart
television, a set-top box, etc. In some implementations, computing
device 110 may include input device 193 and/or display device
195.
[0009] Media input 101 may include a plurality of media channels,
including a first media channel and a second media channel. In some
implementations, media input 101 may be an input from a service
provider, such as an internet service provider, a cable television
provider, etc. Each media channel of media input 101 may include
one or more media contents, such as one or more television shows,
news programs, sporting events, talk shows, etc. Additionally, each
media content may have an associated broadcast time including dates
and times when the media content will be available for viewing. In
some implementations, media input 101 may include data about each
media channel and/or each media content, such as station
identification identifying a broadcast station transmitting the
media content, network identification identifying a media network
associated with creating and/or distributing the media content, a
broadcast schedule for the media content including dates and times
when the media content will be available for viewing, a type or
genre for each media content, etc. The type or genre of the media
content may include descriptions such as news, sports, sitcom,
comedy, drama, family, etc. Media input 101 may include a broadcast
schedule for each media channel in media input 101.
[0010] For example, media contents of media input 101 may include a
metadata container that provides information about each media
content, such as, but not limited to, the title of each media
content, the length of each media content, etc. ID3 tags provide
the Title. Artist, Year, Genre and other information about the
media file they represent, whether an audio file or a video file.
An ID3 tag is a data container within a media file stored in a
prescribed format. This data commonly contains, among other things,
the Artist names, Title, Year and Genre of the media file. In such
an example, information about media input 101 may be inserted into
media content 101 using a number of different method such as, but
not limited to, in the header of each media content, at the end of
each media content, or as a sidecar file to each media content. For
another example, information about media input 101 may be inserted
into each media content of media input 101. In such an example,
information about media input 101 may be inserted into the vertical
ancillary data (VANC) space of each media content. Ancillary data
(commonly abbreviated as ANC data), in the context of television
systems, refers to a means which by non-video information (such as
audio, other forms of essence, and metadata) may be embedded within
the serial digital interface.
[0011] Executable code 140 includes one or more software modules
stored in memory 130 for execution by processor 120 of commuting
device 110. As shown in FIG. 1, executable code 140 includes custom
channel module 141, voice command module 143, and actions module
145. Custom channel module 141 is a software module for execution
by processor 120 to create one or more custom media channels
including media contents from media input 101. Custom channel
module 141 may obtain media contents, such as television shows,
sporting events, etc., form media input 101. In some
implementations, custom channel module 141 may play a media content
from media input 101 as the media content is broadcast, i.e., live,
or custom channel module 141 may record the media content for
delayed transmission on one or more custom media channels. In some
implementations, custom channel module 141 may save the one or more
custom channels in custom channel database 151. In some
implementations, the user may indicate a level of interest for each
media content, such as a low level of interest, an intermediate
level of interest, a high level of interest, or the level of
interest may be on a scale, such as a level of interest ranging
from one (1) to ten (10). In some implementations, the level of
interest may be used to prioritize display of media contents.
[0012] Voice command module 143 is a software module for execution
by processor 120 to detect one or more keywords spoken by a user of
system 100. To detect one or more keywords spoken by the user,
voice command module 143 may use microphone 160. In some
implementations, voice command module 143 may detect one or more
keywords in the natural speech of the user. In some
implementations, voice command module 143 may receive an analog
input from microphone 160 and convert the analog input signal to a
digitized signal using an analog-to-digital (A/D) converter. Voice
command module 143 may sample the digitized signal and search for a
match in voice command database 155, and may identify the detected
one or more keywords when a match is found. After identifying the
one or more keywords using voice command database 155, voice
command module 143 may communicate with custom channel module 141,
actions module 145, and/or display module 147 to execute the
command associated with the detected one or more keywords.
[0013] Actions module 145 is a software module for execution by
processor 120. Actions module 145 may include one or more actions
that may be executed in response to a user input, such as a voice
command. For example, actions module 145 may include an action to
advance to a next media content in the custom content of a custom
channel in response to a user saying the command "Next." In some
implementations, actions module 145 may also include actions to add
a media content to a custom channel, remove a media content from a
custom channel, create a new custom channel, assign a level of
interest to a media content and/or custom channel, etc.
[0014] Custom channel database 150 is a database stored in memory
130. Custom channel database 150 may store one or more custom
channels created by a user. Each custom channel stored in custom
channel database 150 may include one or more parameters describing
the media contents to be shown, such as the titles and/or other
scheduling information of each media content included in the custom
channel. When a user selects a custom channel to view, custom
channel module 141 may retrieve the custom channel parameters from
custom channel database 150.
[0015] Voice command database 155 is a database stored in memory
130 including an audio signal of one or more keywords. Each keyword
of the one or more keywords may have an associated command, such as
pausing playback of the custom channel, changing channels, skipping
to a next or other media content, modifying a custom channel, such
as by adding or removing a media content from the custom contents
of the custom channel, etc. In some implementations, keywords in
voice command database 155 may be associated with actions performed
by actions module 145.
[0016] Microphone 160 is a microphone for receiving audio input,
such as voice commands. As shown in FIG. 1, microphone 160 is
included in computing device 110, although microphone 160 may be
included in display device 195. Input device 191 may be a remote
control, a computer mouse, a computer keyboard, etc. Display device
195 is a device for displaying custom channels. Display device 195
may be a television, a smart television, a computer, a tablet
computer, etc. In some implementations, display device 195 may
include computing device 110, or display device 195 may be a
separate device communicably connected to computing device 110.
[0017] FIG. 2 shows a diagram of an exemplary programming guide for
use with the system of FIG. 1, according to one implementation of
the present disclosure. Diagram 200 includes media channel 211,
media channel 222, media channel 223, and custom channel 225,
including a plurality of media contents on the media channels. Each
media content is shown filling a block of time at which the media
content is scheduled to broadcast in the schedule of the media
channel on which the media content is shown. Media contents 211-216
are also included at the time which each media content will be
transmitted as custom media contents of custom channel 225. As
shown in FIG. 2, media content 211 is scheduled to be broadcast on
media channel 223 beginning at 5:00 PM and running until 6:00 PM.
Media content 211 is included as a custom content in custom channel
225 as live content. After media content 211, custom channel 225
includes media content 212. Media content 212 is a program
scheduled to show on media channel 222 beginning at 6:00 PM and
running until 7:00 PM. A viewer watching custom channel 225 may
watch media content 211 followed by media content 212 without
changing the channel.
[0018] Following media content 212, custom channel 225 includes
media content 213. Media content 213 is a program scheduled to show
on media channel 221 beginning at 5:30 PM and running until 7:00
PM. Media content 213 is included as a custom content in custom
channel 225 as content has been recorded for delayed transmission.
Custom media channel 225 allows the user to view media content 212
followed by media content 213 without changing the channel, even
though media content 213 began broadcasting before media content
212 and was broadcast on a different media channel than media
content 213. Following media content 213, custom channel 225
includes media content 214 which is included as live content
concurrently showing on media channel 223 beginning at 8:30 PM and
running until 9:00 PM. Media content 215 follows media content 214
on channel 255. Media content 215 is scheduled to broadcast on
media channel 223 beginning at 7:00 PM and running until 8:00 PM,
and is included as custom content of custom channel 225 beginning
at 9:00 PM and running until 10:00 PM. Beginning at 10:00 PM and
running until 12:00 AM, custom channel 225 includes media content
216. Media content 216 is scheduled to broadcast on media channel
221 beginning at 9:00 PM and running until 11:00 PM, and is
included as custom content recorded for delayed transmission on
custom channel 225.
[0019] FIG. 3 shows a diagram of an exemplary display showing a
media content and a custom media channel message, according to one
implementation of the present disclosure. Diagram 300 shows display
device 395 showing a media content broadcast on media channel 321
beginning at 8:00 PM and scheduled to run until 9:00 PM. As shown
in FIG. 3, at about 8:25 PM, message 342 is displayed on the
display of display device 395 during playback of the media content
indicating to the viewer that the viewer's custom channel has a
scheduled custom content that will begin in five minutes, at 8:30
PM. In some implementations, executable code 140 may switch to the
custom media channel at the beginning of each custom content
included therein, or executable code 140 may communicate the
pending custom media content, such as by displaying message 342. If
a viewer chooses not to watch the custom media channel, executable
code 140 may record the custom media channel for on-demand viewing
at a later time.
[0020] In some implementations, a user may have a plurality of
custom media channels. If the user is currently viewing a custom
content of a custom channel, another of the user's custom channels
may have a custom content that the user has marked with an equal or
higher level of interest. Executable code 140 may display a
message, such as message 342. In some implementations, executable
code 140 may switch to the custom media channel playing the media
content having the higher level of interest. In other
implementations, executable code 140 may continue displaying the
custom channel currently viewed by the user, and notify the user of
the alternate media content using a display a message such as
message 342.
[0021] FIG. 4 shows a flowchart illustrating an exemplary method of
creating a custom media channel, according to one implementation of
the present disclosure. Method 400 begins at 410, where executable
code 140 displays a programming guide for a first media channel
including a first media content scheduled to play at a first
broadcast time and a second media channel including a second media
content scheduled to play at a second broadcast time. The
programming guide may include a plurality of media channels and the
scheduled media contents for each media channel provided by a
service provider, such as a cable television provider.
[0022] At 420, executable code 140 receives a user input for
creating a custom channel, the custom channel including the first
media content obtained from the first media channel and the second
media content obtained from the second media channel. In some
implementations, executable code may require a user to sign in to a
user account before creating a custom media channel. Custom channel
module 141 may receive a user input from input device 193 selecting
a first media content from a first media channel and a second user
input from input device 193 selecting a second media content from a
second media channel, the first media content and the second media
contents selected to be included as custom media contents in the
custom media channel.
[0023] At 430, executable code 140 creates a custom content for the
custom channel, in response to the user input, by obtaining the
first media content from the first media channel at the first
broadcast time and obtaining the second media content from the
second media channel at the second broadcast time. In some
implementations, custom channel module 141 may save the first media
content and the second media content in memory 130, or custom
channel module 141 may save a location of the first media content
and the second media content, such as a URL locating the media
contents on one or more media servers. Method 400 continues at 440,
where executable code 140 receives a request for playing the custom
channel. Executable code 140 may receive a request from input
device 193 or display device 195 requesting to play the custom
media channel. At 450, executable code 140, using display module
147, displays the custom content of the custom channel on a
display. The display may be a television, a computer display, a
tablet computer, a mobile phone, etc.
[0024] At 460, executable code 140 receives a second user input for
updating the custom channel. The second user input may come from
input device 193 or display device 195 and may update the custom
channel by adding a media content to the custom contents of the
custom media channel, removing a media content to the custom
contents of the custom media channel, changing the order of one or
more custom contents of the custom media channel, etc. In some
implementations, the second user input may come from a voice input
using microphone 160. Voice command module 143 may detect one or
more keywords spoken by a user, match the detected one or more
keywords with a command in voice command database 155, and execute
the command. Method 400 continues at 470, where executable code 140
updates the custom channel based on a second user input
received.
[0025] At 480, executable code 140 receives a control input. The
control input may be an input from input device 193, display device
195, or a voice input received via microphone 160. For example, a
user viewing a media content may want to view more media contents
including similar subject matter. The user may use input device 193
to select a "more like this" option, directing actions module 145
to find more media contents similar to the media content being
viewed. In other implementations, the user may speak a command,
such as speaking "more like this," and actions module 145 may find
more media contents similar to the one being viewed. Method 400
continues at 490, where executable code 140 executes the action
based on the control input.
[0026] From the above description, it is manifest that various
techniques can be used for implementing the concepts described in
the present application without departing from the scope of those
concepts. Moreover, while the concepts have been described with
specific reference to certain implementations, a person having
ordinary skill in the art would recognize that changes can be made
in form and detail without departing from the scope of those
concepts. As such, the described implementations are to be
considered in all respects as illustrative and not restrictive. It
should also be understood that the present application is not
limited to the particular implementations described above, but many
rearrangements, modifications, and substitutions are possible
without departing from the scope of the present disclosure.
* * * * *