LAST PLAYED BAR WITH VIDEO-ON-DEMAND (VOD) AND DIGITAL VIDEO RECORDER (DVR) OPTIONS
A recently-viewed stack of session objects is formed, corresponding to assets recently played on consumer premises equipment in a video content network. The session objects include linear session objects corresponding to linear ones of the assets and non-linear session objects corresponding to non-linear ones of the assets. A user selection to resume playing one of the non-linear assets is obtained (e.g., from a channel surfer application). Responsive to the user selection, a switch is made from a currently viewed program to the aforementioned one of the non-linear assets.
1 . A method comprising the steps of:
forming a recently-viewed stack of session objects corresponding to assets recently played on consumer premises equipment in a video content network, wherein said session objects comprise linear session objects corresponding to linear ones of said assets and non-linear session objects corresponding to non-linear ones of said assets;
obtaining a user selection to resume playing one of said non-linear ones of said assets; and
responsive to said user selection, switching from a currently viewed program to said one of said non-linear ones of said assets.
2 . The method of claim 1 , wherein said obtaining step comprises obtaining said user selection from a channel surfer application.
3 . The method of claim 2 , wherein:
said non-linear session objects comprise video-on-demand session objects corresponding to video-on-demand ones of said assets and digital video recorder objects corresponding to digital video recorder ones of said assets;
in said obtaining step, said user selection comprises a user selection to resume playing one of said video-on-demand ones of said assets; and
said switching step comprises switching from said currently viewed program to said one of said video-on-demand ones of said assets.
4 . The method of claim 2 , wherein:
said non-linear session objects comprise video-on-demand session objects corresponding to video-on-demand ones of said assets and digital video recorder objects corresponding to digital video recorder ones of said assets;
in said obtaining step, said user selection comprises a user selection to resume playing one of said digital video recorder ones of said assets; and
said switching step comprises switching from said currently viewed program to said one of said digital video recorder ones of said assets.
5 . The method of claim 2 , wherein, in said switching step, said currently viewed program comprises a linear program.
6 . The method of claim 2 , wherein, in said switching step, said currently viewed program comprises a non-linear program.
7 . The method of claim 2 , further comprising persisting said recently-viewed stack of session objects to non-volatile memory at an appropriate time.
8 . The method of claim 7 , wherein said appropriate time comprises update of said stack.
9 . The method of claim 8 , further comprising retrieving said recently-viewed stack of session objects from said non-volatile memory upon subsequent system re-start.
10 . The method of claim 8 , further comprising:
upon said user switching to a new program, obtaining a request to push a session object corresponding to said new program to said recently-viewed stack of session objects; and
adding said session object corresponding to said new program to said recently-viewed stack of session objects, responsive to obtaining said request.
11 . The method of claim 10 , wherein said recently-viewed stack of session objects has a maximum number of entries, further comprising deleting an oldest one of said entries, responsive to obtaining said request.
12 . The method of claim 10 , further comprising:
responsive to obtaining said request, checking whether a duplicate of said session object corresponding to said new program already exists in said recently-viewed stack of session objects; and
if said duplicate of said session object corresponding to said new program already exists in said recently-viewed stack of session objects, deleting said duplicate of said session object corresponding to said new program.
13 . The method of claim 12 , wherein said non-linear session objects comprise video-on-demand session objects corresponding to video-on-demand ones of said assets and digital video recorder objects corresponding to digital video recorder ones of said assets, further comprising:
assigning each of said session objects to a RecentlyViewedItemBase class;
assigning each of said linear session objects to a RecentlyViewedLinearItem class;
assigning each of said video-on-demand session objects to a RecentlyViewedVodItem class; and
assigning each of said digital video recorder session objects to a RecentlyViewedDvrItem class;
wherein a manner of said checking for said duplicate is based on membership in one of said RecentlyViewedLinearItem class, said RecentlyViewedVodItem class, and said RecentlyViewedDvrItem class.
14 . An apparatus comprising:
a memory;
at least one processor coupled to said memory; and
a non-transitory persistent storage medium which contains instructions which, when loaded into said memory, configure said at least one processor to be operative to:
form a recently-viewed stack of session objects corresponding to assets recently played on consumer premises equipment in a video content network, wherein said session objects comprise linear session objects corresponding to linear ones of said assets and non-linear session objects corresponding to non-linear ones of said assets;
obtain a user selection to resume playing one of said non-linear ones of said assets; and
responsive to said user selection, switch from a currently viewed program to said one of said non-linear ones of said assets.
15 . The apparatus of claim 14 , wherein said user selection is obtained from a channel surfer application.
16 . The apparatus of claim 15 , wherein:
said non-linear session objects comprise video-on-demand session objects corresponding to video-on-demand ones of said assets and digital video recorder objects corresponding to digital video recorder ones of said assets;
said user selection comprises a user selection to resume playing one of said video-on-demand ones of said assets; and
said switching comprises switching from said currently viewed program to said one of said video-on-demand ones of said assets.
17 . The apparatus of claim 15 , wherein:
said non-linear session objects comprise video-on-demand session objects corresponding to video-on-demand ones of said assets and digital video recorder objects corresponding to digital video recorder ones of said assets;
said user selection comprises a user selection to resume playing one of said digital video recorder ones of said assets; and
said switching comprises switching from said currently viewed program to said one of said digital video recorder ones of said assets.
18 . A non-transitory computer readable medium comprising computer executable instructions which when executed by a computer cause the computer to perform the method of:
forming a recently-viewed stack of session objects corresponding to assets recently played on consumer premises equipment in a video content network, wherein said session objects comprise linear session objects corresponding to linear ones of said assets and non-linear session objects corresponding to non-linear ones of said assets;
obtaining a user selection to resume playing one of said non-linear ones of said assets; and
responsive to said user selection, switching from a currently viewed program to said one of said non-linear ones of said assets.
19 . The non-transitory computer readable medium of claim 18 , wherein said obtaining step of said method comprises obtaining said user selection from a channel surfer application.
20 . The non-transitory computer readable medium of claim 19 , wherein:
said non-linear session objects comprise video-on-demand session objects corresponding to video-on-demand ones of said assets and digital video recorder objects corresponding to digital video recorder ones of said assets;
in said obtaining step of said method, said user selection comprises a user selection to resume playing one of said video-on-demand ones of said assets; and
said switching step of said method comprises switching from said currently viewed program to said one of said video-on-demand ones of said assets.
21 . The non-transitory computer readable medium of claim 19 , wherein:
said non-linear session objects comprise video-on-demand session objects corresponding to video-on-demand ones of said assets and digital video recorder objects corresponding to digital video recorder ones of said assets;
in said obtaining step of said method, said user selection comprises a user selection to resume playing one of said digital video recorder ones of said assets; and
said switching step of said method comprises switching from said currently viewed program to said one of said digital video recorder ones of said assets.