The subject disclosure relates to computer networking, and specifically to client device based user friendly interface wizards for uploading media content and related metadata to a content management system (CMS).
Advances in computing technology and the Internet have changed the manner in which media content is created and distributed. The widespread availability and use of the Internet allows individual artists (or small groups of artists) to also become distributors of their respective works to a global audience, instead of having to rely on large entertainment or publishing houses for the distribution. For example, it has now become commonplace for artists around the world to create short films or movies by using handheld video cameras, edit them by using personal computers, and upload them to video hosting websites or video libraries by using the Internet. However, while distribution of media content has become easier, commercialization of the media content still requires the distributor to consider many complex factors including, for example, the desired monetization policies and social norms in the various geographical locations in which the content creator (or distributor) desires to monetize his/her content.
It would be desirable to have a user friendly and user interactive computer system that allows creative works creators around the world to distribute and monetize their creative works to a global audience without requiring them to become or hire sophisticated technologists.
The following presents a simplified summary of some embodiments of the subject disclosure in order to provide a basic understanding of some aspects of such embodiments. This summary is not an extensive overview of the specification. It is intended to neither identify key elements of the specification nor delineate the scope of any particular embodiments of the specification, or any scope of the claims. Its sole purpose is to present some concepts of the specification in a simplified form as a prelude to the more detailed description that is presented in this disclosure.
In an implementation of the subject disclosure, a client computer includes a first UI wizard component that interactively gathers media content and metadata from a user, a second UI wizard component that bundles (or packages) the media content and metadata, and a third UI wizard component that uploads the bundle to a server computer by way of a network link. The UI wizard components are hosted by the client computer, are user friendly and include graphical interfaces that prompt a user of the client computer for media content or metadata information. In an example, the client and server computers communicate by using Hypertext Transfer Protocol Secure (HTTPS). The bundle is uploaded in resumable and automatically persistent manners. The UI wizard components and the bundle are compatible with one or more tool chains of the server computer. Moreover, the UI wizard components are representation agnostic to the user of the client computer, meaning that in this disclosure, the user of the client computer is not requested or required to modify any source code of the UI wizard components.
The following description and the drawings set forth certain illustrative aspects of the specification. These aspects are indicative, however, of but a few of the various ways in which the principles of the specification may be employed. Other advantages and novel features of the specification will become apparent from the following detailed description of the specification when considered in conjunction with the drawings.
The subject disclosure is now described with reference to the above drawings, wherein like reference numerals are used to refer to like elements throughout. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the subject disclosure. It may be evident, however, that the subject disclosure can be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to facilitate describing the subject disclosure.
It is to be appreciated that in accordance with one or more aspects described in this disclosure, users can opt-out of providing personal information, demographic information, location information, proprietary information, sensitive information, or the like in connection with data gathering aspects. Moreover, one or more aspects described herein can provide for anonymizing collected, received, or transmitted data.
In an implementation of the subject disclosure, a set of client device based (e.g., client computer) user interface (UI) wizard components gather media content and metadata from a client device's user by requesting simple user interactions, bundling the content and metadata and uploading the bundle to a remote server. In the subject disclosure, the terms UI wizards, a set of UI wizards, UI wizard components and representations of UI wizards are used interchangeably. Regarding media content, a user of the client device can drag and drop the media content file(s) into a wizard box or browse and select the media content file(s) from the client device's memory. Regarding metadata, the UI wizards include a graphical interface for interviewing the user of the client device, such that a user's profile may be populated via interactive questioning of the user.
According to an aspect of the subject disclosure, the metadata includes identification information about associated content creator(s) and subject matter of the media content (e.g. genre and title of the media content), as well as the user's instructions (or policies or objectives or rules) for distribution and/or monetization of the media content. For example, metadata can include a user's request to receive periodic feedback about the number of times users have selected his/her media content and the number of downloads or views of his/her media content, or similar information categorized by geographical regions. The metadata can also include fingerprinting information for the media content and a request to block any unauthorized uploads or copying of the media content by others. According to an aspect of the subject disclosure, the UI wizards include drop down menus that allow the user of the client computer to select region(s) of the world in which the user has rights in the media content and/or where the user wishes to distribute and/or monetize the media content. A region in the menu can be custom created by the user to include, for example, one or more countries, one or more states, one or more cities, etc., or a combination thereof.
Once completed, a representation of the user's profile/metadata can be saved (or stored) in the client device's memory and/or stored in a cloud storage device for retrieval by a client device, for use as a batch uploading and/or in future media content uploads. In an implementation, the UI wizards initially populate (or pre-fill) the metadata fields with a previously used representation of the user's profile/metadata and prompt the user to make any edits to the populated fields. In an implementation, the UI wizards additionally or alternatively pre-populate (or pre-fill) the metadata fields using data from other sources, e.g., ID3 tags from media files selected for upload. The UI wizards can also interact with a system memory (or network or cloud memory) of the client device to completely or partially populate the user profile/metadata fields. In an implementation, the UI wizards can alert the user if a file selected for uploading does not correspond to a chosen metadata wizard. For example, if the user selects a UI wizard associated with video uploads and then selects a file for upload that is an audio file rather than a video file, the UI wizard can alert the user that the audio file does not correspond to file types associated with the current wizard and ask that the user select another file.
According to an aspect of the subject disclosure, the UI wizards upload representations of the media content and metadata to a network server. The network server can include a music hosting site, video hosting site, a social networking site or a business networking site, of which the user of the client computer is a partner or a subscriber. According to an aspect of the subject disclosure, the uploading is performed in a resumable manner, meaning that any uploaded data is automatically and persistently saved by the network server. Thus, if the uploading process is interrupted, for example, because of loss of network connection or electricity, or intentionally interrupted because the user desires to use the client computer for different purpose(s) or to temporarily shut it down, the uploading process need not be restarted from the beginning but instead can resume from the point of interruption. According to an aspect of the subject disclosure, the network server processes the bundle immediately in real time (e.g. fingerprinting and/or transcoding a video in real time) as the bundle data is being uploaded. In other words, the network server does not wait for the upload of the entire bundle to be completed prior to commencing the processing of the bundle. According to an aspect of the subject disclosure, the implementation of the user's instructions (or policies) commences immediately upon the initiation of the upload, e.g., well in advance of the completion of the uploading. Thus, for example, if a user desires to prevent his/her video from being viewed in a particular geographical location, that policy is implemented even as the video is being uploaded. This feature can be particularly beneficial during live uploads (or viewings) of events, for example live music concerts or sporting events.
According to an aspect of the subject disclosure, the UI wizards are representation agnostic, meaning that in this disclosure, the programming of the UI wizards is decoupled from the user friendly interface representation of the UI wizards to the user of the client computer. In other words, no programming of the instructions for the operation of the UI wizards in required by the end user. For example, a video hosting website provider that creates the UI wizards can create a new version of the UI wizards that does not affect the representation of the interactive interface that is presented to the end user. In this example, the video hosting site can send the new version of the UI wizards to the user of the client device for installation on the client device by way of a mobile memory device (e.g. compact disk), or, if authorized by the user of the client device, the new version can be downloaded to the client device by way of a network connection. The user of the client device need not have knowledge of background instructional (or programming) changes that were made in the new version to be able to use the new UI wizards, and need not know how to make those changes, thereby making the UI wizards representation agnostic. According to an aspect of the subject disclosure, the UI wizards can be tailored for individual users or groups of users, for example, by masking certain portions or inquiries that are not relevant to particular users. According to an aspect of the subject disclosure, only particular portions of the UI wizards are presented to the user of the client device based on the nature or subject matter of the media content to be uploaded. For example, if the user desires to upload a video, the UI wizards related to music are masked such that metadata inquiries about music are not presented to the user.
In one implementation of the subject disclosure, the client device communicates with the server computer by using Hypertext Transfer Protocol Secure (HTTPS). The set of UI wizards includes one or more application programs that are resident on the client device. The programs provide an interactive graphical interface, which can include drop boxes, pushbutton icons, drag and drop features, etc.. The UI wizards communicate with the server by using an application program interface (API) layer that runs on top of the HTTPS layer. In addition to gathering information by interacting with a user, the UI wizards can also be configured to access information from other sources such as the media files selected for uploading. For example, ID3 tags and International Standard Recording Codes (ISRC) of the media file can be read and used to pre-populate fields of the wizard. By operating locally on the user device, the UI wizards enhance their speed of the interaction with information stored on the user device while generating metadata. Moreover, by operating locally on the user device, the UI wizards can gather and bundle media content and metadata without requiring an active (or enabled) network connection to do so. In other implementations, the client device communicates with the server computer by using HTTP or other suitable protocols, depending on the application.
In one implementation of the subject disclosure, the application program and associated plug-in(s) 110 are created by the owner, manager or service provider of a network server, for example, a network server that hosts videos (e.g. server computer 200 shown in
The bundling component 114 packages (or bundles) the media content and metadata. In an implementation, the packaging includes formatting the media content and bundle in a manner that is compatible with tool chains of the server computer 200. In an implementation, packaging additionally includes encryption and/or encoding of the media content and metadata. The server communication component 116 communicates with the server computer 200 by using, for example, the Hypertext Transfer Protocol Secure (HTTPS) protocol. The server communication component 116 communicates with the server computer 200 either directly or by way of the microprocessor 130. According to an aspect of the subject disclosure, the server communication component 116 monitors the network connection during the upload and provides user selectable tools, such as soft-button tools, for pausing, restarting and canceling the upload. In one implementation, the server communication component 116 automatically commences the uploading of a bundle upon completion of the bundling process by the bundling component 114. In one implementation, the user must provide his/her authentication information (e.g. username and password) as a pre-condition for the uploading to commence. In one implementation, a UI wizard 112 automatically prompts a user to enter his/her authentication information upon completion of the bundling process by the bundling component 114. Moreover, in one implementation, upon completion of the uploading, the server communication component 116 provides a user selectable link to the CMS location where the uploaded media content is stored. In an example, upon selecting the link, the user must enter his/her authentication information (e.g. username and password) to access the uploaded media content. In an example, upon accessing the media content in the CMS, the user can make further edits to the media content or metadata.
According to an aspect of the subject disclosure, in an example, the UI wizards (e.g. 116) provide a push button that starts the upload. In an implementation, the uploading is commenced upon selection (e.g. by a mouse click or voice command) of the upload push button by a user. In other words, in an implementation, uploading doesn't automatically begin upon formation of a bundle. In an implementation, a user must both select the upload push button and provide authentication information (e.g. username and password) to cause the UI wizard 116 to commence the uploading. The UI wizards can contain indicators that provide information about the upload queue, completed uploads and failed uploads. In one embodiment of the subject disclosure, the network connection between the client computer 100 and the server computer 200 is automatically established upon selection of the upload push button. In another embodiment of the subject disclosure, the user must establish a network connection between the client computer 100 and the server computer 200 prior to selecting the upload push button.
At 1030, media content files that the user desires to upload, distribute and/or monetize are selected, for example, by dragging and dropping them in a UI wizard box. At 1040, metadata associated with the media content is identified. The UI wizards contain numerous interactive wizards (or interactive user interfaces) for gathering information from a user of the client computer, for example, by prompting the user to provide information and providing the user with selectable (e.g. by way of soft screen buttons) menu choices. In addition to obtaining information manually entered by a user by way of input devices, the UI wizards also use ID3 tags, cloud memory and client computer memory to populate metadata fields. In an example implementation, the UI wizards initially populate (or pre-fill) the metadata fields by using metadata that was generated during a previous instance of media content upload, and prompt the user to edit (or update) the populated metadata fields. For example, the user can update the title of the media content or update his/her monetization policy for a particular geographical region with respect to this particular media content. According to an aspect of the present invention, the user of the client computer has the option of not providing certain information requested by the UI wizards. Moreover, in an implementation of the subject disclosure, the UI wizards can obtain standardized metadata (e.g. based on regulations for monetization or distribution or subject matter classification in a particular geographical region) from the server computer). At 1050, the media content and metadata are bundled. At 1060, the bundle is uploaded to a server computer by way of a network connection. According to an aspect of the subject disclosure, the network connection need not be activated (or enabled) until after the bundling (at 1050) is completed.
Referring now to
The system 1100 also includes one or more server(s) 1104. The server(s) 1104 can also be hardware or hardware in combination with software (e.g., threads, processes, computing devices). The servers 1104 can house threads to perform, for example, sending a video manifest, monitoring client capabilities, etc. in accordance with the subject disclosure. One possible communication between a client 1102 and a server 1104 can be in the form of a data packet adapted to be transmitted between two or more computer processes where the data packet contains, for example, portions of the media content or metadata stream(s). The data packet can include a cookie and/or associated contextual information, for example. The system 1100 includes a communication framework 1106 (e.g., a global communication network such as the Internet) that can be employed to facilitate communications between the client(s) 1102 and the server(s) 1104. The server(s) 1104 can represent the server computer 200.
Communications can be facilitated via a wired (including optical fiber) and/or wireless technology. The client(s) 1102 and server(s) 1104 can be located in different countries of the world. The client(s) 1102 are operatively connected to one or more client data store(s) 1108 that can be employed to store information local to the client(s) 1102 (e.g., cookie(s) and/or associated contextual information). Similarly, the server(s) 1104 are operatively connected to one or more server data store(s) 1110 that can be employed to store information local to the servers 1104.
The server(s) 1104 can include server(s) of a service provider that publishes/distributes media content to its subscribers. The client(s) 1102 can include computers of individual content providers or professional distributors. According to an aspect of the subject disclosure, the UI wizards provide scalable technology because they can be used by either individual content creators or large distribution houses. Thus, the service provider can partner with any client regardless of the size, location or technology sophistication level of the client partner. According to an aspect of the subject disclosure, the server 1104 provides only certain UI wizards to a particular partner and masks others, depending on the requirements of the particular partner.
The system bus 1208 can be any of several types of bus structure(s) including the memory bus or memory controller, a peripheral bus or external bus, and/or a local bus using any variety of available bus architectures including, but not limited to, Industrial Standard Architecture (ISA), Micro-Channel Architecture (MSA), Extended ISA (EISA), Intelligent Drive Electronics (IDE), VESA Local Bus (VLB), Peripheral Component Interconnect (PCI), Card Bus, Universal Serial Bus (USB), Advanced Graphics Port (AGP), Personal Computer Memory Card International Association bus (PCMCIA), Firewire (IEEE 1394), and Small Computer Systems Interface (SCSI).
The system memory 1206 includes volatile memory 1210 and non-volatile memory 1212. The basic input/output system (BIOS), containing the basic routines to transfer information between elements within the computer 1202, such as during start-up, is stored in non-volatile memory 1212. By way of illustration, and not limitation, non-volatile memory 1212 can include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory 1210 includes random access memory (RAM), which acts as external cache memory. According to present aspects, the volatile memory may store the write operation retry logic and the like. By way of illustration and not limitation, RAM is available in many forms such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM).
Computer 1202 may also include removable/non-removable, volatile/non-volatile computer storage media.
It is to be appreciated that
A user enters commands or information into the computer 1202 through input device(s) 1228. Input devices 1228 include, but are not limited to, a pointing device such as a mouse, trackball, stylus, touch pad, keyboard, microphone, joystick, game pad, satellite dish, scanner, TV tuner card, digital camera, digital video camera, web camera, and the like. These and other input devices connect to the processing unit 1204 through the system bus 1208 via interface port(s) 1230. Interface port(s) 1230 include, for example, a serial port, a parallel port, a game port, and a universal serial bus (USB). Output device(s) 1236 use some of the same type of ports as input device(s) 1228. Thus, for example, a USB port may be used to provide input to computer 1202 and to output information from computer 1202 to an output device 1236. Output adapter 1234 is provided to illustrate that there are some output devices 1236 like monitors, speakers, and printers, among other output devices 1236, which benefit from special adapters. The output adapters 1234 include, by way of illustration and not limitation, video and sound cards that provide a means of connection between the output device 1236 and the system bus 1208. It should be noted that other devices and/or systems of devices provide both input and output capabilities such as remote computer(s) 1238.
Computer 1202 can operate in a networked environment using logical connections to one or more remote computers, such as remote computer(s) 1238. The remote computer(s) 1238 can be a personal computer, a server, a router, a network PC, a workstation, a microprocessor based appliance, a peer device, a smart phone, a tablet, or other network node, and typically includes many of the elements described relative to computer 1202. For purposes of brevity, only a memory storage device 1240 is illustrated with remote computer(s) 1238. Remote computer(s) 1238 is logically connected to computer 1202 through a network interface 1242 and then connected via communication connection(s) 1244. Network interface 1242 encompasses wire and/or wireless communication networks such as local-area networks (LAN) and wide-area networks (WAN) and cellular networks. LAN technologies include Fiber Distributed Data Interface (FDDI), Copper Distributed Data Interface (CDDI), Ethernet, Token Ring and the like. WAN technologies include, but are not limited to, point-to-point links, circuit switching networks like Integrated Services Digital Networks (ISDN) and variations thereon, packet switching networks, and Digital Subscriber Lines (DSL).
Communication connection(s) 1244 refers to the hardware/software employed to connect the network interface 1242 to the bus 1208. While communication connection 1244 is shown for illustrative clarity inside computer 1202, it can also be external to computer 1202. The hardware/software necessary for connection to the network interface 1242 includes, for exemplary purposes only, internal and external technologies such as, modems including regular telephone grade modems, cable modems and DSL modems, ISDN adapters, and wired and wireless Ethernet cards, hubs, and routers.
The illustrated aspects of the disclosure may also be practiced in distributed computing environments where certain tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules can be located in both local and remote memory storage devices. Moreover, the systems and processes described herein can be embodied within hardware, such as a single integrated circuit (IC) chip, multiple ICs, an application specific integrated circuit (ASIC), or the like. Further, the order in which some or all of the process blocks appear in each process, for example in
What has been described above includes examples of the implementations of the subject disclosure. It is, of course, not possible to describe every conceivable combination of components or methodologies for purposes of describing the claimed subject matter, but many further combinations and permutations of the subject innovation are possible. Accordingly, the claimed subject matter is intended to embrace all such alterations, modifications, and variations that fall within the spirit and scope of the appended claims. Moreover, the above description of illustrated implementations of this disclosure, including what is described in the Abstract, is not intended to be exhaustive or to limit the disclosed implementations to the precise forms disclosed. While specific implementations and examples are described herein for illustrative purposes, various modifications are possible that are considered within the scope of such implementations and examples, as those skilled in the relevant art can recognize.
In particular and in regard to the various functions performed by the above described components, devices, circuits, systems and the like, the terms used to describe such components are intended to correspond, unless otherwise indicated, to any component which performs the specified function of the described component (e.g., a functional equivalent), even though not structurally equivalent to the disclosed structure, which performs the function in the herein illustrated exemplary aspects of the claimed subject matter. In this regard, it will also be recognized that the innovation includes a system as well as a computer-readable storage medium having computer-executable instructions for performing the acts and/or events of the various methods of the claimed subject matter.
As used in this subject disclosure, the term “or” is intended to mean an inclusive “or” rather than an exclusive “or”. That is, unless specified otherwise, or clear from context, “X employs A or B” is intended to mean any of the natural inclusive permutations. That is, if X employs A; X employs B; or X employs both A and B, then “X employs A or B” is satisfied under any of the foregoing instances. In addition, the articles “a” and “an” as used in this application and the appended claims should generally be construed to mean “one or more” unless specified otherwise or clear from context to be directed to a singular form.
Reference throughout this specification to “one implementation” or “an implementation” means that a particular feature, structure, or characteristic described in connection with the implementation is included in at least one implementation. Thus, the appearances of the phrase “in one implementation” or “in an implementation” in various places throughout this specification can, but are not necessarily, referring to the same implementation, depending on the circumstances. Furthermore, the particular features, structures, or characteristics may be combined in any suitable manner in one or more implementations.
This application claims the benefit of U.S. Provisional Application No. 61/653,976, filed May 31, 2012 and entitled CLIENT DEVICE BASED USER FRIENDLY INTERFACE WIZARDS FOR GATHERING, EDITING AND PACKAGING MEDIA CONTENT AND METADATA FOR UPLOADING TO A CONTENT MANAGEMENT SYSTEM, the entirety of which is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
61653976 | May 2012 | US |