[go: up one dir, main page]

WO2014172601A1 - Method and apparatus for configuring multimedia sequence using mobile platform - Google Patents

Method and apparatus for configuring multimedia sequence using mobile platform Download PDF

Info

Publication number
WO2014172601A1
WO2014172601A1 PCT/US2014/034596 US2014034596W WO2014172601A1 WO 2014172601 A1 WO2014172601 A1 WO 2014172601A1 US 2014034596 W US2014034596 W US 2014034596W WO 2014172601 A1 WO2014172601 A1 WO 2014172601A1
Authority
WO
WIPO (PCT)
Prior art keywords
ticket
media
story
media content
server system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/US2014/034596
Other languages
French (fr)
Inventor
Valeri B. CHIROKOV
Vladimir E. KOLTUNOV
Brian D. REHFUSS
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
VOYZEE LLC
Original Assignee
VOYZEE LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by VOYZEE LLC filed Critical VOYZEE LLC
Publication of WO2014172601A1 publication Critical patent/WO2014172601A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23412Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs for generating or manipulating the scene composition of objects, e.g. MPEG-4 objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234309Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44012Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving rendering scenes according to scene graphs, e.g. MPEG-4 scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47205End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for manipulating displayed content, e.g. interacting with MPEG-4 objects, editing locally
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/437Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server

Definitions

  • the present exemplary embodiment relates to a method for generating a video file and various embodiments of server systems and user devices associated with generation of the video file. It finds particular application in conjunction with generating a video file at a server system after receiving media content and editing information for media slides arranged on a user device to form a story, and will be described with particular reference thereto. However, it is to be appreciated that the present exemplary embodiment is also amenable to other like applications.
  • the invention may be used collection any type of information in any type of electronic media on media slides, arranging the slides in a desired manner, and generating a video file for presentation of the media collection in the desired arrangement.
  • smart phones and other computing devices may include on-board cameras for capturing a photo image, recording video, or recording audio and may have Internet access for posting such images, video, and audio to social media or other web sites.
  • Smart phones may include applications that are a capable of authoring a story comprising a variety of multimedia content through a guided process on the host device, creates a video file on the host device for presenting the story, and uploading or sharing the video file from the host device.
  • a method for generating a video file includes: receiving a plurality of ticket requests from a user device at a server system via a network, wherein the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story, each ticket request identifying media content and editing information for the corresponding media slide; processing the plurality of ticket requests at the server system to generate a ticket assembly order and to prepare for receiving the media content associated with the plurality of media slides, the ticket assembly order including ordered instructions for assembling and uploading the media content associated with the plurality of media slides; sending the ticket assembly order to the user device from the server system; receiving the media content associated with the plurality of media slides from the user device at the server system, the received media content having been assembled and uploaded by the user device in response to the ticket assembly order; and transcoding the received media content at the server system in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests
  • a server system associated with generation of a video file includes: a communication interface configured to receive a plurality of ticket requests from a user device via a network, wherein the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story, each ticket request identifying media content and editing information for the corresponding media slide; and a ticket processor configured to process the plurality of ticket requests to generate a ticket assembly order and to prepare for receiving the media content associated with the plurality of media slides, the ticket assembly order including ordered instructions for assembling and uploading the media content associated with the plurality of media slides, wherein the ticket processor is configured to send the ticket assembly order to the user device via the communication interface and the network; wherein the communication interface is configured to receive the media content associated with the plurality of media slides from the user device, the received media content having been assembled and uploaded by the user device in response to the ticket assembly order.
  • server system also includes a transcoding processor configured to transcode the received media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form a video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device.
  • a transcoding processor configured to transcode the received media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form a video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device.
  • the method for generating a video file includes: sending a plurality of ticket requests to a server system from a user device via a network, wherein the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story, each ticket request identifying media content and editing information for the corresponding media slide; receiving a ticket assembly order from the server system at the user device, the ticket assembly order having been generated by the server system in response to the plurality of ticket requests and including ordered instructions for assembling and uploading the media content associated with the plurality of media slides; assembling the media content associated with the plurality of media slides in accordance with the ticket assembly order; uploading the assembled media content to the server system from the user device in accordance with the ticket assembly order; and receiving a publishing link to a video file from the server system at the user device, the server system having generated the publishing link after having transcoded the uploaded media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of
  • a user device associated with generation of a video file includes: a communication interface configured to send a plurality of ticket requests to a server system via a network, wherein the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story, each ticket request identifying media content and editing information for the corresponding media slide; wherein the communication interface is configured to receive a ticket assembly order from the server system, the ticket assembly order having been generated by the server system in response to the plurality of ticket requests and including ordered instructions for assembling and uploading the media content associated with the plurality of media slides.
  • the user device also includes: a ticket processor configured to assemble the media content associated with the plurality of media slides in accordance with the ticket assembly order; and an upload processor configured to upload the assembled media content to the server system in accordance with the ticket assembly order via the communication interface and the network.
  • the communication interface is configured to receive a publishing link to a video file from the server system, the server system having generated the publishing link after having transcoded the uploaded media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form the video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device and after having stored the video file.
  • FIGs. 1A through 1C provide a functional diagram of an exemplary embodiment of a user interface for creating and managing a story defined by media slides that include various types of media content;
  • FIG. 2 is a block diagram of an exemplary embodiment of a server system
  • FIG. 3 is a flowchart of an exemplary embodiment of a process for generating a video file
  • FIG. 4 provides a functional diagram of an exemplary user registration sequence
  • FIG. 5 provides a functional diagram of an exemplary user login sequence
  • FIG. 6 is an exemplary screen display for managing a story
  • FIG. 7 is an exemplary screen display of a carousel menu for editing a slide of a story
  • FIG. 8 is an exemplary screen display of a menu for editing a story
  • FIGs. 9A through 9D provide a functional diagram of another exemplary embodiment of a user interface for creating and managing a story defined by media slides that include various types of media content;
  • FIG. 10 is an exemplary screen display of a pop-up window for managing a slide of a story
  • FIG. 11 is an exemplary screen display of a drop-down menu for managing a story
  • FIGs. 12A and 12B provide a functional diagram of an exemplary embodiment of a process for generating a video file
  • FIG. 13 is a flowchart of another exemplary embodiment of process for generating a video file
  • FIG. 14 is a block diagram of another exemplary embodiment of a server system
  • FIG. 15 is a flowchart of yet another exemplary embodiment of a process for generating a video file.
  • FIG. 16 is a block diagram of an exemplary embodiment of a user device.
  • a description of an exemplary embodiment of a method and apparatus for configuring a multimedia sequence using a mobile platform is described herein. It is understood that the method and apparatus can be implemented in various embodiments using any suitable mobile platform or other type of computer platform, any suitable network architecture, and any suitable communication protocols and standards in any suitable combination.
  • a computer platform is understood to be a computing device with an operating system.
  • a mobile platform is understood to be a mobile computing device with an operating system.
  • AppleTM iOS (iPhone Operating System) application software for creating and sharing mixed media video stories is provided.
  • the iOS application (hereinafter “Voyzee App”) is installed upon an iOS powered device via user download from the Apple App StoreTM.
  • Voyzee When activated Voyzee allows a user to capture or import photos and/or video clips; edit captured and imported photos and/or video clips prior to publication and sharing as a single video file by recording and attaching voice-over narration to each photo and/or video clip, adding customized caption text to each photo and/or video clip, applying visual filter effects to each photo, moving and scaling each photo, rotating each photo, trimming start and end points of each video clip, and/or enabling or disabling ambient recorded audio of each video clip; select a title/thumbnail image for the final video file ("Story") prior to publication and sharing; create a text title for the final video file prior to publication and sharing; select a soundtrack to be played over the entire final video file prior to publication and sharing; rearrange the order that photos and/or video clips will be displayed in the final video file prior to publication and sharing, while preserving any edits made to individual photos and/or video clips; add and edit additional photos and/or video clips prior to publication and sharing; delete photos and/or video clips, along with any edits
  • the application software (hereinafter "Voyzee App") is designed for the Apple iPhone Operating System (iOS) and supports devices running iOS 4.3 and higher.
  • the Voyzee App is compatible with Apple iPhone 4, 4s, 5, ipod and/or future versions and/or derivatives.
  • the Voyzee App is distributed to user devices via download through the Apple App Store.
  • the Voyzee App fully supports both front and back facing device cameras and utilizes Apples multi-gesture interface.
  • the Voyzee App upon download and installation via the Apple App Store to a user device, the Voyzee App appears as a "VZ" app icon on the user device's home page.
  • a user initializes the Voyzee App by tapping the VZ app icon 100.
  • the first time the Voyzee App is initialized a Register/Login screen is displayed.
  • To create an account the user taps the "Register” button, which brings up the Account Setup screen 101.
  • To register an account the user fills in the requested information on the Account Setup screen and then taps the "Save” button.
  • the user is then sent an activation email to the account provided during registration.
  • the activation email contains a link, which the user clicks to activate the account 102.
  • the user After completing the registration process the user initializes the Voyzee App 103, at which point the Register/Login screen is displayed and the user fills in the required information and taps the "Login” button. After tapping the "Login” button, the user can access the user's story list (hereinafter "Home Page") 104. On the Home Page individual stories are displayed as square tiles with the title of the story underneath a thumbnail image of the cover slide. [0031] A user has four options to interact with the user Home Page, which includes opening the Settings screen 105, adding a new story 113, selecting an Existing Unpublished Story 119, and selecting an Existing Published Story 120.
  • the Settings screen is accessed by tapping the Settings button (the Settings button is a rectangular button displaying a gear) located on the upper left corner of the Home Page.
  • the Settings button is a rectangular button displaying a gear located on the upper left corner of the Home Page.
  • the Settings button is activated, the Home Page slides to the right and reveals the Settings Screen.
  • a user can logout/login to a Voyzee account 106 by tapping the button displaying the name provided during account registration; add social accounts 107 (e.g., Facebook, Twitter, etc.) by tapping the "Add social account” button and following the account verification prompts; turn streaming playback on or off 108 by tapping the "Streaming playback” button; clear the Voyzee App's memory cache 109 by tapping the "Clear cache” button; access the Feedback option 110 by tapping the "Feedback” button, which opens the device's email application and allows the user to send an email to support@voyzee.com; access the Support option 111 by tapping the "Support” button
  • the user can create a new story 113 by tapping the "Add story” button, located in the upper right corner of the Home Page.
  • the Add Slides Menu is displayed 114.
  • the user has three options with which to add new media to the story. The first is to import existing media (i.e. photos and/or video clips) from the device's media library 115 by tapping the button displaying "Existing media.” Tapping the "Existing media” button opens the device's media library and displays the user's camera roll and/or albums, which include any remote albums corresponding to any third party media storage accounts, including Facebook, Tumblr, Dropbox, Instagram, Flikr, and/or any compatible media storage service.
  • any third party media storage accounts including Facebook, Tumblr, Dropbox, Instagram, Flikr, and/or any compatible media storage service.
  • the user selects a photo(s) and/or a video clip(s) to import into the Voyzee App by tapping on the photo(s) and/or video clip(s) thumbnail image and then tapping on the "Use” button, located in the bottom right corner of the media library screen.
  • a user can import an unlimited number of photos and/or videos.
  • the selected photo(s) and/or video clip(s) are loaded into the Voyzee App and displayed as individual slides in the Story Creation Window 118 (see, e.g., FIG. 6).
  • the second option to add new media to a story available on the Add Slides Menu is to use the device's native camera application 116 by tapping the "Capture new media” button.
  • the "Capture new media” button is selected the device's native camera is opened, allowing the user to import a single photo or video clip.
  • the photo or video clip is then loaded and displayed in the Story Creation Window 118.
  • the user can repeat this process by accessing the Add Slides Menu, which is accessible in the Story Creation Window by tapping the "Add slide” button, located on the footer bar.
  • the photos and/or video clips captured through this method are also automatically saved to the device's camera roll.
  • the third option to add new media to a story available on the Add Slides menu is to use the Voyzee App's Tap-Tap Capture feature 117 by tapping the "Tap-Tap Capture” button.
  • the "Tap-Tap Capture” button is selected the device's camera is initialized through the Voyzee App's Tap-Tap Capture interface.
  • the Voyzee App's Tap-Tap Capture interface allows the user to utilize the device's camera to take and automatically import any number of photos and/or video clips in a single session.
  • a photo is captured using the Tap-Tap Capture interface by tapping one finger on any portion of the screen.
  • a video clip is captured by touching and holding with one finger on any portion of the screen.
  • the camera records video as long as the finger remains continuously touching the screen, and once the finger is lifted from the screen the camera stops recording the video clip.
  • a user exits the Tap-Tap Capture interface by tapping the "Done” button, located in the top left corner of the Tap-Tap Capture interface.
  • the "Done” button is selected, any captured photos and/or video clips are loaded and displayed as slides in the Story Creation Window. The photos and/or video clips captured through this method are also automatically saved to the device's camera roll.
  • An Existing Unpublished Story is a story in which the story creation process has begun but the story has not been published.
  • An Existing Unpublished Story is denoted on the Home Page as a story tile with a blue "NEW" ribbon across the upper left corner of the story thumbnail.
  • An Existing Published Story is a completed story that has been published and is denoted by a story tile without the "NEW" ribbon.
  • a user selects either an Existing Unpublished Story or an Existing Published Story by tapping on the corresponding story tile, which opens the Story Creation Window with the selected story's media loaded as slides.
  • the Story Creation Window (see, e.g., FIG. 6) is the central screen of the Voyzee App from which a user can access the editing options.
  • the Story Creation Window displays the imported and loaded media, i.e., photo(s) and video clip(s), in individual slides.
  • the currently selected media slide is displayed as the large thumbnail, which occupies the upper half of the window.
  • the previous and following slides can be selected in the large thumbnail display by touching a finger to the screen and either swiping it left to select the following slide or right to select the previous slide 122.
  • Two smaller slides are displayed below the large thumbnail of the currently selected slide. Of the two smaller displayed slides, the slide with a highlighted border is the currently selected slide.
  • the loaded slides can be scrolled through the small slide interface by touching a finger to one of the small slides and swiping it left or right. Any of the small slides can be tapped, which will designate the tapped slide as the selected slide and displace the slide displayed as the large thumbnail.
  • buttons displayed on the Story Creation Window There are seven buttons displayed on the Story Creation Window. Each button corresponds to a different action and can be initialized in any order. Located in the upper left corner, the "Home” button opens the Home Page when selected 164. The “Share” button, located in the upper right corner, initializes the publishing and sharing functions when selected 157. Located in the bottom left corner, the "Play story” button opens the Player Window, in which a preview of the current story is played as a slide show with each individual media slide and any accompanying edits 156. Located on the footer bar, the "Edit story” button opens the Edit Story Menu when selected 150. Located on the footer bar, the "Add slide” button initiates the Add Slides Menu when selected 114.
  • "Delete slide” button deletes the selected/highlighted media slide and the corresponding edits when selected 149.
  • the "Edit slide” button Located on the right side of the screen and just below the bisecting x-axis, the "Edit slide” button initializes the Slide Editing Carousel when selected 121.
  • Tapping the "Edit slide” button on the Story Creation Window initializes the Slide Editing Carousel 121 (see, e.g., FIG. 7).
  • the "Edit Slide” button changes to the "Done editing” button when the Slide Editing Carousel is initialized and is tapped to exit the Slide Editing Carouse.
  • the Slide Editing Carousel consists of two rows of editing options. The upper row contains the main editing tools and can be scrolled through by touching a finger to the row and swiping left or right. When one of the main editing tools is selected, the sub-options of that editing tool are displayed in the bottom row of the carousel.
  • the Slide Editing Carousel While the Slide Editing Carousel is open, the currently selected media slide is displayed as the large thumbnail that occupies the upper half of the window.
  • the previous and following slides can be selected in the large thumbnail display by touching a finger to the screen and either swiping it left to select the following slide or right to select the previous slide 122.
  • the available editing tools displayed in the top row of the Slide Editing Carousel depends on the type of media of which the selected slide consists. While a photo slide is selected, the carousel will display the "Cover” 123, “Caption” 125, “Narration” 129, photo “Trim” 133, "Rotate” 136, and “Filters” 146 tools. While a video clip slide is selected, the carousel will display the "Cover” 123, “Caption” 125, “Narration” 129, video “Trim” 133, and “Video” 143 tools.
  • the "Cover” tool is available and operates the same for both photo and video slides 123.
  • the button displayed in the bottom row of the carousel is labeled “Set slide as cover” 124.
  • the image of the selected slide which is then currently displayed as the large thumbnail in the above window, becomes the cover image and thumbnail for the story.
  • the cover image is the thumbnail which is displayed for the story tile on the Home Page.
  • the "Caption” tool is available and operates the same for both photo and video slides 125.
  • the button displayed in the bottom row of the carousel is labeled "Add caption” 126.
  • the Caption Text Box opens and a caption can be entered that does not exceed sixty-eight characters. If a caption is entered into the Caption Text Box and saved, the entered caption is displayed on the large thumbnail of the selected slide above the Slide Editing Carousel.
  • buttons displayed in the bottom row of the carousel are labeled "Edit caption” 127 and "Remove caption” 128.
  • the Caption Text Box opens and the previously entered caption can be changed.
  • the "Remove caption” button is tapped, the previously added caption is deleted.
  • the "Narration" tool is available and operates the same for both photo and video slides 129.
  • the button displayed in the bottom row of the carousel is labeled “Record” 130.
  • the Recording Message and Timer is displayed and the device's microphone begins and continues to record audio/voice-over narration until the "Stop” button is tapped.
  • the buttons displayed in the bottom row of the carousel are labeled "Play” 131 , "Record” 130, and "Remove” 132.
  • the "Play” button When the "Play” button is, the previously recorded audio/voice-over narration plays through the device's speakers. When narration has been previously recorded to the slide, the "Record” tool records over the previous audio/voice-over narration. When the "Remove” button is tapped, the previously recorded audio/voice-over narration is deleted.
  • the photo "Trim” tool is only available in the carousel for photo slides 133.
  • the button displayed in the bottom row of the carousel is labeled “Trim” 134.
  • the Photo Trim Box opens and the photo can be scaled and moved. To scale or zoom in on a photo, two fingers are placed close together on the screen and moved apart without lifting them from the screen. To move a scaled photo, a finger is touched to the photo and moved in the desired direction without lifting the finger from the screen.
  • the "Rotate” tool is only available in the carousel for photo slides 136.
  • the "Rotate left” 137 or “Rotate right” 138 tools are tapped, the large thumbnail of the selected slide displayed above the carousel rotates either left or right depending on which tool is selected.
  • the video "Trim” tool is only available for video slides 139.
  • the button displayed in the bottom row of the carousel is labeled "Trim” 140.
  • the Video Trim Screen opens.
  • the start and end frames of the video clip can be adjusted by placing a finger on either the left or right round buttons on the slide tool and dragging the button until the left or right thumbnail displays the desired start or end frame.
  • Tapping the button displaying "Preview” on the Video Trim Screen opens a player window, in which a preview of the trimmed video clip plays 141.
  • buttons displayed in the bottom row of the carousel are labeled “Trim” 140 and "Remove trim” 142.
  • the "Trim” tool in the lower row opens the Video Trim Screen and the video clip can be trimmed again.
  • the "Remove” button is tapped, any trimming previously applied to the video clip is removed.
  • the "Video” tool is only available in the carousel for video slides 143.
  • the "Disable audio” tool is displayed in the bottom row of the carousel 144.
  • the "Disable audio” button is tapped, the ambient audio attached to the video clip is removed.
  • the "Enable audio” tool is displayed in the bottom row of the carousel 145.
  • the "Enable audio” button is tapped, the ambient audio attached to the video clip is restored.
  • the "Filters” tool is available and operates only for photo slides 146.
  • the lower row of the carousel is populated with thumbnails of the selected slide, to which each have a different filter effect applied 147.
  • the types of filter effects provided can include original, pavo, ursa, grus, grayscale, apus, dorado, hydra, musca, sepia, and vela filter effects.
  • the different filter effects in the bottom row can be scrolled through be touching and sliding a finger across the bottom row.
  • An individual filter effect can be selected by tapping the thumbnail displaying the desired filter in the bottom row.
  • the filter effect is applied to the large thumbnail of the selected photo slide displayed above the Edit Slide Carousel.
  • Each filter effect changes the red/blue/green balance, contrast, and exposure of the photo to varying degrees.
  • the applied filter effect can be changed any number of times.
  • the Edit Story Menu contains either four or five editing tools.
  • the Edit Story Menu contains four editing tools when a new story or an existing unpublished story is being edited.
  • the four editing tools that are always present are "Reorder slides” 151 , "Select soundtrack” 152, "Change story title” 153, and "Remove whole story” 154.
  • the Edit Story Menu also contains the "Revert story from server” 155 editing tool (see, e.g., FIG. 8).
  • the Slide Order Window opens.
  • the Slide Order Window contains each slide stacked vertically in the order it will appear in the final story with the first slide on top.
  • a slide's position in the final story can be edited in the Slide Order Window.
  • the Grab icon consisting of three solid bars stacked vertically and positioned directly to the right of the corresponding slide thumbnail, is used to edit the order of a slide. To move a slide, one finger is placed on the device's screen on the Grab icon and is move up or down without lifting the finger. When the slide is moved into the desired place in the slide order, the grab icon is released and the slide drops into place.
  • the Soundtrack Window opens.
  • music can be turned ON or OFF, soundtracks can be previewed, and a soundtrack can be selected. If the music option is turned off, then the final published story will not contain a soundtrack. If the music option is turned on and a soundtrack is selected, then it will play across the entirety of the final published story.
  • the ON/OFF toggle for the music is located in the upper right quadrant of the Soundtrack Window. It is activated and deactivated by tapping the screen directly on the toggle. The toggle is deactivated and the music is OFF when the toggle displays "OFF" and is white in color.
  • the toggle is activated and the music is ON when the toggle displays "ON" and is blue in color.
  • Each soundtrack can be previewed over the device's speakers by tapping the square play button to the left of each soundtrack. Tapping the white square directly across from a desired song assigns it as the soundtrack for the final story.
  • the "Save” button in the top right corner of the window must be tapped to exit and save any edits made in the Soundtrack Window. Tapping the "Cancel” button in the top left corner exits the Soundtrack Window without saving any edits.
  • the Story Title Window opens.
  • the Story Title Window allows the device's on screen keyboard to be used to type a title for the final story that does not exceed sixty-eight characters.
  • the "Save” button in the top right corner of the window must be tapped to exit and save any edits made in the Story Title Window. Tapping the "Cancel” button in the top left comer exits the Story Title Window without saving any edits.
  • the story title as edited with the "Change story title” tool is displayed on the center of the header bar of the Story Creation Window 118.
  • warning bubble opens.
  • the warning bubble contains a "Cancel” button and a “Yes” button. If the "Cancel” button is tapped the warning bubble disappears and the Story Creation Window is displayed. If the "Yes” button is tapped the entire story is deleted.
  • warning bubble opens.
  • the warning bubble contains a "Cancel” button and a “Yes” button. If the "Cancel” button is tapped the warning bubble disappears and the Story Creation Window is displayed. If the "Yes” button is tapped the last version of the story to be published is loaded from the server and any subsequent edits are lost.
  • the Share Story menu contains five buttons. If the "Share with Email” button 160 is tapped the device's native email application loads and pre-filled email is displayed, with which the story can be shared to any contact typed into the "To:” field. If the "Share with SMS” button 161 is tapped, the device's native SMS application loads and pre-filled SMS message is displayed, with which the story can be shared to any contact typed into the "To:” field. If the "[username] (Twitter)” button 162 is tapped, a Twitter message box is opened that enables the story to be posted directly to Twitter. If the "[username] Facebook” button 163 is tapped, a Facebook post box is opened that enables the story to be posted directly to Twitter. If the "Cancel” button is tapped, the Story Creation Window is displayed. After a story is published it appears as an existing published story on the Home Screen.
  • FIG. 2 is a flowchart shows an embodiment of the Voyzee App backend server processes and systems.
  • the system is comprised of at least one Web Server 202, at least one Upload Point Server 203, at least one Storage Server 204, an expandable Transcoding Cluster 205, an expandable Messaging Cluster 206, a Messaging Gateway 207 and User device 201 that are communicatively coupled to one another.
  • the network 208 connecting the User device and the server system and the network 209 connecting the components of the server system may be partially or entirely comprised of, for example, a local area network (LAN), a wireless LAN (WLAN), a metropolitan area network (MAN), a wireless MAN (WMAN), a wide area network (WAN), a wireless WAN (WWAN), a personal area network (PAN), a wireless PAN (WPAN), the Internet, and/or wireless standards such as, for example, IEEE 802.11 standards, wireless fidelity (WiFi), Bluetooth, infrared, WiMAX, Long Term Evolution (LTE) and/or future versions and/or derivatives thereof.
  • LAN local area network
  • WLAN wireless LAN
  • MAN metropolitan area network
  • WMAN wireless MAN
  • WAN wide area network
  • WWAN wireless WAN
  • PAN personal area network
  • WPAN wireless PAN
  • the Internet and/or wireless standards such as, for example, IEEE 802.11 standards, wireless fidelity (WiFi), Bluetooth, inf
  • the Web Server(s) 202, Upload Point Server(s) 203, Storage Server(s) 204, Transcoding Cluster 205, Messaging Cluster 206, and Messaging Gateway 207 comprises at least a computation unit and a data storage unit.
  • the computation unit may be a processor or a central processing unit of the server that carries out instructions stored in the data storage unit.
  • the data storage unit may be, for example, volatile memory such as random access memory (RAM), non-volatile memory such as read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computation unit.
  • volatile memory such as random access memory (RAM), non-volatile memory such as read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computation unit.
  • RAM random access memory
  • ROM read-only memory
  • EEPROM electrically erasable programmable read-
  • the User device 201 comprises of a user interface and a user device.
  • the user device comprises an input device and an output device.
  • the user device allows the User to enter user input to be delivered to the server.
  • the output device displays or presents data received from the server to the user.
  • the input device and output device may be physically embodied in one device, such as an iOS device with a touch screen interface.
  • FIG. 4 is a flowchart of the data flow between the frontend and backend processes during User Registration.
  • the client as shown in FIG. 4 represents actions occurring with respect to the User device 201 and User Interface (see, e.g., FIGs. 1A- C), while the server side as shown in FIG. 4 represents actions with respect to the Server System.
  • the User Registration process begins with the User initializing the Voyzee App as described in the Ul summary.
  • the User provides the required account registration information which is submitted 401 to the Web Server 202.
  • the Web Server constructs a User Account ID, which is saved onto the Database 2 0.
  • the Web Server then generates and transmits 402 an email, containing an activation link, to the User email account.
  • the User accesses the activation link, submitting 403 an activation request to the Web Server.
  • the Web Server activates the user account and updates the user information on the Database, allowing the User to login into the Voyzee Account.
  • FIG. 5 is a flowchart of the data flow between the frontend and backend processes during User Login.
  • the client as shown in FIG. 5 represents actions occurring with respect to the User device 201 and User Interface (see, e.g., FIGs. 1A- C), while the server side as shown in FIG. 5 represents actions with respect to the Server System (see, e.g., FIG. 2).
  • the User Login process begins with the User initializing the Voyzee App as described in the Ul summary. Once the User enters Login information, a request 501 to authenticate the user information is sent to the Web Server 202.
  • the Web Server stores the user information in its Database 210.
  • the Web Server After the Web server receives the request from the User interface and authenticates the User Account ID, the Web Server generates a list of the User's stories, story tickets and User account information. The Web Server then transmits 502 the information back to the User interface and user device, on which the User account information and list of stories are displayed.
  • FIG. 3 is a flowchart of the data flow between the frontend and backend processes when a new story is created.
  • the client as shown in FIG. 3 represents actions occurring with respect to the User device 201 and User Interface (see, e.g., FIGs. 1 A-C), while the server side as shown in FIG. 3 represents actions with respect to the Server System (see, e.g., FIG. 2).
  • the User Login process begins with the User initializing the Voyzee App as described in the Ul summary.
  • the entire Story Editing process is conducted and stored on the User device. Any edits to media is stored as data layers on top of the corresponding media slides.
  • the User device transmits 301 a ticket request for each individual piece of media and editing data layer to the Web Server (API).
  • the Web Server creates ticket information, including an order of ticket assembly, for each individual piece of media and editing data layer 302.
  • the Web Server sends the ticket information to the User device 303 and sends the ticket information and overall process directions through the Messaging Gateway 207 to the Messaging Servers 206, which receive and transmit internal server system requests and notices.
  • the Messaging Servers transmit the ticket information and overall process directions through the internal network 209 to the Upload Point Server, Storage Server, and Transcoding Cluster.
  • the User device assigns the ticket information to each corresponding piece of media and editing data layer, which is then uploaded 304 to the Upload Point Server 203.
  • the Upload Point Server stores the ticket and story information in its Database 211 and sends the media and editing data layers to the Storage Server 204 and Transcoding Cluster 205.
  • the Transcoding Cluster conducts the transcoding process, which assembles the pieces of media and editing data layers into a single video file, as per the instructions received from the Web Server via the Messaging Cluster.
  • the transcoding process is completed the finished story is published to the Storage Server and the User is sent a publishing link to the final video story through the messaging center and Web Server. With the publishing link, the final video story can be viewed using a secure or unsecure (http or https) connection from any device capable of receiving and display streaming video.
  • Google AndroidTM Operating System (“Android”) application software for creating and sharing mixed media video stories.
  • the Android application (hereinafter “Voyzee App”) is installed in a computer platform (i.e., Android device) that uses the AndroidTM Operating System via user download from Google PlayTM.
  • Voyzee When activated Voyzee allows a user to capture or import photos and/or video clips; edit captured and imported photos and/or video clips prior to publication and sharing as a single video file by recording and attaching voice-over narration to each photo and/or video clip, adding customized caption text to each photo and/or video clip, applying visual filter effects to each photo, cropping each photo, rotating each photo, and/or trimming start and end points of each video clip; select a title/thumbnail image for the final video file ("Story") prior to publication and sharing; create a text title for the final video file prior to publication and sharing; select a soundtrack to be played over the entire final video file prior to publication and sharing; rearrange the order that photos and/or video clips will be displayed in the final video file prior to publication and sharing, while preserving any edits made to individual photos and/or video clips; add and edit additional photos and/or video clips prior to publication and sharing; delete photos and/or video clips, along with any edits made thereto, prior to publication and sharing a final video file;
  • the application software (hereinafter "Voyzee App") is designed for Google Android Operating System (Android) and supports devices running Android 2.3 and higher and/or future versions and/or derivatives.
  • the Voyzee App is distributed to user devices via download through Google Play.
  • the Voyzee App fully supports both front and back facing device cameras and utilizes Android's multi-gesture interface.
  • the Voyzee App upon download and installation via Google Play to a user device, the Voyzee App appears as a "VZ" app icon on the user device's home page.
  • a user initializes the Voyzee App by tapping the VZ app icon 900.
  • the first time the Voyzee App is initialized a Register/Sign In screen is displayed 901.
  • To create an account the user taps the "Register” button, which brings up the Account Registration Screen 901.
  • To register an account the user fills in the requested information on the Account Registration Screen and then taps the "OK” button.
  • the user is then sent a welcome email to the account provided during registration.
  • the welcome email verifies that the user account has been activated 902.
  • the user After completing the registration process, the user is automatically signed into his Voyzee account or the user can initialize the Voyzee App 903, at which point the Register/Sign In Screen is displayed and the user fills in certain sign-in information and taps the "OK" button. After tapping the "OK” button, the user can access the user's story list (hereinafter "Home Screen") 904. On the Home Screen individual stories are displayed as square tiles with the title of the story appearing across the top of a thumbnail image of the cover slide.
  • a user has four options to interact with the user Home Screen, which includes opening the Settings Menu 905, adding a new story 915, selecting an Existing Unpublished Story 921 , and selecting an Existing Published Story 922.
  • the Settings Menu is accessed by tapping the device's Menu button (the Menu button is the button located on the lower left corner of the front face of an Android device).
  • the Settings button is the button located on the lower left corner of the front face of an Android device.
  • the Settings button is the button located on the lower left corner of the front face of an Android device.
  • the Settings button is the button located on the lower left corner of the front face of an Android device.
  • the Settings Menu pops up from the bottom of the screen and contains three options: 1. Sign Out; 2. Preferences; 3. Refresh 905.
  • a user can Sign Out/Sign In to a Voyzee account 906 by tapping the button labeled "Sign Out” or “Sign In,” depending whether the user is already signed into an account; refresh the stories displayed in the Home Screen by selecting the button labeled "Refresh”; and access the Preferences Menu 908 by selecting the button labeled "Preferences.”
  • the user can clear the Voyzee App's memory cache 909 by tapping the "Clear” button; access the Feedback option 910 by tapping the “Feedback” button, which opens the device's email application and allows the user to send an email to support@voyzee.com; access the Support option 911 by tapping the "Support” button, which opens a screen containing the Voyzee App's support documentation; access the Terms of Service option 912 by tapping the "Terms of Service” button, which opens a screen containing the Voyzee App's terms of service; access the Privacy Policy option 913 by tapping the "Privacy Policy” button, which opens a screen containing the Voyzee App's Privacy Policy; and access the Contact option 914 by tapping the "Contact” button, which opens a screen containing the Voyzee App's Contact information.
  • the user can create a new story 915 by tapping the New Story button, located in the upper right corner of the Home Screen and appearing as a plus sign in circle.
  • the Add Story Name pop-up window is displayed 916.
  • the device's native Gallery app opens, and the user has two options to Add Slide(s) 917.
  • New media i.e., photos and/or video clips
  • new media can be captured with the device's native Camera Interface 919.
  • the user selects a photo(s) and/or a video clip(s) to import into the Voyzee App from the device's Camera Roll or Media Albums, which include any remote albums corresponding to any third party media storage accounts, including Facebook, Tumblr, Dropbox, Instagram, Flikr, and/or any compatible media storage device, by tapping on the photo(s) and/or video clip(s) thumbnail image and then tapping on the button displaying a graphic Check Mark, located in the upper left corner of the media album screen.
  • a user can import an unlimited number of photos and/or videos.
  • the selected photo(s) and/or video clip(s) are loaded into the Voyzee App and displayed as individual slides in the Story Creation Window 920.
  • the second option to add new media to a story available on the Add Slides Menu is to use the device's native Camera Interface 919, the operation of which may be variable based on the device used.
  • An Existing Unpublished Story is a story in which the story creation process has begun but the story has not been published.
  • An Existing Unpublished Story is denoted on the Home Screen as a story tile with a blue "NEW" ribbon across the upper left corner of the story thumbnail.
  • An Existing Published Story is a completed story that has been published and is denoted by a story tile without the "NEW" ribbon.
  • a user selects either an Existing Unpublished Story or an Existing Published Story by tapping on the corresponding story tile, which opens the Story Creation Window 920 with the selected story's media loaded as slides.
  • the Story Creation Window is the central screen of the Voyzee App, from which a user can access the editing options.
  • the Story Creation Window displays the imported and loaded media, i.e., photo(s) and video clip(s), in individual slides.
  • the currently selected media slide is prominently displayed as the large thumbnail.
  • the previous and following slides can be selected in the large thumbnail display by touching a finger to the screen and either swiping it left to select the following slide or right to select the previous slide 923. Smaller slides are displayed below the large thumbnail of the currently selected slide.
  • the loaded slides can be scrolled through the small slide interface by touching a finger to one of the small slides and swiping it left or right. Any of the small slides can be tapped, which will designate the tapped slide as the selected slide and displace the slide displayed as the large thumbnail.
  • buttons displayed on the Story Creation Window There are four buttons displayed on the Story Creation Window. Each button corresponds to a different action and can be initialized in any order. Located in the upper left corner, the "VZ" icon button opens the Home Screen when selected 924. The "+” button, located in the upper right corner, is the Add Slide(s) button and initiates the add media slides process (described above) when selected 917. Located in the upper right corner and appearing as downward facing triangle in a circle, the Drop Down Story Edit Menu 925 displays the story editing options in a drop down menu when selected. Located in the upper right corner and appearing as a gear inside a circle, the "Tune” button opens the Tune Menu and displays the available Slide Actions for the currently selected slide 926 (see, e.g., FIG. 10). In addition to the four buttons displayed on the screen, the device's Return button can be pressed while the Story Creation Window is open to return to the Home screen 924.
  • Selecting the "Tune” button 926 displays the Tune Menu, which contains up to six options for Slide Actions, depending on what previous edits have been made to the selected slide (see, e.g., FIG. 10).
  • the "Caption” tool displays the “Edit Caption” pop-up interface when selected and allows a user to enter or edit a caption for the selected slide 927. When a caption is entered for a slide, the caption text is displayed underneath the large thumbnail of the selected slide.
  • the "Set As Cover” tool designates the image of the selected slide, which is then currently displayed as the large thumbnail, as the cover image and thumbnail for the story 928.
  • the "Delete Slide” tool displays the Delete Slide pop-up interface when selected and allows a user to choose to delete the current slide from the story 929.
  • the "Delete Narration” tool which is only displayed if narration has been previously recorded to the slide, displays the Delete Narration pop-up interface when selected and allows a user to choose to delete recorded narration from the currently selected slide 930.
  • the "Insert Before” tool initiates the add media slide(s) process (described previously) 917 and allows a user to insert a new media slide into the story before the currently selected slide 931.
  • the "Edit Slide” tool 932 displays either the Photo Slide Editing Window 933 or the Video Slide Edit Window 934, depending on whether the currently selected slide consists of a photo or video clip.
  • the Tune menu can be exited and the Story Creation Window can be returned to by tapping anywhere on the device's screen other than the Tune menu or by pressing the device's Return button.
  • the "Edit Slide” tool 932 displays either the Photo Slide Editing Window 933 or the Video Slide Edit Window 934, depending on whether the currently selected slide consists of a photo or video clip.
  • the Photo Slide Editing Window is initialized 933 up to six tool icons are displayed.
  • the "Voice” tool displays the Record Narration Screen and allows a user to record voice-over narration to the slide 935.
  • the "Stop” button which is located in the upper right corner of the Record Narration Screen, is selected to return to the Photo Slide Editing Window.
  • the "Play” button appears under the "Voice” button and initializes the Play Narration Screen when selected, which plays back recorded narration 936 and returns to the Photo Slide Editing Window upon completion.
  • the rotate "Left” 938 and rotate “Right” 937 tool icons rotate the displayed photo slide 90 degrees left or right respectively.
  • the "Crop” tool icon Located along the upper left side of the Photo Slide Editing Window, the "Crop” tool icon initializes the Crop Photo Screen when selected 939.
  • a photo can be cropped by the orange crop box, and the crop box can be resized by touching and sliding any of the four arrow circles on the four sides of the box.
  • the "Done" icon in the bottom right corner is selected to accept any cropping applied in the Crop Photo Screen and to return to the Photo Slide Editing Window, or the device's Return button is pressed to exit without applying changes.
  • the "Effects" tool icon opens the Effects Screen, which contains photo effect tools that are built into Android 940.
  • the Preset Filters Screen is automatically displayed 941.
  • a filter can be applied to the selected photo slide.
  • Ten filter options are displayed beneath the large thumbnail of the currently selected slide and can be navigated by touching a finger to one of the filters on the screen and either swiping it left to view the following filters or right to view the previous filters 942.
  • the types of preset filters that can be provided include none, punch, vintage, B/W, bleach, instant, latte, blue, litho, and X process filters.
  • a filter is selected and applied to the currently selected slide by tapping the desired filter.
  • the Tilt and Mirror Screen is activated by selecting the middle icon on the footer bar of the Effects Screen.
  • the "Tilt" 943 and "Mirror” 944 icons are displayed.
  • the "Tilt” icon is selected, the Tilt Tool Screen is displayed and allows the currently selected slide to be rotated and cropped by simultaneously placing two fingers apart on the screen and rotating until the desired position is obtained.
  • the "Mirror” icon is selected, the Mirror Tool Screen is displayed and allows the currently selected slide image to be flipped from top to bottom or left to right by sliding a finger across the image in the desired direction.
  • the Adjustable Effects Screen is activated by selecting the icon located on the right side of the footer bar of the Effects Screen 945.
  • an effect can be applied to the selected photo slide and customized.
  • Nine adjustable effects options are displayed beneath the large thumbnail of the currently selected slide and can be navigated by touching a finger to one of the effects on the screen and either swiping it left to view the following effects or right to view the previous effects 946.
  • the types of adjustable effects provided can include autocolor, exposure, contrast, shadows, vibrance, curves, hue, saturation, and BW filter effects.
  • An effect is selected and applied to the currently selected slide by tapping the desired filter.
  • the "Save” icon in the upper left comer is selected to apply edits made in the Effects Screen and return to the Photo Slide Editing Window.
  • the device's Return button is pressed to abandon edits and return to the Photo Slide Editing Window.
  • the "Done” icon in the upper left corner of the Photo slide Editing Window is selected to apply edits and return to the Story Creation Window 947.
  • the device's Return button is pressed to abandon edits made in the Photo Slide Editing Window and to return to the Story Creation Window 947.
  • Video Slide Editing Window When the Video Slide Editing Window is initialized 934, by selecting the "Edit Slide” tool, two tool icons and a slide tool are displayed. Located in the upper right corner, the “Voice” tool displays the Record Narration Screen and allows a user to record voice-over narration to the slide while the video clip plays 948. When the narration is complete, the "Stop” button, which is located in the upper right corner of the Record Narration Screen, is selected to return to the Photo Slide Editing Window. Located at the bottom of the Video Slide Editing Window, the Trim Slide is used to edit the start and end frames of the video clip when activated 949.
  • the start and end frames of the video clip can be adjusted by placing a finger on either the left or right round buttons on the slide tool and dragging the button until the left or right thumbnail displays the desired start or end frame.
  • the "Play” button located under the “Voice” button, initializes the Play Video Clip Screen when selected, which plays back recorded narration and the video clip with any edits to the start and end points, 950 and returns to the Video Slide Editing Window upon completion.
  • the "Done" icon in the upper left corner of the Video Slide Editing Window is selected to apply edits and return to the Story Creation Window 951.
  • the device's Return button is pressed to abandon edits made in the Video Slide Editing Window and to return to the Story Creation Window 951.
  • the Drop Down Story Edit Menu 925 displays the story editing options in a drop down menu when selected.
  • the drop down Story Edit Menu contains up to six options: Share Story, View Story, Edit Story Title, Select Soundtrack, Arrange Slides, Publish Story, and Delete Story (see, e.g., FIG. 11).
  • the "Share Story" tool is only available in the drop down Story Edit Menu if the selected story has been previously published (see, e.g., FIG. 11 ). When selected the Share Story tool 952 opens the Share Story Screen and allows a user to share a published story via Facebook, Twitter, or Email.
  • a Facebook post pop-up appears and allows a user to author a Facebook post containing a link to the published story 953. If the user has not previously logged into a Facebook account, the Facebook Log In and New Account interface displays after the Facebook post is completed.
  • a Twitter post pop-up appears and allows a user to author a Twitter post containing a link to the published story 954. If the user has not previously logged into a Twitter account, the Twitter Log In and New Account interface displays after the Twitter post is completed.
  • a Facebook post pop-up appears and allows a user to author a Facebook post containing a link to the published story 953.
  • the Facebook Log In and New Account interface displays after the Facebook post is completed.
  • the Email icon is selected the device's native email application loads and a pre-filled email is displayed, with which the story can be shared to any contact typed into the "To:" field 955.
  • the device's Return button is pressed to return to the Story Creation Window 956.
  • the "View Story” icon opens the View Story Window, in which the story can be previewed before publishing
  • the preview plays each slide in order along with any edits made to the story or individual slides.
  • the device's Return button is pressed to return to the Story Creation Window 956.
  • the ON/OFF toggle for the soundtrack is located in the upper right quadrant of the Select Soundtrack Window. It is activated and deactivated by tapping the screen directly on the ON/OFF toggle. The toggle is deactivated and the music is OFF when the toggle displays "OFF" and is grey in color. The toggle is activated and the music is ON when the toggle displays "ON" and is blue in color.
  • Each soundtrack can be previewed over the device's speakers by tapping the triangular play button to the left of each soundtrack. Tapping the square directly across from a desired soundtrack or tapping the title of a soundtrack assigns it as the soundtrack for the final story. Turning the soundtrack option off or selecting a soundtrack automatically closes the Select Soundtrack Window and returns to the Story Creation Window 956. The device's return button can be pressed at any time to abandon any changes and return to the Story Creation Window 956.
  • the "Arrange slides" icon opens the Arrange Slides pop-up window 960.
  • the Arrange Slides Window contains each slide stacked vertically in the order it will appear in the final story with the first slide on top. A slide's position in the final story can be edited in the Arrange Slides Window.
  • the Grab icon consisting of an upward facing triangle stacked on a downward facing triangle in a circle and positioned directly to the right of the corresponding slide thumbnail, is used to edit the position of a slide. To move a slide, one finger is placed on the device's screen on the Grab icon and is moved up or down without lifting the finger. When the slide is moved into the desired place in the slide order, the grab icon is released and the slide drops into place.
  • the "Publish Story” icon publishes the story to the server for transcoding and encoding 961.
  • the component media slides, any corresponding edits, and any soundtrack are mixed together with automatically generated slide transitions and still photo movement effects and transcoded into a single video file that is saved to the server.
  • the Story Creation Window is displayed 956.
  • the "Delete Story” icon opens the Delete Story pop-up window 962.
  • the Delete Story window contains a "Cancel” button and an “OK” button. If the "Cancel” button is tapped the window disappears and the Story Creation Window is displayed. If the "Yes” button is tapped the entire story is deleted from the Voyzee App and the Servers. After selecting either button or pressing the device's Return button, the Story Creation Window Appears.
  • the method and apparatus described herein and its constituent processes, components, and interconnections can be altered in various manners to accomplish the same purpose. For example, a given process, component, or interconnection can be migrated from the user device to a server or vice versa. Similarly, a given process, component, or interconnection in the server can be duplicated in the user device and vice versa. Additionally, the method and apparatus described herein can also be implemented in other types of operating systems and computer platforms. For example, the method and apparatus described herein can be implemented in an iOS software application and a compatible AppleTM iOS device, an Android device and a compatible Android application, or any suitable computing device with a compatible operating system and software application.
  • a functional diagram of an exemplary embodiment a process for generating a video file shows how a server system interacts with a user device with a client component to process an ordered series of slides that include various media components to form the video file.
  • the server system assigns tickets to each media element (e.g., photo, video, narration, soundtrack, etc.) that needs transcoding.
  • Each 'slide' is represented as a combination of tickets, media, and supplemental information (e.g., text captions, animation instructions (on/off), display duration, etc.).
  • the client e.g., mobile App, web App, etc.
  • the upload point cluster creates tickets in response to the each ticket request.
  • a ticket list is compiled to send the tickets to the client (see circle 2).
  • the client compiles the ticket list into a story list and sends it to a story server of the server system (see circle 3).
  • the client sends the various media components to the upload servers (see circle 4).
  • the upload servers combine the media components for each ticket and store the combined media components in ticket storage locations at a media storage device.
  • the upload point cluster sends a message to a transcoding queue of the server system to submit the story for transcoding (see circle 5).
  • Transcoding servers in a transcoding cluster of the server system read information from transcoding queue and, after reading the message submitted for the story, pull the media components and other information from the ticket storage locations and perform the required transcoding. After transcoding, the media components are in a desired target media format.
  • the transcoding cluster stores the transcoded media components in ticket storage locations at a transcoded storage device. After transcoding, the transcoding cluster sends information to a tickets ready queue of the server system to submit the story for further processing. See circle 6.
  • a call back service of the server system pulls information from the tickets ready queue and sends the information to the story server indicating the story is ready for further processing (see circle 7).
  • the story server sends information to a mixing queue of the server system to submit the story for mixing (see circle 8).
  • the mixing queue sends information to mixing servers in a mixing cluster of the server system to start the mixing process (see circle 9).
  • the mixing servers mix the transcoded media components to create a final mix of the story to form a video file.
  • the mixing cluster stores the video file in story location at a video storage device and sends information to the tickets ready queue indicating that the video file for the story was mixed (see circle 10).
  • the tickets ready queue sends information to the story server indicating that the video file for the story was mixed and is available at the video storage device for sharing, playing, and/or downloading.
  • an exemplary embodiment of a process 1300 for generating a video file begins at 1302 where a plurality of ticket requests are received from a user device at a server system via a network.
  • the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story.
  • Each ticket request identifying media content and editing information for the corresponding media slide.
  • the plurality of ticket requests are processed at the server system to generate a ticket assembly order and to prepare for receiving the media content associated with the plurality of media slides.
  • the ticket assembly order including ordered instructions for assembling and uploading the media content associated with the plurality of media slides.
  • the ticket assembly order is sent to the user device from the server system.
  • the media content associated with the plurality of media slides is received from the user device at the server system (1308).
  • the received media content having been assembled and uploaded by the user device in response to the ticket assembly order.
  • the received media content is transcoded at the server system in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form a video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device.
  • the process 1300 also includes receiving a story list from the user device at the server system via the network.
  • the story list identifies media content for the story and editing information for the corresponding media content.
  • the media content identified in the story list identifies a story title, a thumbnail image, a soundtrack, or a story description in any suitable combination.
  • the story list is processed at the server system in conjunction with processing the plurality of ticket requests to generate the ticket assembly order and to prepare for receiving the media content associated with the story list.
  • the ticket assembly order including ordered instructions for assembling and uploading the media content associated with the story list.
  • the media content associated with the story list is received from the user device at the server system.
  • the media content associated with the story list having been assembled and uploaded by the user device in response to the ticket assembly order.
  • the media content associated with the story list transcoded at the server system in accordance with the ticket assembly order and in accordance with the editing information associated with the story list in conjunction with forming the video file.
  • the thumbnail image is associated with a digital image or a select frame of a video clip from a select media slide of the plurality of media slides, the corresponding digital image or select frame associated with the thumbnail image being further associated with a cover slide for the story.
  • the editing information identified in the story list identifies an on/off attribute for the soundtrack.
  • the media content identified in the corresponding ticket request for each media slide identifies a digital image, a video clip, a slide caption, or an audio narration in any suitable combination.
  • the digital image associated with at least one media slide includes a digital photo.
  • the editing information identified in the ticket request for the corresponding media slide identifies a scaling attribute, a cropping attribute, a positioning attribute, a rotation attribute, a mirroring attribute, a color filtering attribute, a color adjustment attribute, an audio narration attribute, a duration attribute, an animation attribute, a transition attribute, or any suitable attribute for any editable image characteristic in any suitable combination for the digital image associated with the corresponding media slide.
  • the editing information identified in the ticket request for the corresponding media slide identifies a start frame attribute, an end frame attribute, an enable/disable audio attribute, or any suitable attribute for any editable video characteristic in any suitable combination for the video dip associated with the corresponding media slide.
  • the process 1300 also includes storing the plurality of ticket requests associated with the story in a storage device at the server system.
  • the process 1300 also includes assigning a story identifier to the plurality of ticket requests in conjunction with generating the ticket assembly order to uniquely identify and associate the plurality of media slides, the plurality of ticket requests, the ticket assembly order, the subsequently received media content, and the subsequently formed video file with the story.
  • Ticket identifiers are assigned to each ticket request associated with the story.
  • Media content identifiers are assigned to each media content associated with each ticket request.
  • An ordered ticket list is generated. The ordered ticket list associating the assigned ticket identifiers with the corresponding media slides that form the story and associating the assigned media identifiers with the media content of the corresponding media slide.
  • the ticket assembly order includes the story identifier, ticket identifiers, and media identifiers associated with the story.
  • the ordered instructions include the ordered ticket list.
  • the received media content includes the story identifier, the ticket identifier for the corresponding media content, and the media identifier for the corresponding media content.
  • the process 1300 in conjunction with processing the plurality of ticket requests, also includes reserving resources at the server system for subsequent storage of the media content. Resources are also reserved at the server system for subsequent transcoding of the media content. Additionally, resources are reserved at the server system for subsequent storage of the video file.
  • the process 1300 also includes storing the ticket assembly order associated with the story in a storage device at the server system. In still another embodiment, the process 1300 also includes storing the media content associated with the plurality of media slides forming the story in a storage device at the server system. [0095] In still another embodiment, in conjunction with transcoding the received media content, the process also includes adjusting the received media content in accordance with the editing information associated with the plurality of ticket requests. The adjusted media content is decoded to an intermediate media format. The decoded media content is encoded to a target media format previously selected for the subsequently formed video file. Video and audio portions of the received media content in the target media format are assembled in accordance with the ticket assembly order. The assembled video and audio portions of the received media content are mixed to form the video file.
  • a first portion of the received media content includes at least one content item that is compatible with a target media format previously selected for the subsequently formed video file and a second portion of the received media content includes at least one content item that is not compatible with the target media format, in conjunction with transcoding the received media content.
  • the process 1300 also includes adjusting the received media content in accordance with the editing information associated with the plurality of ticket requests.
  • the second portion of the received media content is decoded to an intermediate media format.
  • the second portion of the received media content is encoded to the target media format previously selected for the subsequently formed video file.
  • Video and audio portions of the first and second portions of the received media content in the target media format are assembled in accordance with the ticket assembly order. The assembled video and audio portions of the received media content are mixed to form the video file.
  • the process 1300 also includes storing the video file in a storage device at the server system.
  • a publishing link is generated at the server system for access to the video file stored at the server system.
  • the publishing link is sent to the user device from the server system.
  • the publishing link provides the user device with access to the video file for sharing, playing, or downloading the video file from the server system.
  • the publishing link enables the user device to share the video file by posting the publishing link to a social media web site, posting the video file to the social media web site, posting the publishing link to an Internet web site, posting the video file to the Internet web site, sending the publishing link to one or more recipient in an electronic message, sending the video to one or more recipient in the electronic message, e-mailing the publishing link to one or more e-mail address, or e- mailing the video file to the one or more e-mail address in any suitable combination.
  • the video file is compatible with an MPEG-4 digital multimedia format.
  • the process also includes receiving a second plurality of second ticket requests from the user device at the server system via the network.
  • the second plurality of second ticket requests are associated with a corresponding revised plurality of revised media slides having been previously arranged on the user device to form a revised story based at least in part on the previous plurality of previous media slides associated with the previous story.
  • Each second ticket request identifying media content and editing information for the corresponding revised media slide.
  • the second plurality of second ticket requests are processed at the server system to generate a second ticket assembly order replacing the previous ticket assembly order and to prepare for receiving the media content associated with the revised plurality of revised media slides.
  • the second ticket assembly order including second ordered instructions for assembling and uploading the media content associated with the revised plurality of revised media slides.
  • the second ticket assembly order is sent to the user device from the server system.
  • the media content associated with the revised plurality of revised media slides is received from the user device at the server system.
  • the received media content having been assembled and uploaded by the user device in response to the second ticket assembly order.
  • the received media content associated with the revised plurality of revised media slides is transcoded at the server system in accordance with the second ticket assembly order and the revised editing information associated with the second plurality of second ticket requests to form a second video file replacing the previous video file for presentation of the revised story formed by the previous arrangement of the revised plurality of revised media slides on the user device.
  • an exemplary embodiment of a server system 1400 associated with generation of a video file includes a communication interface 1402, a ticket processor 1404, and a transcoding processor 1406.
  • the communication interface 1402 configured to receive a plurality of ticket requests from a user device 1408 via a network 1410.
  • the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device 1408 to form a story.
  • Each ticket request identifying media content and editing information for the corresponding media slide.
  • the ticket processor 1404 configured to process the plurality of ticket requests to generate a ticket assembly order and to prepare for receiving the media content associated with the plurality of media slides.
  • the ticket assembly order including ordered instructions for assembling and uploading the media content associated with the plurality of media slides.
  • the ticket processor 1404 is configured to send the ticket assembly order to the user device 1408 via the communication interface 1402 and the network 1410.
  • the communication interface 1402 is configured to receive the media content associated with the plurality of media slides from the user device 1408. The received media content having been assembled and uploaded by the user device 1408 in response to the ticket assembly order.
  • the transcoding processor 1406 configured to transcode the received media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form a video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device 1408.
  • the communication interface 1402 is configured to receive a story list from the user device 1408 via the network 1410.
  • the story list identifies media content for the story and editing information for the corresponding media content.
  • the media content identified in the story list identifies a story title, a thumbnail image for the story, a soundtrack, or a story description in any suitable combination.
  • the ticket processor 1404 is configured to process the story list in conjunction with processing the plurality of ticket requests to generate the ticket assembly order and to prepare for receiving the media content associated with the story list.
  • the ticket assembly order including ordered instructions for assembling and uploading the media content associated with the story list.
  • the communication interface 1402 is configured to receive the media content associated with the story list from the user device.
  • the media content associated with the story list having been assembled and uploaded by the user device 1408 in response to the ticket assembly order.
  • the transcoding processor 1406 is configured to transcode the media content associated with the story list in accordance with the ticket assembly order and in accordance with the editing information associated with the story list in conjunction with forming the video file.
  • the server system 1400 also includes a storage device 1412 configured to store the plurality of ticket requests associated with the story.
  • the user device 1408 comprises a mobile device, an Apple iPhone Operating System (iOS) device, an Android device, a computer device, or any other suitable user device in any suitable combination.
  • the server system 1400 also includes one of one or more networked server nodes comprising the communication interface 1402, the ticket processor 1404, and the transcoding processor 1406.
  • the network 1410 comprises a LAN, a WLAN, a MAN, a WMAN, a WAN, a WWAN, a PAN, a WPAN, a WiMAX network, a wireless cellular network, an LTE wireless network, an Internet, a cable TV network, a satellite TV network, a satellite communication network, a WiFi access point, a Bluetooth access node, an infrared access node, or any suitable network in any suitable combination.
  • the ticket processor 1404 is configured to assign a story identifier to the plurality of ticket requests in conjunction with generating the ticket assembly order to uniquely identify and associate the plurality of media slides, the plurality of ticket requests, the ticket assembly order, the subsequently received media content, and the subsequently formed video file with the story.
  • the ticket processor 1404 is also configured to assign ticket identifiers to each ticket request associated with the story. Additionally, the ticket processor 1404 is configured to assign media content identifiers to each media content associated with each ticket request.
  • the ticket processor 1404 is also configured to generate an ordered ticket list associating the assigned ticket identifiers with the corresponding media slides that form the story and associating the assigned media identifiers with the media content of the corresponding media slide.
  • the ticket assembly order includes the story identifier, ticket identifiers, and media identifiers associated with the story.
  • the ordered instructions include the ordered ticket list.
  • the server system 1400 also includes a storage device 1412 configured to store the media content and the video file.
  • the ticket processor 1404 is configured to reserve resources at the storage device 1412 for subsequent storage of the media content.
  • the ticket processor 1404 is also configured to reserve resources at the transcoding processor 1406 for subsequent transcoding of the media content. Additionally, the ticket processor 1404 is configured to reserve resources at the storage device 1412 for subsequent storage of the video file.
  • the server system 1400 also includes a storage device 1412 configured to store the ticket assembly order associated with the story. In still yet another embodiment, the server system 1400 also includes a storage device 1412 configured to store the media content associated with the plurality of media slides forming the story.
  • the transcoding processor 1406 is configured to adjust the received media content in accordance with the editing information associated with the plurality of ticket requests.
  • the transcoding processor 1406 is also configured to decode the adjusted media content to an intermediate media format and to encode the decoded media content to a target media format previously selected for the subsequently formed video file.
  • the transcoding processor 1406 is configured to assemble video and audio portions of the received media content in the target media format in accordance with the ticket assembly order.
  • the transcoding processor 1406 is also configured to mix the assembled video and audio portions of the received media content to form the video file.
  • a first portion of the received media content includes at least one content item that is compatible with a target media format previously selected for the subsequently formed video file and a second portion of the received media content includes at least one content item that is not compatible with the target media format.
  • the transcoding processor 1406 is configured to adjust the received media content in accordance with the editing information associated with the plurality of ticket requests.
  • the transcoding processor 1406 is also configured to decode the second portion of the received media content to an intermediate media format and to encode the second portion of the received media content to the target media format previously selected for the subsequently formed video file.
  • the transcoding processor 1406 is configured to assemble video and audio portions of the first and second portions of the received media content in the target media format in accordance with the ticket assembly order.
  • the transcoding processor 1406 is configured to mix the assembled video and audio portions of the received media content to form the video file.
  • the server system 1400 also includes a storage device 1412 and a publishing processor 1414.
  • the storage device 1412 is configured to store the video file.
  • the publishing processor 1414 is configured to save the video file formed by the transcoding processor 1406 in the storage device 1412, to generate a publishing link for access to the video file stored at the storage device 1412, and to send the publishing link to the user device 1408 via the communication interface 1402 and the network 1410.
  • the transcoding processor 1406 is configured to form the video file in a digital multimedia format compatible with an MPEG-4 digital multimedia format.
  • the communication interface 1402 is configured to receive a second plurality of second ticket requests from the user device 1408 via the network 1410.
  • the second plurality of second ticket requests are associated with a corresponding revised plurality of revised media slides having been previously arranged on the user device to form a revised story based at least in part on the previous plurality of previous media slides associated with the previous video file.
  • Each second ticket request identifying media content and editing information for the corresponding revised media slide.
  • the ticket processor 1404 is configured to process the second plurality of second ticket requests to generate a second ticket assembly order replacing the previous ticket assembly order and to prepare for receiving the media content associated with the revised plurality of revised media slides.
  • the second ticket assembly order including second ordered instructions for assembling and uploading the media content associated with the revised plurality of revised media slides.
  • the ticket processor 1404 is also configured to send the second ticket assembly order to the user device 1408 via the communication interface 1402 and the network 1410.
  • the communication interface 1402 is configured to receive the media content associated with the revised plurality of revised media slides from the user device 408. The received media content having been assembled and uploaded by the user device 1408 in response to the second ticket assembly order.
  • the transcoding processor 1406 is configured to transcode the received media content associated with the revised plurality of revised media slides in accordance with the second ticket assembly order and the revised editing information associated with the second plurality of second ticket requests to form a second video file replacing the previous video file for presentation of the revised story formed by the previous arrangement of the revised plurality of revised media slides on the user device 1408.
  • FIGs. 13 and 14 various exemplary embodiments of non-transitory computer-readable medium storing program instructions that, when executed by one or more processors, cause a corresponding server system to perform a method for generating a video file.
  • server system 1400 various embodiments of the server system 1400 are described above with reference to FIG. 14.
  • Various embodiments of the method for generating a video file 1300, for example, are described above with reference to FIG. 13.
  • the program instructions of the various exemplary embodiments of non-transitory computer-readable medium are defined by any suitable combination of the processes 1300 described above with reference to FIG. 13.
  • a process 1500 for generating a video file begins at 1502 where a plurality of ticket requests are sent to a server system from a user device via a network.
  • the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story.
  • Each ticket request identifying media content and editing information for the corresponding media slide.
  • a ticket assembly order is received from the server system at the user device.
  • the ticket assembly order having been generated by the server system in response to the plurality of ticket requests and including ordered instructions for assembling and uploading the media content associated with the plurality of media slides.
  • the media content associated with the plurality of media slides are assembled in accordance with the ticket assembly order (1506).
  • the assembled media content is uploaded to the server system from the user device in accordance with the ticket assembly order.
  • a publishing link to a video file is received from the server system at the user device ( 510).
  • the server system having generated the publishing link after having transcoded the uploaded media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form the video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device and after having stored the video file.
  • the process 1500 also includes sending a story list to the server system from the user device via the network.
  • the story list identifies media content for the story and editing information for the corresponding media content.
  • the media content identified in the story list identifies a digital image, a story title, a thumbnail image, a soundtrack, or a story description in any suitable combination.
  • the ticket assembly order received by the user device having been generated by the server system after having received the story list.
  • the ticket assembly order including ordered instructions for assembling and uploading the media content associated with the story list.
  • the media content associated with the story list is assembled in accordance with the ticket assembly order.
  • the media content associated with the story list is uploaded to the server system from the user device in accordance with the ticket assembly order.
  • the thumbnail image is associated with a digital image or a select frame of a video clip from a select media slide of the plurality of media slides, the corresponding digital image or select frame associated with the thumbnail image being further associated with a cover slide for the story.
  • the editing information identified in the story list identifies an on/off attribute for the soundtrack.
  • the media content identified in the corresponding ticket request for each media slide identifies a digital image, a video clip, a slide caption, or an audio narration in any suitable combination.
  • the digital image associated with at least one media slide includes a digital photo.
  • the editing information identified in the ticket request for the corresponding media slide identifies a scaling attribute, a cropping attribute, a positioning attribute, a rotation attribute, a mirroring attribute, a color filtering attribute, a color adjustment attribute, an audio narration attribute, a duration attribute, an animation attribute, a transition attribute, or any suitable attribute for any editable image characteristic in any suitable combination for the digital image associated with the corresponding media slide.
  • the editing information identified in the ticket request for the corresponding media slide identifies a start frame attribute, an end frame attribute, or an enable/disable audio attribute in any suitable combination for the video clip associated with the corresponding media slide.
  • the process 1500 also includes storing the plurality of ticket requests associated with the story in a storage device at the user device.
  • the server system in conjunction with generating the ticket assembly order, the server system having assigned a story identifier to the plurality of ticket requests to uniquely identify and associate the plurality of media slides, the plurality of ticket requests, the ticket assembly order, the subsequently uploaded media content, and the subsequently formed video file with the story.
  • the server system in conjunction with generating the ticket assembly order, the server system also having assigned ticket identifiers to each ticket request associated with the story.
  • the server system having assigned media content identifiers to each media content associated with each ticket request.
  • the server system in conjunction with generating the ticket assembly order, also having generated an ordered ticket list associating the assigned ticket identifiers with the corresponding media slides that form the story and associating the assigned media identifiers with the media content of the corresponding media slide.
  • the ticket assembly order includes the story identifier, ticket identifiers, and media identifiers associated with the story.
  • the ordered instructions include the ordered ticket list.
  • the uploaded media content includes the story identifier, the ticket identifier for the corresponding media content, and the media identifier for the corresponding media content.
  • the process 1500 also includes storing the ticket assembly order associated with the story in a storage device at the user device. In yet another embodiment, the process 1500 also includes storing the media content associated with the plurality of media slides forming the story in a storage device at the user device.
  • the publishing link provides the user device with access to the video file for sharing, playing, or downloading the video file from the server system.
  • the publishing link enables the user device to share the video file by posting the publishing link to a social media web site, posting the video file to the social media web site, posting the publishing link to an Internet web site, posting the video file to the Internet web site, sending the publishing link to one or more recipient in an electronic message, sending the video to one or more recipient in the electronic message, e-mailing the publishing link to one or more e-mail address, or e-mailing the video file to the one or more e-mail address in any suitable combination.
  • the video file is compatible with an MPEG-4 digital multimedia format.
  • the process 1500 also includes sending a second plurality of second ticket requests to the server system from the user device via the network.
  • the second plurality of second ticket requests are associated with a corresponding revised plurality of revised media slides having been previously arranged on the user device to form a revised story based at least in part on the previous plurality of previous media slides associated with the previous story.
  • Each second ticket request identifying media content and editing information for the corresponding revised media slide.
  • a second ticket assembly order replacing the previous ticket assembly order is received from the server system at the user device.
  • the second ticket assembly order having been generated by the server system in response to the second plurality of second ticket requests and including second ordered instructions for assembling and uploading the media content associated with the revised plurality of revised media slides.
  • the media content associated with the revised plurality of revised media slides is assembled in accordance with the second ticket assembly order.
  • the assembled media content associated with the revised plurality of revised media slides is uploaded to the server system from the user device in accordance with the second ticket assembly order.
  • a second publishing link to a second video file is received from the server system at the user device.
  • a user device 1600 associated with generation of a video file includes a communication interface 1602, a ticket processor 1604, and an upload processor 1606.
  • the communication interface 1602 configured to send a plurality of ticket requests to a server system 1608 via a network 1610.
  • the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device 1600 to form a story. Each ticket request identifying media content and editing information for the corresponding media slide.
  • the communication interface 1602 is configured to receive a ticket assembly order from the server system 1608. The ticket assembly order having been generated by the server system 1608 in response to the plurality of ticket requests and including ordered instructions for assembling and uploading the media content associated with the plurality of media slides.
  • the ticket processor 1604 configured to assemble the media content associated with the plurality of media slides in accordance with the ticket assembly order.
  • the upload processor 1606 configured to upload the assembled media content to the server system 1608 in accordance with the ticket assembly order via the communication interface 1602 and the network 1610.
  • the communication interface 1602 is configured to receive a publishing link to a video file from the server system 1608.
  • the server system 1608 having generated the publishing link after having transcoded the uploaded media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form the video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device 1600 and after having stored the video file.
  • the communication interface 602 is configured to send a story list to the server system 1608 via the network 1610.
  • the story list identifies media content for the story and editing information for the corresponding media content.
  • the media content identified in the story list identifies a story title, a thumbnail image for the story, a soundtrack, or a story description in any suitable combination.
  • the ticket assembly order received by the communication interface 1602 having been generated by the server system 1608 after having received the story list.
  • the ticket assembly order including ordered instructions for assembling and uploading the media content associated with the story list.
  • the ticket processor 1604 is configured to assemble the media content associated with the story list in accordance with the ticket assembly order.
  • the upload processor 1606 is configured to upload the media content associated with the story list to the server system 1608 in accordance with the ticket assembly order.
  • the publishing link to the video file received by the communication interface 602 having been generated by the server system 1608 after having transcoded the media content associated with the story list in accordance with the ticket assembly order and in accordance with the editing information associated with the story list to in conjunction with forming the video file.
  • the user device 1600 also includes a storage device 1612 configured to store the plurality of ticket requests associated with the story.
  • the user device 1600 also includes a mobile device, an Apple iPhone Operating System (iOS) device, an Android device, a computer device, or any suitable user device in any suitable combination to comprise the communication interface 1602, the ticket processor 1604, and the upload processor 1608.
  • the server system comprises one of one or more networked server nodes.
  • the network 1610 comprises a LAN, a WLAN, a MAN, a WMAN, a WAN, a WWAN, a PAN, a WPAN, a WiMAX network, a wireless cellular network, an LTE wireless network, an Internet, a cable TV network, a satellite TV network, a satellite communication network, a WiFi access point, a Bluetooth access node, an infrared access node, or any suitable network in any suitable combination.
  • the server system 1608 is configured to assign a story identifier to the plurality of ticket requests in conjunction with generating the ticket assembly order to uniquely identify and associate the plurality of media slides, the plurality of ticket requests, the ticket assembly order, the subsequently received media content, and the subsequently formed video file with the story.
  • the server system 1608 is also configured to assign ticket identifiers to each ticket request associated with the story in conjunction with generating the ticket assembly order.
  • the server system 1608 is configured to assign media content identifiers to each media content associated with each ticket request in conjunction with generating the ticket assembly order.
  • the server system 1608 is also configured to generate an ordered ticket list in conjunction with generating the ticket assembly order to associate the assigned ticket identifiers with the corresponding media slides that form the story and to associate the assigned media identifiers with the media content of the corresponding media slide in conjunction with generating the ticket assembly order.
  • the ticket assembly order includes the story identifier, ticket identifiers, and media identifiers associated with the story.
  • the ordered instructions include the ordered ticket list.
  • the upload processor 1606 is configured to include the story identifier, the ticket identifier for the corresponding media content, and the media identifier for the corresponding media content in the uploaded media content.
  • the user device 1600 also includes a storage device 1612 configured to store the ticket assembly order associated with the story.
  • the user device 1600 also includes a storage device 1612 configured to store the media content associated with the plurality of media slides forming the story.
  • the server system 1608 is configured to form the video file in a digital multimedia format compatible with an MPEG-4 digital multimedia format.
  • the communication interface 1602 is configured to send a second plurality of second ticket requests to the server system 1608 via the network 1610.
  • the second plurality of second ticket requests are associated with a corresponding revised plurality of revised media slides having been previously arranged on the user device 1600 to form a revised story based at least in part on the previous plurality of previous media slides associated with the previous story.
  • Each second ticket request identifying media content and editing information for the corresponding revised media slide.
  • the communication interface 1602 is configured to receive a second ticket assembly order replacing the previous ticket assembly order from the server system 1608.
  • the second ticket assembly order having been generated by the server system 1608 in response to the second plurality of second ticket requests and including second ordered instructions for assembling and uploading the media content associated with the revised plurality of revised media slides.
  • the ticket processor 1604 is configured to assemble the media content associated with the revised plurality of revised media slides in accordance with the second ticket assembly order.
  • the upload processor 1606 is configured to upload the assembled media content associated with the revised plurality of revised media slides to the server system 1608 in accordance with the second ticket assembly order via the communication interface 1602 and the network 1610.
  • the communication interface 1602 is configured to receive a second publishing link to a second video file from the server system 1608. The second publishing link replacing the previous publishing link and the second video file replacing the previous video file.
  • the server system 1608 having generated the second publishing link after having transcoded the uploaded media content associated with the revised plurality of revised media slides in accordance with the second ticket assembly order and the editing information associated with the second plurality of second ticket requests to form the second video file for presentation of the revised story formed by the previous arrangement of the second plurality of second media slides on the user device 1600 and after having stored the second video file.
  • various exemplary embodiments of non-transitory computer-readable medium storing program instructions that, when executed by one or more processors, cause a corresponding user device to perform a method for generating a video file.
  • various embodiments of the user device 1600 are described above with reference to FIG. 16.
  • Various embodiments of the method for generating a video file 1500 are described above with reference to FIG. 15.
  • the program instructions of the various exemplary embodiments of non-transitory computer-readable medium are defined by any suitable combination of the processes 1500 described above with reference to FIG. 15.
  • the one or more processors and the user device associated with the various exemplary embodiments of non-transitory computer-readable medium are defined by any suitable combination of the user device 1600 described above with reference to FIG. 16.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

A method for generating a video file includes receiving ticket requests from a user device at a server system. The ticket requests associated with media slides arranged on the user device to form a story. Each ticket request identifying media content and editing information for the media slide. The ticket requests are processed to generate a ticket assembly order. The ticket assembly order including ordered instructions for assembling and uploading the media content. The ticket assembly order is sent to the user device and the media content is received. The media content having been assembled and uploaded by the user device. The received media content is transcoded in accordance with the ticket assembly order and in accordance with the editing information associated with the ticket requests to form a video file for presentation of the story. Server systems and user devices for generation of the video file are also provided.

Description

METHOD AND APPARATUS FOR CONFIGURING MULTIMEDIA SEQUENCE USING
MOBILE PLATFORM
CROSS REFERENCE TO RELATED PATENTS AND APPLICATIONS
[0001] This patent application claims priority to and any benefit associated with co-pending U.S. Provisional Pat. App. Serial No. 61/813,601 , filed April 18, 2013, and co-pending U.S. Provisional Pat. App. Serial No. 61/823,633, filed May 15, 2013. The contents of both of these provisional patent applications are fully incorporated herein by reference.
BACKGROUND OF THE INVENTION
[0002] The present exemplary embodiment relates to a method for generating a video file and various embodiments of server systems and user devices associated with generation of the video file. It finds particular application in conjunction with generating a video file at a server system after receiving media content and editing information for media slides arranged on a user device to form a story, and will be described with particular reference thereto. However, it is to be appreciated that the present exemplary embodiment is also amenable to other like applications. For example, the invention may be used collection any type of information in any type of electronic media on media slides, arranging the slides in a desired manner, and generating a video file for presentation of the media collection in the desired arrangement.
[0003] By way of background, smart phones and other computing devices may include on-board cameras for capturing a photo image, recording video, or recording audio and may have Internet access for posting such images, video, and audio to social media or other web sites. Smart phones may include applications that are a capable of authoring a story comprising a variety of multimedia content through a guided process on the host device, creates a video file on the host device for presenting the story, and uploading or sharing the video file from the host device. [0004] Based on the foregoing, there is a need for a cross-platform capability to author a story comprising a variety of multimedia content on a computing device, to create a video file for presenting the story on external servers, and to publish the video file for subsequent sharing, playing, or downloading from the external server through a process controlled by a user via the computing device.
SUMMARY OF THE INVENTION
[0005] In one aspect, a method for generating a video file is provided. In one embodiment, the method includes: receiving a plurality of ticket requests from a user device at a server system via a network, wherein the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story, each ticket request identifying media content and editing information for the corresponding media slide; processing the plurality of ticket requests at the server system to generate a ticket assembly order and to prepare for receiving the media content associated with the plurality of media slides, the ticket assembly order including ordered instructions for assembling and uploading the media content associated with the plurality of media slides; sending the ticket assembly order to the user device from the server system; receiving the media content associated with the plurality of media slides from the user device at the server system, the received media content having been assembled and uploaded by the user device in response to the ticket assembly order; and transcoding the received media content at the server system in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form a video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device.
[0006] In another aspect, a server system associated with generation of a video file is provided. In one embodiment, the server system includes: a communication interface configured to receive a plurality of ticket requests from a user device via a network, wherein the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story, each ticket request identifying media content and editing information for the corresponding media slide; and a ticket processor configured to process the plurality of ticket requests to generate a ticket assembly order and to prepare for receiving the media content associated with the plurality of media slides, the ticket assembly order including ordered instructions for assembling and uploading the media content associated with the plurality of media slides, wherein the ticket processor is configured to send the ticket assembly order to the user device via the communication interface and the network; wherein the communication interface is configured to receive the media content associated with the plurality of media slides from the user device, the received media content having been assembled and uploaded by the user device in response to the ticket assembly order. In this embodiment, server system also includes a transcoding processor configured to transcode the received media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form a video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device.
[0007] In another embodiment, the method for generating a video file includes: sending a plurality of ticket requests to a server system from a user device via a network, wherein the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story, each ticket request identifying media content and editing information for the corresponding media slide; receiving a ticket assembly order from the server system at the user device, the ticket assembly order having been generated by the server system in response to the plurality of ticket requests and including ordered instructions for assembling and uploading the media content associated with the plurality of media slides; assembling the media content associated with the plurality of media slides in accordance with the ticket assembly order; uploading the assembled media content to the server system from the user device in accordance with the ticket assembly order; and receiving a publishing link to a video file from the server system at the user device, the server system having generated the publishing link after having transcoded the uploaded media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form the video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device and after having stored the video file.
[0008] In yet another aspect, a user device associated with generation of a video file is provided. In one embodiment, the user device includes: a communication interface configured to send a plurality of ticket requests to a server system via a network, wherein the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story, each ticket request identifying media content and editing information for the corresponding media slide; wherein the communication interface is configured to receive a ticket assembly order from the server system, the ticket assembly order having been generated by the server system in response to the plurality of ticket requests and including ordered instructions for assembling and uploading the media content associated with the plurality of media slides. In this embodiment, the user device also includes: a ticket processor configured to assemble the media content associated with the plurality of media slides in accordance with the ticket assembly order; and an upload processor configured to upload the assembled media content to the server system in accordance with the ticket assembly order via the communication interface and the network. In the embodiment being described, the communication interface is configured to receive a publishing link to a video file from the server system, the server system having generated the publishing link after having transcoded the uploaded media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form the video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device and after having stored the video file.
[0009] Further scope of the applicability of the present invention will become apparent from the detailed description provided below. It should be understood, however, that the detailed description and specific examples, while indicating preferred embodiments of the invention, are given by way of illustration only, since various changes and modifications within the spirit and scope of the invention will become apparent to those skilled in the art. DESCRIPTION OF THE DRAWINGS
[0010] The present invention exists in the construction, arrangement, and combination of the various parts of the device, and steps of the method, whereby the objects contemplated are attained as hereinafter more fully set forth, specifically pointed out in the claims, and illustrated in the accompanying drawings in which:
[0011] FIGs. 1A through 1C provide a functional diagram of an exemplary embodiment of a user interface for creating and managing a story defined by media slides that include various types of media content;
[0012] FIG. 2 is a block diagram of an exemplary embodiment of a server system;
[0013] FIG. 3 is a flowchart of an exemplary embodiment of a process for generating a video file;
[0014] FIG. 4 provides a functional diagram of an exemplary user registration sequence;
[0015] FIG. 5 provides a functional diagram of an exemplary user login sequence;
[0016] FIG. 6 is an exemplary screen display for managing a story;
[0017] FIG. 7 is an exemplary screen display of a carousel menu for editing a slide of a story;
[0018] FIG. 8 is an exemplary screen display of a menu for editing a story;
[0019] FIGs. 9A through 9D provide a functional diagram of another exemplary embodiment of a user interface for creating and managing a story defined by media slides that include various types of media content;
[0020] FIG. 10 is an exemplary screen display of a pop-up window for managing a slide of a story;
[0021] FIG. 11 is an exemplary screen display of a drop-down menu for managing a story;
[0022] FIGs. 12A and 12B provide a functional diagram of an exemplary embodiment of a process for generating a video file;
[0023] FIG. 13 is a flowchart of another exemplary embodiment of process for generating a video file; [0024] FIG. 14 is a block diagram of another exemplary embodiment of a server system;
[0025] FIG. 15 is a flowchart of yet another exemplary embodiment of a process for generating a video file; and
[0026] FIG. 16 is a block diagram of an exemplary embodiment of a user device.
DETAILED DESCRIPTION
[0027] A description of an exemplary embodiment of a method and apparatus for configuring a multimedia sequence using a mobile platform is described herein. It is understood that the method and apparatus can be implemented in various embodiments using any suitable mobile platform or other type of computer platform, any suitable network architecture, and any suitable communication protocols and standards in any suitable combination. A computer platform is understood to be a computing device with an operating system. Similarly, a mobile platform is understood to be a mobile computing device with an operating system.
[0028] In one embodiment of a computer platform, Apple™ iOS ("iPhone Operating System") application software for creating and sharing mixed media video stories is provided. The iOS application (hereinafter "Voyzee App") is installed upon an iOS powered device via user download from the Apple App Store™. When activated Voyzee allows a user to capture or import photos and/or video clips; edit captured and imported photos and/or video clips prior to publication and sharing as a single video file by recording and attaching voice-over narration to each photo and/or video clip, adding customized caption text to each photo and/or video clip, applying visual filter effects to each photo, moving and scaling each photo, rotating each photo, trimming start and end points of each video clip, and/or enabling or disabling ambient recorded audio of each video clip; select a title/thumbnail image for the final video file ("Story") prior to publication and sharing; create a text title for the final video file prior to publication and sharing; select a soundtrack to be played over the entire final video file prior to publication and sharing; rearrange the order that photos and/or video clips will be displayed in the final video file prior to publication and sharing, while preserving any edits made to individual photos and/or video clips; add and edit additional photos and/or video clips prior to publication and sharing; delete photos and/or video clips, along with any edits made thereto, prior to publication and sharing a final video file; publish each photo and/or video clip to an external server where each photo and/or video clip, along with any edits that are made, is encoded into a single video file prior to sharing; share final video file via SMS, electronic mail, Twitter™, Tumblr™, Facebook™, and/or any compatible social media service after publication; store and view photos and/or video clips, along with any edits that are made, that comprise published and unpublished and shared and unshared final video files; make the edits, previously described, to the component photos and/or video clips of previously published and/or shared final video files prior to republication and re-sharing.
[0029] In one embodiment, the application software (hereinafter "Voyzee App") is designed for the Apple iPhone Operating System (iOS) and supports devices running iOS 4.3 and higher. The Voyzee App is compatible with Apple iPhone 4, 4s, 5, ipod and/or future versions and/or derivatives. The Voyzee App is distributed to user devices via download through the Apple App Store. The Voyzee App fully supports both front and back facing device cameras and utilizes Apples multi-gesture interface.
[0030] With reference to FIGs. 1A-C, upon download and installation via the Apple App Store to a user device, the Voyzee App appears as a "VZ" app icon on the user device's home page. A user initializes the Voyzee App by tapping the VZ app icon 100. The first time the Voyzee App is initialized a Register/Login screen is displayed. To create an account the user taps the "Register" button, which brings up the Account Setup screen 101. To register an account the user fills in the requested information on the Account Setup screen and then taps the "Save" button. The user is then sent an activation email to the account provided during registration. The activation email contains a link, which the user clicks to activate the account 102. After completing the registration process the user initializes the Voyzee App 103, at which point the Register/Login screen is displayed and the user fills in the required information and taps the "Login" button. After tapping the "Login" button, the user can access the user's story list (hereinafter "Home Page") 104. On the Home Page individual stories are displayed as square tiles with the title of the story underneath a thumbnail image of the cover slide. [0031] A user has four options to interact with the user Home Page, which includes opening the Settings screen 105, adding a new story 113, selecting an Existing Unpublished Story 119, and selecting an Existing Published Story 120. The Settings screen is accessed by tapping the Settings button (the Settings button is a rectangular button displaying a gear) located on the upper left corner of the Home Page. When the Settings button is activated, the Home Page slides to the right and reveals the Settings Screen. From the Settings Screen a user can logout/login to a Voyzee account 106 by tapping the button displaying the name provided during account registration; add social accounts 107 (e.g., Facebook, Twitter, etc.) by tapping the "Add social account" button and following the account verification prompts; turn streaming playback on or off 108 by tapping the "Streaming playback" button; clear the Voyzee App's memory cache 109 by tapping the "Clear cache" button; access the Feedback option 110 by tapping the "Feedback" button, which opens the device's email application and allows the user to send an email to support@voyzee.com; access the Support option 111 by tapping the "Support" button, which opens a screen containing the Voyzee App's support documentation; and access the Information option 112 by tapping the "Information" button, which opens a screen containing the Voyzee App's terms of service and general information. A user exits the Settings screen and returns to the Home Page by placing a finger on the right edge of the device's screen and swiping it to the left edge.
[0032] On the Home Page the user can create a new story 113 by tapping the "Add story" button, located in the upper right corner of the Home Page. When the "Add story" button is selected, the Add Slides Menu is displayed 114. On the Add Slides menu the user has three options with which to add new media to the story. The first is to import existing media (i.e. photos and/or video clips) from the device's media library 115 by tapping the button displaying "Existing media." Tapping the "Existing media" button opens the device's media library and displays the user's camera roll and/or albums, which include any remote albums corresponding to any third party media storage accounts, including Facebook, Tumblr, Dropbox, Instagram, Flikr, and/or any compatible media storage service. The user selects a photo(s) and/or a video clip(s) to import into the Voyzee App by tapping on the photo(s) and/or video clip(s) thumbnail image and then tapping on the "Use" button, located in the bottom right corner of the media library screen. A user can import an unlimited number of photos and/or videos. After tapping the "Use" button, the selected photo(s) and/or video clip(s) are loaded into the Voyzee App and displayed as individual slides in the Story Creation Window 118 (see, e.g., FIG. 6).
[0033] The second option to add new media to a story available on the Add Slides Menu is to use the device's native camera application 116 by tapping the "Capture new media" button. When the "Capture new media" button is selected the device's native camera is opened, allowing the user to import a single photo or video clip. The photo or video clip is then loaded and displayed in the Story Creation Window 118. The user can repeat this process by accessing the Add Slides Menu, which is accessible in the Story Creation Window by tapping the "Add slide" button, located on the footer bar. The photos and/or video clips captured through this method are also automatically saved to the device's camera roll.
[0034] The third option to add new media to a story available on the Add Slides menu is to use the Voyzee App's Tap-Tap Capture feature 117 by tapping the "Tap-Tap Capture" button. When the "Tap-Tap Capture" button is selected the device's camera is initialized through the Voyzee App's Tap-Tap Capture interface. The Voyzee App's Tap-Tap Capture interface allows the user to utilize the device's camera to take and automatically import any number of photos and/or video clips in a single session. A photo is captured using the Tap-Tap Capture interface by tapping one finger on any portion of the screen. A video clip is captured by touching and holding with one finger on any portion of the screen. The camera records video as long as the finger remains continuously touching the screen, and once the finger is lifted from the screen the camera stops recording the video clip. A user exits the Tap-Tap Capture interface by tapping the "Done" button, located in the top left corner of the Tap-Tap Capture interface. When the "Done" button is selected, any captured photos and/or video clips are loaded and displayed as slides in the Story Creation Window. The photos and/or video clips captured through this method are also automatically saved to the device's camera roll.
[0035] The last two options to interact with the user Home Page are selecting an Existing Unpublished Story 119 and selecting an Existing Published Story 120. An Existing Unpublished Story is a story in which the story creation process has begun but the story has not been published. An Existing Unpublished Story is denoted on the Home Page as a story tile with a blue "NEW" ribbon across the upper left corner of the story thumbnail. An Existing Published Story is a completed story that has been published and is denoted by a story tile without the "NEW" ribbon. A user selects either an Existing Unpublished Story or an Existing Published Story by tapping on the corresponding story tile, which opens the Story Creation Window with the selected story's media loaded as slides.
[0036] The Story Creation Window (see, e.g., FIG. 6) is the central screen of the Voyzee App from which a user can access the editing options. The Story Creation Window displays the imported and loaded media, i.e., photo(s) and video clip(s), in individual slides. The currently selected media slide is displayed as the large thumbnail, which occupies the upper half of the window. The previous and following slides can be selected in the large thumbnail display by touching a finger to the screen and either swiping it left to select the following slide or right to select the previous slide 122. Two smaller slides are displayed below the large thumbnail of the currently selected slide. Of the two smaller displayed slides, the slide with a highlighted border is the currently selected slide. The loaded slides can be scrolled through the small slide interface by touching a finger to one of the small slides and swiping it left or right. Any of the small slides can be tapped, which will designate the tapped slide as the selected slide and displace the slide displayed as the large thumbnail.
[0037] There are seven buttons displayed on the Story Creation Window. Each button corresponds to a different action and can be initialized in any order. Located in the upper left corner, the "Home" button opens the Home Page when selected 164. The "Share" button, located in the upper right corner, initializes the publishing and sharing functions when selected 157. Located in the bottom left corner, the "Play story" button opens the Player Window, in which a preview of the current story is played as a slide show with each individual media slide and any accompanying edits 156. Located on the footer bar, the "Edit story" button opens the Edit Story Menu when selected 150. Located on the footer bar, the "Add slide" button initiates the Add Slides Menu when selected 114. Located in the bottom right comer on the footer bar, "Delete slide" button deletes the selected/highlighted media slide and the corresponding edits when selected 149. Located on the right side of the screen and just below the bisecting x-axis, the "Edit slide" button initializes the Slide Editing Carousel when selected 121.
[0038] Tapping the "Edit slide" button on the Story Creation Window initializes the Slide Editing Carousel 121 (see, e.g., FIG. 7). The "Edit Slide" button changes to the "Done editing" button when the Slide Editing Carousel is initialized and is tapped to exit the Slide Editing Carouse. The Slide Editing Carousel consists of two rows of editing options. The upper row contains the main editing tools and can be scrolled through by touching a finger to the row and swiping left or right. When one of the main editing tools is selected, the sub-options of that editing tool are displayed in the bottom row of the carousel. While the Slide Editing Carousel is open, the currently selected media slide is displayed as the large thumbnail that occupies the upper half of the window. The previous and following slides can be selected in the large thumbnail display by touching a finger to the screen and either swiping it left to select the following slide or right to select the previous slide 122. The available editing tools displayed in the top row of the Slide Editing Carousel depends on the type of media of which the selected slide consists. While a photo slide is selected, the carousel will display the "Cover" 123, "Caption" 125, "Narration" 129, photo "Trim" 133, "Rotate" 136, and "Filters" 146 tools. While a video clip slide is selected, the carousel will display the "Cover" 123, "Caption" 125, "Narration" 129, video "Trim" 133, and "Video" 143 tools.
[0039] The "Cover" tool is available and operates the same for both photo and video slides 123. When the "Cover" tool is selected by tapping on the "Cover" button, the button displayed in the bottom row of the carousel is labeled "Set slide as cover" 124. When the "Set slide as cover" button is tapped, the image of the selected slide, which is then currently displayed as the large thumbnail in the above window, becomes the cover image and thumbnail for the story. The cover image is the thumbnail which is displayed for the story tile on the Home Page.
[0040] The "Caption" tool is available and operates the same for both photo and video slides 125. When no caption has been previously added to a slide and the "Caption" tool is tapped, the button displayed in the bottom row of the carousel is labeled "Add caption" 126. When the "Add caption" button is tapped, the Caption Text Box opens and a caption can be entered that does not exceed sixty-eight characters. If a caption is entered into the Caption Text Box and saved, the entered caption is displayed on the large thumbnail of the selected slide above the Slide Editing Carousel. When a caption has been previously added to a slide and the "Caption" tool is selected, the buttons displayed in the bottom row of the carousel are labeled "Edit caption" 127 and "Remove caption" 128. When the "Edit caption" button is tapped, the Caption Text Box opens and the previously entered caption can be changed. When the "Remove caption" button is tapped, the previously added caption is deleted.
[0041] The "Narration" tool is available and operates the same for both photo and video slides 129. When no narration has been previously recorded to a slide and the "Narration" tool is tapped, the button displayed in the bottom row of the carousel is labeled "Record" 130. When the "Record" button is tapped, the Recording Message and Timer is displayed and the device's microphone begins and continues to record audio/voice-over narration until the "Stop" button is tapped. When narration has been previously recorded to a slide and the "Narration" tool is selected, the buttons displayed in the bottom row of the carousel are labeled "Play" 131 , "Record" 130, and "Remove" 132. When the "Play" button is, the previously recorded audio/voice-over narration plays through the device's speakers. When narration has been previously recorded to the slide, the "Record" tool records over the previous audio/voice-over narration. When the "Remove" button is tapped, the previously recorded audio/voice-over narration is deleted.
[0042] The photo "Trim" tool is only available in the carousel for photo slides 133. When a photo has not been previously trimmed and the "Trim" tool is tapped, the button displayed in the bottom row of the carousel is labeled "Trim" 134. When the "Trim" button in the lower row is tapped, the Photo Trim Box opens and the photo can be scaled and moved. To scale or zoom in on a photo, two fingers are placed close together on the screen and moved apart without lifting them from the screen. To move a scaled photo, a finger is touched to the photo and moved in the desired direction without lifting the finger from the screen. If a photo is scaled and moved in the Photo Trim Box and saved, the edits are reflected in the large thumbnail of the selected slide above the Slide Editing Carousel. When a photo slide has been previously trimmed and the photo "Trim" tool is selected, the buttons displayed in the bottom row of the carousel are labeled "Trim" 134 and "Remove trim" 135. When the "Trim" button is tapped, the Photo Trim Box opens and the previously trimmed photo can be trimmed again. When the "Remove trim" button is tapped, any trimming edits previously made to the slide are removed.
[0043] The "Rotate" tool is only available in the carousel for photo slides 136. When the "Rotate left" 137 or "Rotate right" 138 tools are tapped, the large thumbnail of the selected slide displayed above the carousel rotates either left or right depending on which tool is selected.
[0044] The video "Trim" tool is only available for video slides 139. When a video slide has not been previously trimmed and the video "Trim" tool is tapped, the button displayed in the bottom row of the carousel is labeled "Trim" 140. When the "Trim" button in the lower row is tapped, the Video Trim Screen opens. The start and end frames of the video clip can be adjusted by placing a finger on either the left or right round buttons on the slide tool and dragging the button until the left or right thumbnail displays the desired start or end frame. Tapping the button displaying "Preview" on the Video Trim Screen opens a player window, in which a preview of the trimmed video clip plays 141. When a video slide has been previously trimmed and the "Trim" tool in the upper row of the carousel is selected, the buttons displayed in the bottom row of the carousel are labeled "Trim" 140 and "Remove trim" 142. When a video slide has been previously trimmed, the "Trim" tool in the lower row opens the Video Trim Screen and the video clip can be trimmed again. When the "Remove" button is tapped, any trimming previously applied to the video clip is removed.
[0045] The "Video" tool is only available in the carousel for video slides 143. When the ambient audio of a video clip has not been disabled, the "Disable audio" tool is displayed in the bottom row of the carousel 144. When the "Disable audio" button is tapped, the ambient audio attached to the video clip is removed. When the ambient audio of a video clip has been disabled, the "Enable audio" tool is displayed in the bottom row of the carousel 145. When the "Enable audio" button is tapped, the ambient audio attached to the video clip is restored. [0046] The "Filters" tool is available and operates only for photo slides 146. When the "Filter" tool is tapped, the lower row of the carousel is populated with thumbnails of the selected slide, to which each have a different filter effect applied 147. For example, the types of filter effects provided can include original, pavo, ursa, grus, grayscale, apus, dorado, hydra, musca, sepia, and vela filter effects. The different filter effects in the bottom row can be scrolled through be touching and sliding a finger across the bottom row. An individual filter effect can be selected by tapping the thumbnail displaying the desired filter in the bottom row. When a filter effect is selected, the filter effect is applied to the large thumbnail of the selected photo slide displayed above the Edit Slide Carousel. Each filter effect changes the red/blue/green balance, contrast, and exposure of the photo to varying degrees. The applied filter effect can be changed any number of times.
[0047] Returning to the Story Creation Window 118 and activating the "Select slide" feature 148 allows a selected slide to be deleted by activating the "Delete slide" feature 149. Returning again to the Story Creation Window 118 and tapping the "Edit story" button located on the footer bar, opens the Edit Story Menu 150. The Edit Story Menu contains either four or five editing tools. The Edit Story Menu contains four editing tools when a new story or an existing unpublished story is being edited. The four editing tools that are always present are "Reorder slides" 151 , "Select soundtrack" 152, "Change story title" 153, and "Remove whole story" 154. When editing an existing and previously published story the Edit Story Menu also contains the "Revert story from server" 155 editing tool (see, e.g., FIG. 8).
[0048] When the "Reorder slides" tool is tapped, the Slide Order Window opens. The Slide Order Window contains each slide stacked vertically in the order it will appear in the final story with the first slide on top. A slide's position in the final story can be edited in the Slide Order Window. The Grab icon, consisting of three solid bars stacked vertically and positioned directly to the right of the corresponding slide thumbnail, is used to edit the order of a slide. To move a slide, one finger is placed on the device's screen on the Grab icon and is move up or down without lifting the finger. When the slide is moved into the desired place in the slide order, the grab icon is released and the slide drops into place. When a slide is moved using the "Reorder slides" tool, the edits that were previously made to the slide media move with the slide. A slide can also be deleted in the Slide Order Window. Tapping the red circle to the right of a slide thumbnail replaces the Grab icon with a red "Delete" button, which deletes the slide if tapped. The Slide Order Window is closed and any edits are saved when the "Close" button located on the top left corner of the window is tapped.
[0049] When the "Select soundtrack" tool 152 in the Edit Story menu is tapped, the Soundtrack Window opens. In the Soundtrack Window music can be turned ON or OFF, soundtracks can be previewed, and a soundtrack can be selected. If the music option is turned off, then the final published story will not contain a soundtrack. If the music option is turned on and a soundtrack is selected, then it will play across the entirety of the final published story. The ON/OFF toggle for the music is located in the upper right quadrant of the Soundtrack Window. It is activated and deactivated by tapping the screen directly on the toggle. The toggle is deactivated and the music is OFF when the toggle displays "OFF" and is white in color. The toggle is activated and the music is ON when the toggle displays "ON" and is blue in color. Each soundtrack can be previewed over the device's speakers by tapping the square play button to the left of each soundtrack. Tapping the white square directly across from a desired song assigns it as the soundtrack for the final story. The "Save" button in the top right corner of the window must be tapped to exit and save any edits made in the Soundtrack Window. Tapping the "Cancel" button in the top left corner exits the Soundtrack Window without saving any edits.
[0050] When the "Change story title" tool 153 in the Edit Story menu is tapped, the Story Title Window opens. The Story Title Window allows the device's on screen keyboard to be used to type a title for the final story that does not exceed sixty-eight characters. The "Save" button in the top right corner of the window must be tapped to exit and save any edits made in the Story Title Window. Tapping the "Cancel" button in the top left comer exits the Story Title Window without saving any edits. The story title as edited with the "Change story title" tool is displayed on the center of the header bar of the Story Creation Window 118.
[0051] When the "Remove whole story" tool 154 in the Edit Story menu is tapped, a warning bubble opens. The warning bubble contains a "Cancel" button and a "Yes" button. If the "Cancel" button is tapped the warning bubble disappears and the Story Creation Window is displayed. If the "Yes" button is tapped the entire story is deleted.
[0052] When the "Revert story from server" tool 155 in the Edit Story menu is, a warning bubble opens. The warning bubble contains a "Cancel" button and a "Yes" button. If the "Cancel" button is tapped the warning bubble disappears and the Story Creation Window is displayed. If the "Yes" button is tapped the last version of the story to be published is loaded from the server and any subsequent edits are lost.
[0053] Returning to the Story Creation Window 118 and tapping the "Share" button 157 located on the header bar, publishes the final story to the server 158. If the "Share" button is selected and the story has not been assigned a title a warning bubble opens 159. The warning bubble contains a "Share without title" button, a "Edit title" button, and a "Cancel" button. If the "Cancel" button is tapped the warning bubble disappears and the Story Creation Window is displayed. If the "Share without title" button is tapped the final story is published to the server. If the "Edit title" button is tapped the Story Title Window opens. After the publication of a story is complete the Share Story menu is displayed.
[0054] The Share Story menu contains five buttons. If the "Share with Email" button 160 is tapped the device's native email application loads and pre-filled email is displayed, with which the story can be shared to any contact typed into the "To:" field. If the "Share with SMS" button 161 is tapped, the device's native SMS application loads and pre-filled SMS message is displayed, with which the story can be shared to any contact typed into the "To:" field. If the "[username] (Twitter)" button 162 is tapped, a Twitter message box is opened that enables the story to be posted directly to Twitter. If the "[username] Facebook" button 163 is tapped, a Facebook post box is opened that enables the story to be posted directly to Twitter. If the "Cancel" button is tapped, the Story Creation Window is displayed. After a story is published it appears as an existing published story on the Home Screen.
[0055] When a story is published to the server the component media slides, any corresponding edits, and any soundtrack are mixed together with automatically generated slide transitions and still photo movement effects and encoded into a single video file that is saved to the server. Any links shared through the Voyzee App via Email, SMS, Facebook, or Twitter link to and play from the server. Published and shared stories are viewed in the device's browser.
[0056] FIG. 2 is a flowchart shows an embodiment of the Voyzee App backend server processes and systems. The system is comprised of at least one Web Server 202, at least one Upload Point Server 203, at least one Storage Server 204, an expandable Transcoding Cluster 205, an expandable Messaging Cluster 206, a Messaging Gateway 207 and User device 201 that are communicatively coupled to one another. The network 208 connecting the User device and the server system and the network 209 connecting the components of the server system may be partially or entirely comprised of, for example, a local area network (LAN), a wireless LAN (WLAN), a metropolitan area network (MAN), a wireless MAN (WMAN), a wide area network (WAN), a wireless WAN (WWAN), a personal area network (PAN), a wireless PAN (WPAN), the Internet, and/or wireless standards such as, for example, IEEE 802.11 standards, wireless fidelity (WiFi), Bluetooth, infrared, WiMAX, Long Term Evolution (LTE) and/or future versions and/or derivatives thereof.
[0057] The Web Server(s) 202, Upload Point Server(s) 203, Storage Server(s) 204, Transcoding Cluster 205, Messaging Cluster 206, and Messaging Gateway 207 comprises at least a computation unit and a data storage unit. The computation unit may be a processor or a central processing unit of the server that carries out instructions stored in the data storage unit. The data storage unit may be, for example, volatile memory such as random access memory (RAM), non-volatile memory such as read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computation unit.
[0058] The User device 201 comprises of a user interface and a user device. The user device comprises an input device and an output device. The user device allows the User to enter user input to be delivered to the server. The output device displays or presents data received from the server to the user. The input device and output device may be physically embodied in one device, such as an iOS device with a touch screen interface.
[0059] FIG. 4 is a flowchart of the data flow between the frontend and backend processes during User Registration. The client as shown in FIG. 4 represents actions occurring with respect to the User device 201 and User Interface (see, e.g., FIGs. 1A- C), while the server side as shown in FIG. 4 represents actions with respect to the Server System. The User Registration process begins with the User initializing the Voyzee App as described in the Ul summary. The User provides the required account registration information which is submitted 401 to the Web Server 202. The Web Server constructs a User Account ID, which is saved onto the Database 2 0. The Web Server then generates and transmits 402 an email, containing an activation link, to the User email account. The User accesses the activation link, submitting 403 an activation request to the Web Server. Upon receipt, the Web Server activates the user account and updates the user information on the Database, allowing the User to login into the Voyzee Account.
[0060] FIG. 5 is a flowchart of the data flow between the frontend and backend processes during User Login. The client as shown in FIG. 5 represents actions occurring with respect to the User device 201 and User Interface (see, e.g., FIGs. 1A- C), while the server side as shown in FIG. 5 represents actions with respect to the Server System (see, e.g., FIG. 2). The User Login process begins with the User initializing the Voyzee App as described in the Ul summary. Once the User enters Login information, a request 501 to authenticate the user information is sent to the Web Server 202. The Web Server stores the user information in its Database 210. After the Web server receives the request from the User interface and authenticates the User Account ID, the Web Server generates a list of the User's stories, story tickets and User account information. The Web Server then transmits 502 the information back to the User interface and user device, on which the User account information and list of stories are displayed.
[0061] FIG. 3 is a flowchart of the data flow between the frontend and backend processes when a new story is created. The client as shown in FIG. 3 represents actions occurring with respect to the User device 201 and User Interface (see, e.g., FIGs. 1 A-C), while the server side as shown in FIG. 3 represents actions with respect to the Server System (see, e.g., FIG. 2). The User Login process begins with the User initializing the Voyzee App as described in the Ul summary. The entire Story Editing process is conducted and stored on the User device. Any edits to media is stored as data layers on top of the corresponding media slides. When the User initiates the publishing process the User device transmits 301 a ticket request for each individual piece of media and editing data layer to the Web Server (API). The Web Server creates ticket information, including an order of ticket assembly, for each individual piece of media and editing data layer 302. The Web Server sends the ticket information to the User device 303 and sends the ticket information and overall process directions through the Messaging Gateway 207 to the Messaging Servers 206, which receive and transmit internal server system requests and notices. The Messaging Servers transmit the ticket information and overall process directions through the internal network 209 to the Upload Point Server, Storage Server, and Transcoding Cluster. Once the User device receives the ticket information, the User device assigns the ticket information to each corresponding piece of media and editing data layer, which is then uploaded 304 to the Upload Point Server 203. The Upload Point Server stores the ticket and story information in its Database 211 and sends the media and editing data layers to the Storage Server 204 and Transcoding Cluster 205. The Transcoding Cluster conducts the transcoding process, which assembles the pieces of media and editing data layers into a single video file, as per the instructions received from the Web Server via the Messaging Cluster. Once the transcoding process is completed the finished story is published to the Storage Server and the User is sent a publishing link to the final video story through the messaging center and Web Server. With the publishing link, the final video story can be viewed using a secure or unsecure (http or https) connection from any device capable of receiving and display streaming video.
[0062] In another embodiment of a computer platform, Google Android™ Operating System ("Android") application software for creating and sharing mixed media video stories is provided. The Android application (hereinafter "Voyzee App") is installed in a computer platform (i.e., Android device) that uses the Android™ Operating System via user download from Google Play™. When activated Voyzee allows a user to capture or import photos and/or video clips; edit captured and imported photos and/or video clips prior to publication and sharing as a single video file by recording and attaching voice-over narration to each photo and/or video clip, adding customized caption text to each photo and/or video clip, applying visual filter effects to each photo, cropping each photo, rotating each photo, and/or trimming start and end points of each video clip; select a title/thumbnail image for the final video file ("Story") prior to publication and sharing; create a text title for the final video file prior to publication and sharing; select a soundtrack to be played over the entire final video file prior to publication and sharing; rearrange the order that photos and/or video clips will be displayed in the final video file prior to publication and sharing, while preserving any edits made to individual photos and/or video clips; add and edit additional photos and/or video clips prior to publication and sharing; delete photos and/or video clips, along with any edits made thereto, prior to publication and sharing a final video file; publish each photo and/or video clip to an external server where each photo and/or video clip, along with any edits that are made, is transcoded and encoded into a single video file prior to sharing; share final video file via electronic mail, Twitter™, Tumblr™, Facebook™, and/or any compatible social media service after publication; store and view photos and/or video clips, along with any edits that are made, that comprise published and unpublished and shared and unshared final video files; make any edits, previously described, to the component photos and/or video clips of previously published and/or shared final video files prior to republication and re-sharing.
[0063] In one embodiment, the application software (hereinafter "Voyzee App") is designed for Google Android Operating System (Android) and supports devices running Android 2.3 and higher and/or future versions and/or derivatives. The Voyzee App is distributed to user devices via download through Google Play. The Voyzee App fully supports both front and back facing device cameras and utilizes Android's multi-gesture interface.
[0064] With reference to FIGs. 9A-D, upon download and installation via Google Play to a user device, the Voyzee App appears as a "VZ" app icon on the user device's home page. A user initializes the Voyzee App by tapping the VZ app icon 900. The first time the Voyzee App is initialized a Register/Sign In screen is displayed 901. To create an account the user taps the "Register" button, which brings up the Account Registration Screen 901. To register an account the user fills in the requested information on the Account Registration Screen and then taps the "OK" button. The user is then sent a welcome email to the account provided during registration. The welcome email verifies that the user account has been activated 902. After completing the registration process, the user is automatically signed into his Voyzee account or the user can initialize the Voyzee App 903, at which point the Register/Sign In Screen is displayed and the user fills in certain sign-in information and taps the "OK" button. After tapping the "OK" button, the user can access the user's story list (hereinafter "Home Screen") 904. On the Home Screen individual stories are displayed as square tiles with the title of the story appearing across the top of a thumbnail image of the cover slide.
[0065] A user has four options to interact with the user Home Screen, which includes opening the Settings Menu 905, adding a new story 915, selecting an Existing Unpublished Story 921 , and selecting an Existing Published Story 922. The Settings Menu is accessed by tapping the device's Menu button (the Menu button is the button located on the lower left corner of the front face of an Android device). When the Settings button is activated, the Settings Menu pops up from the bottom of the screen and contains three options: 1. Sign Out; 2. Preferences; 3. Refresh 905. From the Settings Menu a user can Sign Out/Sign In to a Voyzee account 906 by tapping the button labeled "Sign Out" or "Sign In," depending whether the user is already signed into an account; refresh the stories displayed in the Home Screen by selecting the button labeled "Refresh"; and access the Preferences Menu 908 by selecting the button labeled "Preferences."
[0066] In the Preferences Menu 908 the user can clear the Voyzee App's memory cache 909 by tapping the "Clear" button; access the Feedback option 910 by tapping the "Feedback" button, which opens the device's email application and allows the user to send an email to support@voyzee.com; access the Support option 911 by tapping the "Support" button, which opens a screen containing the Voyzee App's support documentation; access the Terms of Service option 912 by tapping the "Terms of Service" button, which opens a screen containing the Voyzee App's terms of service; access the Privacy Policy option 913 by tapping the "Privacy Policy" button, which opens a screen containing the Voyzee App's Privacy Policy; and access the Contact option 914 by tapping the "Contact" button, which opens a screen containing the Voyzee App's Contact information. A user exits the Preferences Menu or any selected option therein by pressing the Return button (the Return button is the button located on the lower right corner of the front face of an Android device), which returns the user to the Home Screen.
[0067] On the Home Screen the user can create a new story 915 by tapping the New Story button, located in the upper right corner of the Home Screen and appearing as a plus sign in circle. When the New Story button is selected, the Add Story Name pop-up window is displayed 916. After the user enters a title and selects "OK," the device's native Gallery app opens, and the user has two options to Add Slide(s) 917. New media (i.e., photos and/or video clips) can be imported from the device's Media Albums and Camera Roll 918 or new media can be captured with the device's native Camera Interface 919. The user selects a photo(s) and/or a video clip(s) to import into the Voyzee App from the device's Camera Roll or Media Albums, which include any remote albums corresponding to any third party media storage accounts, including Facebook, Tumblr, Dropbox, Instagram, Flikr, and/or any compatible media storage device, by tapping on the photo(s) and/or video clip(s) thumbnail image and then tapping on the button displaying a graphic Check Mark, located in the upper left corner of the media album screen. A user can import an unlimited number of photos and/or videos. After tapping the Check Mark button, the selected photo(s) and/or video clip(s) are loaded into the Voyzee App and displayed as individual slides in the Story Creation Window 920. The second option to add new media to a story available on the Add Slides Menu is to use the device's native Camera Interface 919, the operation of which may be variable based on the device used.
[0068] The last two options to interact with the user Home Screen are selecting an Existing Unpublished Story 920 and selecting an Existing Published Story 921. An Existing Unpublished Story is a story in which the story creation process has begun but the story has not been published. An Existing Unpublished Story is denoted on the Home Screen as a story tile with a blue "NEW" ribbon across the upper left corner of the story thumbnail. An Existing Published Story is a completed story that has been published and is denoted by a story tile without the "NEW" ribbon. A user selects either an Existing Unpublished Story or an Existing Published Story by tapping on the corresponding story tile, which opens the Story Creation Window 920 with the selected story's media loaded as slides.
[0069] The Story Creation Window is the central screen of the Voyzee App, from which a user can access the editing options. The Story Creation Window displays the imported and loaded media, i.e., photo(s) and video clip(s), in individual slides. The currently selected media slide is prominently displayed as the large thumbnail. The previous and following slides can be selected in the large thumbnail display by touching a finger to the screen and either swiping it left to select the following slide or right to select the previous slide 923. Smaller slides are displayed below the large thumbnail of the currently selected slide. The loaded slides can be scrolled through the small slide interface by touching a finger to one of the small slides and swiping it left or right. Any of the small slides can be tapped, which will designate the tapped slide as the selected slide and displace the slide displayed as the large thumbnail.
[0070] There are four buttons displayed on the Story Creation Window. Each button corresponds to a different action and can be initialized in any order. Located in the upper left corner, the "VZ" icon button opens the Home Screen when selected 924. The "+" button, located in the upper right corner, is the Add Slide(s) button and initiates the add media slides process (described above) when selected 917. Located in the upper right corner and appearing as downward facing triangle in a circle, the Drop Down Story Edit Menu 925 displays the story editing options in a drop down menu when selected. Located in the upper right corner and appearing as a gear inside a circle, the "Tune" button opens the Tune Menu and displays the available Slide Actions for the currently selected slide 926 (see, e.g., FIG. 10). In addition to the four buttons displayed on the screen, the device's Return button can be pressed while the Story Creation Window is open to return to the Home screen 924.
[0071] Selecting the "Tune" button 926 displays the Tune Menu, which contains up to six options for Slide Actions, depending on what previous edits have been made to the selected slide (see, e.g., FIG. 10). The "Caption" tool displays the "Edit Caption" pop-up interface when selected and allows a user to enter or edit a caption for the selected slide 927. When a caption is entered for a slide, the caption text is displayed underneath the large thumbnail of the selected slide. The "Set As Cover" tool designates the image of the selected slide, which is then currently displayed as the large thumbnail, as the cover image and thumbnail for the story 928. The "Delete Slide" tool displays the Delete Slide pop-up interface when selected and allows a user to choose to delete the current slide from the story 929. The "Delete Narration" tool, which is only displayed if narration has been previously recorded to the slide, displays the Delete Narration pop-up interface when selected and allows a user to choose to delete recorded narration from the currently selected slide 930. The "Insert Before" tool initiates the add media slide(s) process (described previously) 917 and allows a user to insert a new media slide into the story before the currently selected slide 931. When selected the "Edit Slide" tool 932 displays either the Photo Slide Editing Window 933 or the Video Slide Edit Window 934, depending on whether the currently selected slide consists of a photo or video clip. At any time the Tune menu can be exited and the Story Creation Window can be returned to by tapping anywhere on the device's screen other than the Tune menu or by pressing the device's Return button.
[0072] When selected the "Edit Slide" tool 932 displays either the Photo Slide Editing Window 933 or the Video Slide Edit Window 934, depending on whether the currently selected slide consists of a photo or video clip. When the Photo Slide Editing Window is initialized 933 up to six tool icons are displayed. Located in the upper right comer, the "Voice" tool displays the Record Narration Screen and allows a user to record voice-over narration to the slide 935. When the narration is complete, the "Stop" button, which is located in the upper right corner of the Record Narration Screen, is selected to return to the Photo Slide Editing Window. After narration is recorded to the slide, the "Play" button appears under the "Voice" button and initializes the Play Narration Screen when selected, which plays back recorded narration 936 and returns to the Photo Slide Editing Window upon completion.
[0073] Located along the upper left side of the Photo Slide Editing Window, the rotate "Left" 938 and rotate "Right" 937 tool icons rotate the displayed photo slide 90 degrees left or right respectively. Located along the upper left side of the Photo Slide Editing Window, the "Crop" tool icon initializes the Crop Photo Screen when selected 939. In the Crop Photo Screen, a photo can be cropped by the orange crop box, and the crop box can be resized by touching and sliding any of the four arrow circles on the four sides of the box. The "Done" icon in the bottom right corner is selected to accept any cropping applied in the Crop Photo Screen and to return to the Photo Slide Editing Window, or the device's Return button is pressed to exit without applying changes.
[0074] Located along the left side of the Photo Slide Editing Window, the "Effects" tool icon opens the Effects Screen, which contains photo effect tools that are built into Android 940. When the effects screen is opened, the Preset Filters Screen is automatically displayed 941. In the Preset Filters Screen a filter can be applied to the selected photo slide. Ten filter options are displayed beneath the large thumbnail of the currently selected slide and can be navigated by touching a finger to one of the filters on the screen and either swiping it left to view the following filters or right to view the previous filters 942. For example, the types of preset filters that can be provided include none, punch, vintage, B/W, bleach, instant, latte, blue, litho, and X process filters. A filter is selected and applied to the currently selected slide by tapping the desired filter. The Tilt and Mirror Screen is activated by selecting the middle icon on the footer bar of the Effects Screen. When the Tilt and Mirror tool is activated, the "Tilt" 943 and "Mirror" 944 icons are displayed. When the "Tilt" icon is selected, the Tilt Tool Screen is displayed and allows the currently selected slide to be rotated and cropped by simultaneously placing two fingers apart on the screen and rotating until the desired position is obtained. When the "Mirror" icon is selected, the Mirror Tool Screen is displayed and allows the currently selected slide image to be flipped from top to bottom or left to right by sliding a finger across the image in the desired direction. The Adjustable Effects Screen is activated by selecting the icon located on the right side of the footer bar of the Effects Screen 945. In the Adjustable Effects Screen an effect can be applied to the selected photo slide and customized. Nine adjustable effects options are displayed beneath the large thumbnail of the currently selected slide and can be navigated by touching a finger to one of the effects on the screen and either swiping it left to view the following effects or right to view the previous effects 946. For example, the types of adjustable effects provided can include autocolor, exposure, contrast, shadows, vibrance, curves, hue, saturation, and BW filter effects. An effect is selected and applied to the currently selected slide by tapping the desired filter. The "Save" icon in the upper left comer is selected to apply edits made in the Effects Screen and return to the Photo Slide Editing Window. The device's Return button is pressed to abandon edits and return to the Photo Slide Editing Window. The "Done" icon in the upper left corner of the Photo slide Editing Window is selected to apply edits and return to the Story Creation Window 947. The device's Return button is pressed to abandon edits made in the Photo Slide Editing Window and to return to the Story Creation Window 947.
[0075] When the Video Slide Editing Window is initialized 934, by selecting the "Edit Slide" tool, two tool icons and a slide tool are displayed. Located in the upper right corner, the "Voice" tool displays the Record Narration Screen and allows a user to record voice-over narration to the slide while the video clip plays 948. When the narration is complete, the "Stop" button, which is located in the upper right corner of the Record Narration Screen, is selected to return to the Photo Slide Editing Window. Located at the bottom of the Video Slide Editing Window, the Trim Slide is used to edit the start and end frames of the video clip when activated 949. The start and end frames of the video clip can be adjusted by placing a finger on either the left or right round buttons on the slide tool and dragging the button until the left or right thumbnail displays the desired start or end frame. The "Play" button, located under the "Voice" button, initializes the Play Video Clip Screen when selected, which plays back recorded narration and the video clip with any edits to the start and end points, 950 and returns to the Video Slide Editing Window upon completion. The "Done" icon in the upper left corner of the Video Slide Editing Window is selected to apply edits and return to the Story Creation Window 951. The device's Return button is pressed to abandon edits made in the Video Slide Editing Window and to return to the Story Creation Window 951.
[0076] Located in the upper right corner of the Story Creation Window and appearing as downward facing triangle in a circle, the Drop Down Story Edit Menu 925 displays the story editing options in a drop down menu when selected. The drop down Story Edit Menu contains up to six options: Share Story, View Story, Edit Story Title, Select Soundtrack, Arrange Slides, Publish Story, and Delete Story (see, e.g., FIG. 11). [0077] The "Share Story" tool is only available in the drop down Story Edit Menu if the selected story has been previously published (see, e.g., FIG. 11 ). When selected the Share Story tool 952 opens the Share Story Screen and allows a user to share a published story via Facebook, Twitter, or Email. When the Facebook icon is selected in the Share Story Screen, a Facebook post pop-up appears and allows a user to author a Facebook post containing a link to the published story 953. If the user has not previously logged into a Facebook account, the Facebook Log In and New Account interface displays after the Facebook post is completed. When the Twitter icon is selected in the Share Story Screen, a Twitter post pop-up appears and allows a user to author a Twitter post containing a link to the published story 954. If the user has not previously logged into a Twitter account, the Twitter Log In and New Account interface displays after the Twitter post is completed. When the Facebook icon is selected in the Share Story Screen, a Facebook post pop-up appears and allows a user to author a Facebook post containing a link to the published story 953. If the user has not previously logged into a Facebook account, the Facebook Log In and New Account interface displays after the Facebook post is completed. When the Email icon is selected the device's native email application loads and a pre-filled email is displayed, with which the story can be shared to any contact typed into the "To:" field 955. The device's Return button is pressed to return to the Story Creation Window 956.
[0078] When selected from the drop down Story Edit Menu, the "View Story" icon opens the View Story Window, in which the story can be previewed before publishing
957. The preview plays each slide in order along with any edits made to the story or individual slides. The device's Return button is pressed to return to the Story Creation Window 956.
[0079] When selected from the drop down Story Edit Menu, the "Edit Story Title" icon opens the Edit Story Title pop-up window and allows the user to edit the story title
958. Text is entered into the title field by tapping the pop-up window and using the device's native keyboard. The "OK" button is selected to apply edits and return to the Story Creation Window 956. The "Cancel" button is selected or the device's Return button is pressed to abandon any edits and return to the Story Creation Window 956. [0080] When selected from the drop down Story Edit Menu, the "Select Soundtrack" icon opens the Select Soundtrack pop-up window 959. In the Select Soundtrack Window soundtracks can be turned ON or OFF, soundtracks can be previewed, and a soundtrack can be selected. If the soundtrack option is turned off, then the final published story will not contain a soundtrack. If the soundtrack option is turned on and a soundtrack is selected, then it will play across the entirety of the final published story. The ON/OFF toggle for the soundtrack is located in the upper right quadrant of the Select Soundtrack Window. It is activated and deactivated by tapping the screen directly on the ON/OFF toggle. The toggle is deactivated and the music is OFF when the toggle displays "OFF" and is grey in color. The toggle is activated and the music is ON when the toggle displays "ON" and is blue in color. Each soundtrack can be previewed over the device's speakers by tapping the triangular play button to the left of each soundtrack. Tapping the square directly across from a desired soundtrack or tapping the title of a soundtrack assigns it as the soundtrack for the final story. Turning the soundtrack option off or selecting a soundtrack automatically closes the Select Soundtrack Window and returns to the Story Creation Window 956. The device's return button can be pressed at any time to abandon any changes and return to the Story Creation Window 956.
[0081] When selected from the drop down Story Edit Menu, the "Arrange slides" icon opens the Arrange Slides pop-up window 960. The Arrange Slides Window contains each slide stacked vertically in the order it will appear in the final story with the first slide on top. A slide's position in the final story can be edited in the Arrange Slides Window. The Grab icon, consisting of an upward facing triangle stacked on a downward facing triangle in a circle and positioned directly to the right of the corresponding slide thumbnail, is used to edit the position of a slide. To move a slide, one finger is placed on the device's screen on the Grab icon and is moved up or down without lifting the finger. When the slide is moved into the desired place in the slide order, the grab icon is released and the slide drops into place. When a slide is moved using the "Arrange Slides" tool, edits that were previously made to the slide media move with the slide. The Arrange Slides Window is closed and any edits are saved when the "Done" button located in the bottom right corner of the window is tapped 956. The device's Return button can be pressed at any time to abandon any changes and return to the Story Creation Window 956.
[0082] When selected from the drop down Story Edit Menu, the "Publish Story" icon publishes the story to the server for transcoding and encoding 961. When a story is published to the server the component media slides, any corresponding edits, and any soundtrack are mixed together with automatically generated slide transitions and still photo movement effects and transcoded into a single video file that is saved to the server. Any links shared through the Voyzee App via Email, Facebook, or Twitter link to and play from the server. Published and shared stories are viewed in the device's browser. After the publishing process is completed, the Story Creation Window is displayed 956.
[0083] When selected from the drop down Story Edit Menu, the "Delete Story" icon opens the Delete Story pop-up window 962. The Delete Story window contains a "Cancel" button and an "OK" button. If the "Cancel" button is tapped the window disappears and the Story Creation Window is displayed. If the "Yes" button is tapped the entire story is deleted from the Voyzee App and the Servers. After selecting either button or pressing the device's Return button, the Story Creation Window Appears.
[0084] In various other embodiments, the method and apparatus described herein and its constituent processes, components, and interconnections can be altered in various manners to accomplish the same purpose. For example, a given process, component, or interconnection can be migrated from the user device to a server or vice versa. Similarly, a given process, component, or interconnection in the server can be duplicated in the user device and vice versa. Additionally, the method and apparatus described herein can also be implemented in other types of operating systems and computer platforms. For example, the method and apparatus described herein can be implemented in an iOS software application and a compatible Apple™ iOS device, an Android device and a compatible Android application, or any suitable computing device with a compatible operating system and software application.
[0085] With reference to FIGs. 12A and 12B, a functional diagram of an exemplary embodiment a process for generating a video file shows how a server system interacts with a user device with a client component to process an ordered series of slides that include various media components to form the video file. The server system assigns tickets to each media element (e.g., photo, video, narration, soundtrack, etc.) that needs transcoding. Each 'slide' is represented as a combination of tickets, media, and supplemental information (e.g., text captions, animation instructions (on/off), display duration, etc.). Initially, the client (e.g., mobile App, web App, etc.) sends ticket requests from the user device to upload servers in an upload point cluster of the server system (see circle 1). The upload point cluster creates tickets in response to the each ticket request. After the tickets are created, a ticket list is compiled to send the tickets to the client (see circle 2). The client compiles the ticket list into a story list and sends it to a story server of the server system (see circle 3). The client sends the various media components to the upload servers (see circle 4). The upload servers combine the media components for each ticket and store the combined media components in ticket storage locations at a media storage device. At this point, the upload point cluster sends a message to a transcoding queue of the server system to submit the story for transcoding (see circle 5).
[0086] Transcoding servers in a transcoding cluster of the server system read information from transcoding queue and, after reading the message submitted for the story, pull the media components and other information from the ticket storage locations and perform the required transcoding. After transcoding, the media components are in a desired target media format. The transcoding cluster stores the transcoded media components in ticket storage locations at a transcoded storage device. After transcoding, the transcoding cluster sends information to a tickets ready queue of the server system to submit the story for further processing. See circle 6.
[0087] A call back service of the server system pulls information from the tickets ready queue and sends the information to the story server indicating the story is ready for further processing (see circle 7). After the tickets for a story are ready for further processing, the story server sends information to a mixing queue of the server system to submit the story for mixing (see circle 8). The mixing queue sends information to mixing servers in a mixing cluster of the server system to start the mixing process (see circle 9). The mixing servers mix the transcoded media components to create a final mix of the story to form a video file. The mixing cluster stores the video file in story location at a video storage device and sends information to the tickets ready queue indicating that the video file for the story was mixed (see circle 10). The tickets ready queue sends information to the story server indicating that the video file for the story was mixed and is available at the video storage device for sharing, playing, and/or downloading.
[0088] With reference to FIG. 13, an exemplary embodiment of a process 1300 for generating a video file begins at 1302 where a plurality of ticket requests are received from a user device at a server system via a network. The plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story. Each ticket request identifying media content and editing information for the corresponding media slide. At 1304, the plurality of ticket requests are processed at the server system to generate a ticket assembly order and to prepare for receiving the media content associated with the plurality of media slides. The ticket assembly order including ordered instructions for assembling and uploading the media content associated with the plurality of media slides. At 1306, the ticket assembly order is sent to the user device from the server system. Next, the media content associated with the plurality of media slides is received from the user device at the server system (1308). The received media content having been assembled and uploaded by the user device in response to the ticket assembly order. At 1310, the received media content is transcoded at the server system in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form a video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device.
[0089] In another embodiment, the process 1300 also includes receiving a story list from the user device at the server system via the network. The story list identifies media content for the story and editing information for the corresponding media content. The media content identified in the story list identifies a story title, a thumbnail image, a soundtrack, or a story description in any suitable combination. The story list is processed at the server system in conjunction with processing the plurality of ticket requests to generate the ticket assembly order and to prepare for receiving the media content associated with the story list. The ticket assembly order including ordered instructions for assembling and uploading the media content associated with the story list. The media content associated with the story list is received from the user device at the server system. The media content associated with the story list having been assembled and uploaded by the user device in response to the ticket assembly order. The media content associated with the story list transcoded at the server system in accordance with the ticket assembly order and in accordance with the editing information associated with the story list in conjunction with forming the video file. In a further embodiment of the process 1300, when the story list includes the thumbnail image, the thumbnail image is associated with a digital image or a select frame of a video clip from a select media slide of the plurality of media slides, the corresponding digital image or select frame associated with the thumbnail image being further associated with a cover slide for the story. In another further embodiment of the process 1300, when the story list includes the soundtrack, the editing information identified in the story list identifies an on/off attribute for the soundtrack.
[0090] In yet another embodiment of the process 1300, the media content identified in the corresponding ticket request for each media slide identifies a digital image, a video clip, a slide caption, or an audio narration in any suitable combination. In a further embodiment of the process 1300, the digital image associated with at least one media slide includes a digital photo. In another further embodiment of the process 1300, for each media slide including the digital image, the editing information identified in the ticket request for the corresponding media slide identifies a scaling attribute, a cropping attribute, a positioning attribute, a rotation attribute, a mirroring attribute, a color filtering attribute, a color adjustment attribute, an audio narration attribute, a duration attribute, an animation attribute, a transition attribute, or any suitable attribute for any editable image characteristic in any suitable combination for the digital image associated with the corresponding media slide. In yet another further embodiment of the process 1300, for each media slide including the video clip, the editing information identified in the ticket request for the corresponding media slide identifies a start frame attribute, an end frame attribute, an enable/disable audio attribute, or any suitable attribute for any editable video characteristic in any suitable combination for the video dip associated with the corresponding media slide.
[0091] In still another embodiment, the process 1300 also includes storing the plurality of ticket requests associated with the story in a storage device at the server system.
[0092] In still yet another embodiment, the process 1300 also includes assigning a story identifier to the plurality of ticket requests in conjunction with generating the ticket assembly order to uniquely identify and associate the plurality of media slides, the plurality of ticket requests, the ticket assembly order, the subsequently received media content, and the subsequently formed video file with the story. Ticket identifiers are assigned to each ticket request associated with the story. Media content identifiers are assigned to each media content associated with each ticket request. An ordered ticket list is generated. The ordered ticket list associating the assigned ticket identifiers with the corresponding media slides that form the story and associating the assigned media identifiers with the media content of the corresponding media slide. The ticket assembly order includes the story identifier, ticket identifiers, and media identifiers associated with the story. The ordered instructions include the ordered ticket list. In a further embodiment of the process 1300, the received media content includes the story identifier, the ticket identifier for the corresponding media content, and the media identifier for the corresponding media content.
[0093] In another embodiment, in conjunction with processing the plurality of ticket requests, the process 1300 also includes reserving resources at the server system for subsequent storage of the media content. Resources are also reserved at the server system for subsequent transcoding of the media content. Additionally, resources are reserved at the server system for subsequent storage of the video file.
[0094] In yet another embodiment, the process 1300 also includes storing the ticket assembly order associated with the story in a storage device at the server system. In still another embodiment, the process 1300 also includes storing the media content associated with the plurality of media slides forming the story in a storage device at the server system. [0095] In still another embodiment, in conjunction with transcoding the received media content, the process also includes adjusting the received media content in accordance with the editing information associated with the plurality of ticket requests. The adjusted media content is decoded to an intermediate media format. The decoded media content is encoded to a target media format previously selected for the subsequently formed video file. Video and audio portions of the received media content in the target media format are assembled in accordance with the ticket assembly order. The assembled video and audio portions of the received media content are mixed to form the video file.
[0096] In still yet another embodiment of the process 1300, a first portion of the received media content includes at least one content item that is compatible with a target media format previously selected for the subsequently formed video file and a second portion of the received media content includes at least one content item that is not compatible with the target media format, in conjunction with transcoding the received media content. In this embodiment, the process 1300 also includes adjusting the received media content in accordance with the editing information associated with the plurality of ticket requests. The second portion of the received media content is decoded to an intermediate media format. The second portion of the received media content is encoded to the target media format previously selected for the subsequently formed video file. Video and audio portions of the first and second portions of the received media content in the target media format are assembled in accordance with the ticket assembly order. The assembled video and audio portions of the received media content are mixed to form the video file.
[0097] In another embodiment, the process 1300 also includes storing the video file in a storage device at the server system. A publishing link is generated at the server system for access to the video file stored at the server system. The publishing link is sent to the user device from the server system. In a further embodiment of the process 1300, the publishing link provides the user device with access to the video file for sharing, playing, or downloading the video file from the server system. In an even further embodiment of the process 1300, the publishing link enables the user device to share the video file by posting the publishing link to a social media web site, posting the video file to the social media web site, posting the publishing link to an Internet web site, posting the video file to the Internet web site, sending the publishing link to one or more recipient in an electronic message, sending the video to one or more recipient in the electronic message, e-mailing the publishing link to one or more e-mail address, or e- mailing the video file to the one or more e-mail address in any suitable combination.
[0098] In yet another embodiment of the process 1300, the video file is compatible with an MPEG-4 digital multimedia format.
[0099] In still another embodiment, the process also includes receiving a second plurality of second ticket requests from the user device at the server system via the network. The second plurality of second ticket requests are associated with a corresponding revised plurality of revised media slides having been previously arranged on the user device to form a revised story based at least in part on the previous plurality of previous media slides associated with the previous story. Each second ticket request identifying media content and editing information for the corresponding revised media slide. The second plurality of second ticket requests are processed at the server system to generate a second ticket assembly order replacing the previous ticket assembly order and to prepare for receiving the media content associated with the revised plurality of revised media slides. The second ticket assembly order including second ordered instructions for assembling and uploading the media content associated with the revised plurality of revised media slides. The second ticket assembly order is sent to the user device from the server system. The media content associated with the revised plurality of revised media slides is received from the user device at the server system. The received media content having been assembled and uploaded by the user device in response to the second ticket assembly order. The received media content associated with the revised plurality of revised media slides is transcoded at the server system in accordance with the second ticket assembly order and the revised editing information associated with the second plurality of second ticket requests to form a second video file replacing the previous video file for presentation of the revised story formed by the previous arrangement of the revised plurality of revised media slides on the user device. [00100] With reference to FIG. 14, an exemplary embodiment of a server system 1400 associated with generation of a video file includes a communication interface 1402, a ticket processor 1404, and a transcoding processor 1406. The communication interface 1402 configured to receive a plurality of ticket requests from a user device 1408 via a network 1410. The plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device 1408 to form a story. Each ticket request identifying media content and editing information for the corresponding media slide.
[00101] The ticket processor 1404 configured to process the plurality of ticket requests to generate a ticket assembly order and to prepare for receiving the media content associated with the plurality of media slides. The ticket assembly order including ordered instructions for assembling and uploading the media content associated with the plurality of media slides. The ticket processor 1404 is configured to send the ticket assembly order to the user device 1408 via the communication interface 1402 and the network 1410.
[00102] The communication interface 1402 is configured to receive the media content associated with the plurality of media slides from the user device 1408. The received media content having been assembled and uploaded by the user device 1408 in response to the ticket assembly order.
[00103] The transcoding processor 1406 configured to transcode the received media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form a video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device 1408.
[00104] In another embodiment of the server system 1400, the communication interface 1402 is configured to receive a story list from the user device 1408 via the network 1410. The story list identifies media content for the story and editing information for the corresponding media content. The media content identified in the story list identifies a story title, a thumbnail image for the story, a soundtrack, or a story description in any suitable combination. In this embodiment, the ticket processor 1404 is configured to process the story list in conjunction with processing the plurality of ticket requests to generate the ticket assembly order and to prepare for receiving the media content associated with the story list. The ticket assembly order including ordered instructions for assembling and uploading the media content associated with the story list. The communication interface 1402 is configured to receive the media content associated with the story list from the user device. The media content associated with the story list having been assembled and uploaded by the user device 1408 in response to the ticket assembly order. In the embodiment being described, the transcoding processor 1406 is configured to transcode the media content associated with the story list in accordance with the ticket assembly order and in accordance with the editing information associated with the story list in conjunction with forming the video file.
[00105] In another embodiment, the server system 1400 also includes a storage device 1412 configured to store the plurality of ticket requests associated with the story. In yet another embodiment of the server system 1400, the user device 1408 comprises a mobile device, an Apple iPhone Operating System (iOS) device, an Android device, a computer device, or any other suitable user device in any suitable combination.
[00106] In still another embodiment, the server system 1400 also includes one of one or more networked server nodes comprising the communication interface 1402, the ticket processor 1404, and the transcoding processor 1406. In still yet another embodiment of the server system 1400, the network 1410 comprises a LAN, a WLAN, a MAN, a WMAN, a WAN, a WWAN, a PAN, a WPAN, a WiMAX network, a wireless cellular network, an LTE wireless network, an Internet, a cable TV network, a satellite TV network, a satellite communication network, a WiFi access point, a Bluetooth access node, an infrared access node, or any suitable network in any suitable combination.
[00107] In another embodiment of the server system 1400, the ticket processor 1404 is configured to assign a story identifier to the plurality of ticket requests in conjunction with generating the ticket assembly order to uniquely identify and associate the plurality of media slides, the plurality of ticket requests, the ticket assembly order, the subsequently received media content, and the subsequently formed video file with the story. The ticket processor 1404 is also configured to assign ticket identifiers to each ticket request associated with the story. Additionally, the ticket processor 1404 is configured to assign media content identifiers to each media content associated with each ticket request. The ticket processor 1404 is also configured to generate an ordered ticket list associating the assigned ticket identifiers with the corresponding media slides that form the story and associating the assigned media identifiers with the media content of the corresponding media slide. The ticket assembly order includes the story identifier, ticket identifiers, and media identifiers associated with the story. The ordered instructions include the ordered ticket list.
[00108] In yet another embodiment, the server system 1400 also includes a storage device 1412 configured to store the media content and the video file. The ticket processor 1404 is configured to reserve resources at the storage device 1412 for subsequent storage of the media content. The ticket processor 1404 is also configured to reserve resources at the transcoding processor 1406 for subsequent transcoding of the media content. Additionally, the ticket processor 1404 is configured to reserve resources at the storage device 1412 for subsequent storage of the video file.
[00109] In still another embodiment, the server system 1400 also includes a storage device 1412 configured to store the ticket assembly order associated with the story. In still yet another embodiment, the server system 1400 also includes a storage device 1412 configured to store the media content associated with the plurality of media slides forming the story.
[00110] In another embodiment of the server system 1400, the transcoding processor 1406 is configured to adjust the received media content in accordance with the editing information associated with the plurality of ticket requests. The transcoding processor 1406 is also configured to decode the adjusted media content to an intermediate media format and to encode the decoded media content to a target media format previously selected for the subsequently formed video file. Additionally, the transcoding processor 1406 is configured to assemble video and audio portions of the received media content in the target media format in accordance with the ticket assembly order. The transcoding processor 1406 is also configured to mix the assembled video and audio portions of the received media content to form the video file.
[00111] In yet another embodiment of the server system 1400, a first portion of the received media content includes at least one content item that is compatible with a target media format previously selected for the subsequently formed video file and a second portion of the received media content includes at least one content item that is not compatible with the target media format. In this embodiment, the transcoding processor 1406 is configured to adjust the received media content in accordance with the editing information associated with the plurality of ticket requests. The transcoding processor 1406 is also configured to decode the second portion of the received media content to an intermediate media format and to encode the second portion of the received media content to the target media format previously selected for the subsequently formed video file. Additionally, the transcoding processor 1406 is configured to assemble video and audio portions of the first and second portions of the received media content in the target media format in accordance with the ticket assembly order. The transcoding processor 1406 is configured to mix the assembled video and audio portions of the received media content to form the video file.
[00112] In still another embodiment, the server system 1400 also includes a storage device 1412 and a publishing processor 1414. The storage device 1412 is configured to store the video file. The publishing processor 1414 is configured to save the video file formed by the transcoding processor 1406 in the storage device 1412, to generate a publishing link for access to the video file stored at the storage device 1412, and to send the publishing link to the user device 1408 via the communication interface 1402 and the network 1410.
[00113] In still yet another embodiment of the server system 1400, the transcoding processor 1406 is configured to form the video file in a digital multimedia format compatible with an MPEG-4 digital multimedia format.
[00114] In another embodiment of the server system 1400, the communication interface 1402 is configured to receive a second plurality of second ticket requests from the user device 1408 via the network 1410. The second plurality of second ticket requests are associated with a corresponding revised plurality of revised media slides having been previously arranged on the user device to form a revised story based at least in part on the previous plurality of previous media slides associated with the previous video file. Each second ticket request identifying media content and editing information for the corresponding revised media slide. In this embodiment, the ticket processor 1404 is configured to process the second plurality of second ticket requests to generate a second ticket assembly order replacing the previous ticket assembly order and to prepare for receiving the media content associated with the revised plurality of revised media slides. The second ticket assembly order including second ordered instructions for assembling and uploading the media content associated with the revised plurality of revised media slides. The ticket processor 1404 is also configured to send the second ticket assembly order to the user device 1408 via the communication interface 1402 and the network 1410. The communication interface 1402 is configured to receive the media content associated with the revised plurality of revised media slides from the user device 408. The received media content having been assembled and uploaded by the user device 1408 in response to the second ticket assembly order. In the embodiment being described, the transcoding processor 1406 is configured to transcode the received media content associated with the revised plurality of revised media slides in accordance with the second ticket assembly order and the revised editing information associated with the second plurality of second ticket requests to form a second video file replacing the previous video file for presentation of the revised story formed by the previous arrangement of the revised plurality of revised media slides on the user device 1408.
[00115] With reference to FIGs. 13 and 14, various exemplary embodiments of non-transitory computer-readable medium storing program instructions that, when executed by one or more processors, cause a corresponding server system to perform a method for generating a video file. For example, various embodiments of the server system 1400 are described above with reference to FIG. 14. Various embodiments of the method for generating a video file 1300, for example, are described above with reference to FIG. 13. In other words, the program instructions of the various exemplary embodiments of non-transitory computer-readable medium are defined by any suitable combination of the processes 1300 described above with reference to FIG. 13. Similarly, the one or more processors and the server system associated with the various exemplary embodiments of non-transitory computer-readable medium are defined by any suitable combination of the server system 1400 described above with reference to FIG. 14. [00116] With reference to FIG. 15, a process 1500 for generating a video file begins at 1502 where a plurality of ticket requests are sent to a server system from a user device via a network. The plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story. Each ticket request identifying media content and editing information for the corresponding media slide.
[00117] At 1504, a ticket assembly order is received from the server system at the user device. The ticket assembly order having been generated by the server system in response to the plurality of ticket requests and including ordered instructions for assembling and uploading the media content associated with the plurality of media slides. Next, the media content associated with the plurality of media slides are assembled in accordance with the ticket assembly order (1506).
[00118] At 1508, the assembled media content is uploaded to the server system from the user device in accordance with the ticket assembly order. Next, a publishing link to a video file is received from the server system at the user device ( 510). The server system having generated the publishing link after having transcoded the uploaded media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form the video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device and after having stored the video file.
[00119] In another embodiment, the process 1500 also includes sending a story list to the server system from the user device via the network. The story list identifies media content for the story and editing information for the corresponding media content. The media content identified in the story list identifies a digital image, a story title, a thumbnail image, a soundtrack, or a story description in any suitable combination. The ticket assembly order received by the user device having been generated by the server system after having received the story list. The ticket assembly order including ordered instructions for assembling and uploading the media content associated with the story list. The media content associated with the story list is assembled in accordance with the ticket assembly order. The media content associated with the story list is uploaded to the server system from the user device in accordance with the ticket assembly order. The publishing link to the video file received by the user device having been generated by the server system after having transcoded the media content associated with the story list in accordance with the ticket assembly order and in accordance with the editing information associated with the story list in conjunction with forming the video file. In a further embodiment of the process 1500, when the story list includes the thumbnail image, the thumbnail image is associated with a digital image or a select frame of a video clip from a select media slide of the plurality of media slides, the corresponding digital image or select frame associated with the thumbnail image being further associated with a cover slide for the story. In another further embodiment of the process 1500, when the story list includes the soundtrack, the editing information identified in the story list identifies an on/off attribute for the soundtrack.
[00120] In yet another embodiment of the process 1500, the media content identified in the corresponding ticket request for each media slide identifies a digital image, a video clip, a slide caption, or an audio narration in any suitable combination. In a further embodiment of the process 1500, the digital image associated with at least one media slide includes a digital photo. In another further embodiment of the process 1500, for each media slide including the digital image, the editing information identified in the ticket request for the corresponding media slide identifies a scaling attribute, a cropping attribute, a positioning attribute, a rotation attribute, a mirroring attribute, a color filtering attribute, a color adjustment attribute, an audio narration attribute, a duration attribute, an animation attribute, a transition attribute, or any suitable attribute for any editable image characteristic in any suitable combination for the digital image associated with the corresponding media slide. In yet another further embodiment of the process 1500, for each media slide including the video clip, the editing information identified in the ticket request for the corresponding media slide identifies a start frame attribute, an end frame attribute, or an enable/disable audio attribute in any suitable combination for the video clip associated with the corresponding media slide.
[00121] In still another embodiment, the process 1500 also includes storing the plurality of ticket requests associated with the story in a storage device at the user device. [00122] In still yet another embodiment of the process 1500, in conjunction with generating the ticket assembly order, the server system having assigned a story identifier to the plurality of ticket requests to uniquely identify and associate the plurality of media slides, the plurality of ticket requests, the ticket assembly order, the subsequently uploaded media content, and the subsequently formed video file with the story. In this embodiment, in conjunction with generating the ticket assembly order, the server system also having assigned ticket identifiers to each ticket request associated with the story. Additionally, in conjunction with generating the ticket assembly order, the server system having assigned media content identifiers to each media content associated with each ticket request. In the embodiment being described, in conjunction with generating the ticket assembly order, the server system also having generated an ordered ticket list associating the assigned ticket identifiers with the corresponding media slides that form the story and associating the assigned media identifiers with the media content of the corresponding media slide. The ticket assembly order includes the story identifier, ticket identifiers, and media identifiers associated with the story. The ordered instructions include the ordered ticket list. In a further embodiment of the process 1500, the uploaded media content includes the story identifier, the ticket identifier for the corresponding media content, and the media identifier for the corresponding media content.
[00123] In another embodiment, the process 1500 also includes storing the ticket assembly order associated with the story in a storage device at the user device. In yet another embodiment, the process 1500 also includes storing the media content associated with the plurality of media slides forming the story in a storage device at the user device.
[00124] In still another embodiment of the process 1500, the publishing link provides the user device with access to the video file for sharing, playing, or downloading the video file from the server system. In a further embodiment of the process 1500, the publishing link enables the user device to share the video file by posting the publishing link to a social media web site, posting the video file to the social media web site, posting the publishing link to an Internet web site, posting the video file to the Internet web site, sending the publishing link to one or more recipient in an electronic message, sending the video to one or more recipient in the electronic message, e-mailing the publishing link to one or more e-mail address, or e-mailing the video file to the one or more e-mail address in any suitable combination.
[00125] In still yet another embodiment of the process 1500, the video file is compatible with an MPEG-4 digital multimedia format.
[00126] In another embodiment, the process 1500 also includes sending a second plurality of second ticket requests to the server system from the user device via the network. The second plurality of second ticket requests are associated with a corresponding revised plurality of revised media slides having been previously arranged on the user device to form a revised story based at least in part on the previous plurality of previous media slides associated with the previous story. Each second ticket request identifying media content and editing information for the corresponding revised media slide. In this embodiment, a second ticket assembly order replacing the previous ticket assembly order is received from the server system at the user device. The second ticket assembly order having been generated by the server system in response to the second plurality of second ticket requests and including second ordered instructions for assembling and uploading the media content associated with the revised plurality of revised media slides. In the embodiment being described, the media content associated with the revised plurality of revised media slides is assembled in accordance with the second ticket assembly order. The assembled media content associated with the revised plurality of revised media slides is uploaded to the server system from the user device in accordance with the second ticket assembly order. A second publishing link to a second video file is received from the server system at the user device. The second publishing link replacing the previous publishing link and the second video file replacing the previous video file, the server system having generated the second publishing link after having transcoded the uploaded media content associated with the revised plurality of revised media slides in accordance with the second ticket assembly order and the editing information associated with the second plurality of second ticket requests to form the second video file for presentation of the revised story formed by the previous arrangement of the second plurality of second media slides on the user device and after having stored the second video file. [00127] With reference to FIG. 16, a user device 1600 associated with generation of a video file includes a communication interface 1602, a ticket processor 1604, and an upload processor 1606. The communication interface 1602 configured to send a plurality of ticket requests to a server system 1608 via a network 1610. The plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device 1600 to form a story. Each ticket request identifying media content and editing information for the corresponding media slide. The communication interface 1602 is configured to receive a ticket assembly order from the server system 1608. The ticket assembly order having been generated by the server system 1608 in response to the plurality of ticket requests and including ordered instructions for assembling and uploading the media content associated with the plurality of media slides.
[00128] The ticket processor 1604 configured to assemble the media content associated with the plurality of media slides in accordance with the ticket assembly order. The upload processor 1606 configured to upload the assembled media content to the server system 1608 in accordance with the ticket assembly order via the communication interface 1602 and the network 1610.
[00129] The communication interface 1602 is configured to receive a publishing link to a video file from the server system 1608. The server system 1608 having generated the publishing link after having transcoded the uploaded media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form the video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device 1600 and after having stored the video file.
[00130] In another embodiment of the user device 1600, the communication interface 602 is configured to send a story list to the server system 1608 via the network 1610. The story list identifies media content for the story and editing information for the corresponding media content. The media content identified in the story list identifies a story title, a thumbnail image for the story, a soundtrack, or a story description in any suitable combination. The ticket assembly order received by the communication interface 1602 having been generated by the server system 1608 after having received the story list. The ticket assembly order including ordered instructions for assembling and uploading the media content associated with the story list. In this embodiment, the ticket processor 1604 is configured to assemble the media content associated with the story list in accordance with the ticket assembly order. In the embodiment being described, the upload processor 1606 is configured to upload the media content associated with the story list to the server system 1608 in accordance with the ticket assembly order. The publishing link to the video file received by the communication interface 602 having been generated by the server system 1608 after having transcoded the media content associated with the story list in accordance with the ticket assembly order and in accordance with the editing information associated with the story list to in conjunction with forming the video file.
[00131] In another embodiment, the user device 1600 also includes a storage device 1612 configured to store the plurality of ticket requests associated with the story.
[00132] In yet another embodiment, the user device 1600 also includes a mobile device, an Apple iPhone Operating System (iOS) device, an Android device, a computer device, or any suitable user device in any suitable combination to comprise the communication interface 1602, the ticket processor 1604, and the upload processor 1608. In still another embodiment of the user device 1600, the server system comprises one of one or more networked server nodes. In still yet another embodiment of the user device 1600, the network 1610 comprises a LAN, a WLAN, a MAN, a WMAN, a WAN, a WWAN, a PAN, a WPAN, a WiMAX network, a wireless cellular network, an LTE wireless network, an Internet, a cable TV network, a satellite TV network, a satellite communication network, a WiFi access point, a Bluetooth access node, an infrared access node, or any suitable network in any suitable combination.
[00133] In another embodiment of the user device 1600, the server system 1608 is configured to assign a story identifier to the plurality of ticket requests in conjunction with generating the ticket assembly order to uniquely identify and associate the plurality of media slides, the plurality of ticket requests, the ticket assembly order, the subsequently received media content, and the subsequently formed video file with the story. The server system 1608 is also configured to assign ticket identifiers to each ticket request associated with the story in conjunction with generating the ticket assembly order. Additionally, the server system 1608 is configured to assign media content identifiers to each media content associated with each ticket request in conjunction with generating the ticket assembly order. The server system 1608 is also configured to generate an ordered ticket list in conjunction with generating the ticket assembly order to associate the assigned ticket identifiers with the corresponding media slides that form the story and to associate the assigned media identifiers with the media content of the corresponding media slide in conjunction with generating the ticket assembly order. The ticket assembly order includes the story identifier, ticket identifiers, and media identifiers associated with the story. The ordered instructions include the ordered ticket list. In a further embodiment of the user device 1600, the upload processor 1606 is configured to include the story identifier, the ticket identifier for the corresponding media content, and the media identifier for the corresponding media content in the uploaded media content.
[00134] In yet another embodiment, the user device 1600 also includes a storage device 1612 configured to store the ticket assembly order associated with the story. In still another embodiment, the user device 1600 also includes a storage device 1612 configured to store the media content associated with the plurality of media slides forming the story.
[00135] In still yet another embodiment of the user device 1600, the server system 1608 is configured to form the video file in a digital multimedia format compatible with an MPEG-4 digital multimedia format.
[00136] In another embodiment of the user device 1600, the communication interface 1602 is configured to send a second plurality of second ticket requests to the server system 1608 via the network 1610. The second plurality of second ticket requests are associated with a corresponding revised plurality of revised media slides having been previously arranged on the user device 1600 to form a revised story based at least in part on the previous plurality of previous media slides associated with the previous story. Each second ticket request identifying media content and editing information for the corresponding revised media slide. In this embodiment, the communication interface 1602 is configured to receive a second ticket assembly order replacing the previous ticket assembly order from the server system 1608. The second ticket assembly order having been generated by the server system 1608 in response to the second plurality of second ticket requests and including second ordered instructions for assembling and uploading the media content associated with the revised plurality of revised media slides. In the embodiment being described, the ticket processor 1604 is configured to assemble the media content associated with the revised plurality of revised media slides in accordance with the second ticket assembly order. The upload processor 1606 is configured to upload the assembled media content associated with the revised plurality of revised media slides to the server system 1608 in accordance with the second ticket assembly order via the communication interface 1602 and the network 1610. In this embodiment, the communication interface 1602 is configured to receive a second publishing link to a second video file from the server system 1608. The second publishing link replacing the previous publishing link and the second video file replacing the previous video file. The server system 1608 having generated the second publishing link after having transcoded the uploaded media content associated with the revised plurality of revised media slides in accordance with the second ticket assembly order and the editing information associated with the second plurality of second ticket requests to form the second video file for presentation of the revised story formed by the previous arrangement of the second plurality of second media slides on the user device 1600 and after having stored the second video file.
[00137] With reference to FIGs. 15 and 16, various exemplary embodiments of non-transitory computer-readable medium storing program instructions that, when executed by one or more processors, cause a corresponding user device to perform a method for generating a video file. For example, various embodiments of the user device 1600 are described above with reference to FIG. 16. Various embodiments of the method for generating a video file 1500, for example, are described above with reference to FIG. 15. In other words, the program instructions of the various exemplary embodiments of non-transitory computer-readable medium are defined by any suitable combination of the processes 1500 described above with reference to FIG. 15. Similarly, the one or more processors and the user device associated with the various exemplary embodiments of non-transitory computer-readable medium are defined by any suitable combination of the user device 1600 described above with reference to FIG. 16.
[00138] The above description merely provides a disclosure of particular embodiments of the invention and is not intended for the purposes of limiting the same thereto. As such, the invention is not limited to only the above-described embodiments. Rather, it is recognized that one skilled in the art could conceive alternative embodiments that fall within the scope of the invention.

Claims

We claim:
1. A method for generating a video file, comprising:
receiving a plurality of ticket requests from a user device at a server system via a network, wherein the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story, each ticket request identifying media content and editing information for the corresponding media slide;
processing the plurality of ticket requests at the server system to generate a ticket assembly order and to prepare for receiving the media content associated with the plurality of media slides, the ticket assembly order including ordered instructions for assembling and uploading the media content associated with the plurality of media slides;
sending the ticket assembly order to the user device from the server system; receiving the media content associated with the plurality of media slides from the user device at the server system, the received media content having been assembled and uploaded by the user device in response to the ticket assembly order; and
transcoding the received media content at the server system in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form a video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device.
2. The method of claim 1 , further comprising:
receiving a story list from the user device at the server system via the network, wherein the story list identifies media content for the story and editing information for the corresponding media content, wherein the media content identified in the story list identifies at least one of a story title, a thumbnail image for the story, a soundtrack, and a story description;
processing the story list at the server system in conjunction with processing the plurality of ticket requests to generate the ticket assembly order and to prepare for receiving the media content associated with the story list, the ticket assembly order including ordered instructions for assembling and uploading the media content associated with the story list;
receiving the media content associated with the story list from the user device at the server system, the media content associated with the story list having been assembled and uploaded by the user device in response to the ticket assembly order; and
transcoding the media content associated with the story list at the server system in accordance with the ticket assembly order and in accordance with the editing information associated with the story list in conjunction with forming the video file.
3. The method of claim 2 wherein, when the story list includes the thumbnail image, the thumbnail image is associated with a digital image or a select frame of a video clip from a select media slide of the plurality of media slides, the corresponding digital image or select frame associated with the thumbnail image being further associated with a cover slide for the story.
4. The method of claim 2 wherein, when the story list includes the soundtrack, the editing information identified in the story list identifies an on/off attribute for the soundtrack.
5. The method of claim 1 wherein the media content identified in the corresponding ticket request for each media slide identifies at least one of a digital image, a video clip, a slide caption, and an audio narration.
6. The method of claim 5 wherein, for each media slide including the digital image, the editing information identified in the ticket request for the corresponding media slide identifies at least one of a scaling attribute, a cropping attribute, a positioning attribute, a rotation attribute, a mirroring attribute, a color filtering attribute, a color adjustment attribute, an audio narration attribute, a duration attribute, an animation attribute, and a transition attribute for the digital image associated with the corresponding media slide.
7. The method of claim 5 wherein, for each media slide including the video clip, the editing information identified in the ticket request for the corresponding media slide identifies at least one of a start frame attribute, an end frame attribute, and an enable/disable audio attribute for the video clip associated with the corresponding media slide.
8. The method of claim 1 , in conjunction with processing the plurality of ticket requests, the method further comprising:
assigning a story identifier to the plurality of ticket requests in conjunction with generating the ticket assembly order to uniquely identify and associate the plurality of media slides, the plurality of ticket requests, the ticket assembly order, the subsequently received media content, and the subsequently formed video file with the story;
assigning ticket identifiers to each ticket request associated with the story;
assigning media content identifiers to each media content associated with each ticket request;
generating an ordered ticket list associating the assigned ticket identifiers with the corresponding media slides that form the story and associating the assigned media identifiers with the media content of the corresponding media slide;
wherein the ticket assembly order includes the story identifier, ticket identifiers, and media identifiers associated with the story;
wherein the ordered instructions include the ordered ticket list.
9. The method of claim 1 , in conjunction with transcoding the received media content, the method further comprising:
adjusting the received media content in accordance with the editing information associated with the plurality of ticket requests;
decoding the adjusted media content to an intermediate media format;
encoding the decoded media content to a target media format previously selected for the subsequently formed video file;
assembling video and audio portions of the received media content in the target media format in accordance with the ticket assembly order; and mixing the assembled video and audio portions of the received media content to form the video file.
10. The method of claim 1 wherein a first portion of the received media content includes at least one content item that is compatible with a target media format previously selected for the subsequently formed video file and a second portion of the received media content includes at least one content item that is not compatible with the target media format, in conjunction with transcoding the received media content, the method further comprising:
adjusting the received media content in accordance with the editing information associated with the plurality of ticket requests;
decoding the second portion of the received media content to an intermediate media format;
encoding the second portion of the received media content to the target media format previously selected for the subsequently formed video file;
assembling video and audio portions of the first and second portions of the received media content in the target media format in accordance with the ticket assembly order; and
mixing the assembled video and audio portions of the received media content to form the video file.
11. The method of claim 1 , further comprising:
storing the video file in a storage device at the server system;
generating a publishing link at the server system for access to the video file stored at the server system; and
sending the publishing link to the user device from the server system.
12. A server system associated with generation of a video file, comprising:
a communication interface configured to receive a plurality of ticket requests from a user device via a network, wherein the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story, each ticket request identifying media content and editing information for the corresponding media slide; and
a ticket processor configured to process the plurality of ticket requests to generate a ticket assembly order and to prepare for receiving the media content associated with the plurality of media slides, the ticket assembly order including ordered instructions for assembling and uploading the media content associated with the plurality of media slides, wherein the ticket processor is configured to send the ticket assembly order to the user device via the communication interface and the network; wherein the communication interface is configured to receive the media content associated with the plurality of media slides from the user device, the received media content having been assembled and uploaded by the user device in response to the ticket assembly order; and
the server system further comprising:
a transcoding processor configured to transcode the received media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form a video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device.
13. The server system of claim 12, further comprising:
one of one or more networked server nodes comprising the communication interface, the ticket processor, and the transcoding processor.
14. The server system of claim 12 wherein the network comprises at least one of a local area network (LAN), a wireless LAN (WLAN), a metropolitan area network (MAN), a wireless MAN (WMAN), a wide area network (WAN), a wireless WAN (WWAN), a personal area network (PAN), a wireless PAN (WPAN), a WiMAX network, a wireless cellular network, a Long Term Evolution (LTE) wireless network, an Internet, a cable television (TV) network, a satellite TV network, a satellite communication network, a wireless fidelity (WiFi) access point, a Bluetooth access node, and an infrared access node.
15. The server system of claim 12, further comprising:
a storage device configured to store the video file; and
a publishing processor configured to save the video file formed by the transcoding processor in the storage device, to generate a publishing link for access to the video file stored at the storage device, and to send the publishing link to the user device via the communication interface and the network.
16. A method for generating a video file, comprising:
sending a plurality of ticket requests to a server system from a user device via a network, wherein the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story, each ticket request identifying media content and editing information for the corresponding media slide;
receiving a ticket assembly order from the server system at the user device, the ticket assembly order having been generated by the server system in response to the plurality of ticket requests and including ordered instructions for assembling and uploading the media content associated with the plurality of media slides;
assembling the media content associated with the plurality of media slides in accordance with the ticket assembly order;
uploading the assembled media content to the server system from the user device in accordance with the ticket assembly order; and
receiving a publishing link to a video file from the server system at the user device, the server system having generated the publishing link after having transcoded the uploaded media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form the video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device and after having stored the video file.
17. The method of claim 16, further comprising:
storing the media content associated with the plurality of media slides forming the story in a storage device at the user device.
18. The method of claim 16 wherein the publishing link provides the user device with access to the video file for at least one of sharing, playing, and downloading the video file from the server system.
19. The method of claim 18 wherein the publishing link enables the user device to share the video file by at least one of posting the publishing link to a social media web site, posting the video file to the social media web site, posting the publishing link to an Internet web site, posting the video file to the Internet web site, sending the publishing link to one or more recipient in an electronic message, sending the video to one or more recipient in the electronic message, e-mailing the publishing link to one or more e-mail address, and e-mailing the video file to the one or more e-mail address.
20. The method of claim 16, further comprising:
sending a second plurality of second ticket requests to the server system from the user device via the network, wherein the second plurality of second ticket requests are associated with a corresponding revised plurality of revised media slides having been previously arranged on the user device to form a revised story based at least in part on the previous plurality of previous media slides associated with the previous story, each second ticket request identifying media content and editing information for the corresponding revised media slide;
receiving a second ticket assembly order replacing the previous ticket assembly order from the server system at the user device, the second ticket assembly order having been generated by the server system in response to the second plurality of second ticket requests and including second ordered instructions for assembling and uploading the media content associated with the revised plurality of revised media slides; assembling the media content associated with the revised plurality of revised media slides in accordance with the second ticket assembly order;
uploading the assembled media content associated with the revised plurality of revised media slides to the server system from the user device in accordance with the second ticket assembly order; and
receiving a second publishing link to a second video file from the server system at the user device, the second publishing link replacing the previous publishing link and the second video file replacing the previous video file, the server system having generated the second publishing link after having transcoded the uploaded media content associated with the revised plurality of revised media slides in accordance with the second ticket assembly order and the editing information associated with the second plurality of second ticket requests to form the second video file for presentation of the revised story formed by the previous arrangement of the second plurality of second media slides on the user device and after having stored the second video file.
21. A user device associated with generation of a video file, comprising:
a communication interface configured to send a plurality of ticket requests to a server system via a network, wherein the plurality of ticket requests are associated with a corresponding plurality of media slides having been previously arranged on the user device to form a story, each ticket request identifying media content and editing information for the corresponding media slide;
wherein the communication interface is configured to receive a ticket assembly order from the server system, the ticket assembly order having been generated by the server system in response to the plurality of ticket requests and including ordered instructions for assembling and uploading the media content associated with the plurality of media slides; and
the user device further comprising:
a ticket processor configured to assemble the media content associated with the plurality of media slides in accordance with the ticket assembly order; and an upload processor configured to upload the assembled media content to the server system in accordance with the ticket assembly order via the communication interface and the network;
wherein the communication interface is configured to receive a publishing link to a video file from the server system, the server system having generated the publishing link after having transcoded the uploaded media content in accordance with the ticket assembly order and in accordance with the editing information associated with the plurality of ticket requests to form the video file for presentation of the story formed by the previous arrangement of the plurality of media slides on the user device and after having stored the video file.
22. The user device of claim 21 , further comprising:
at least one of a mobile device, an Apple iPhone Operating System (iOS) device, an Android device, and a computer device comprising the communication interface, the ticket processor, and the upload processor.
23. The user device of claim 21 wherein the server system is configured to assign a story identifier to the plurality of ticket requests in conjunction with generating the ticket assembly order to uniquely identify and associate the plurality of media slides, the plurality of ticket requests, the ticket assembly order, the subsequently received media content, and the subsequently formed video file with the story;
wherein the server system is configured to assign ticket identifiers to each ticket request associated with the story in conjunction with generating the ticket assembly order;
wherein the server system is configured to assign media content identifiers to each media content associated with each ticket request in conjunction with generating the ticket assembly order;
wherein the server system is configured to generate an ordered ticket list in conjunction with generating the ticket assembly order to associate the assigned ticket identifiers with the corresponding media slides that form the story and to associate the assigned media identifiers with the media content of the corresponding media slide in conjunction with generating the ticket assembly order;
wherein the ticket assembly order includes the story identifier, ticket identifiers, and media identifiers associated with the story;
wherein the ordered instructions include the ordered ticket list.
24. The user device of claim 23 wherein the upload processor is configured to include the story identifier, the ticket identifier for the corresponding media content, and the media identifier for the corresponding media content in the uploaded media content.
25. The user device of claim 21 , further comprising:
a storage device configured to store the media content associated with the plurality of media slides forming the story.
PCT/US2014/034596 2013-04-18 2014-04-18 Method and apparatus for configuring multimedia sequence using mobile platform Ceased WO2014172601A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201361813601P 2013-04-18 2013-04-18
US61/813,601 2013-04-18
US201361823633P 2013-05-15 2013-05-15
US61/823,633 2013-05-15

Publications (1)

Publication Number Publication Date
WO2014172601A1 true WO2014172601A1 (en) 2014-10-23

Family

ID=50792574

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2014/034596 Ceased WO2014172601A1 (en) 2013-04-18 2014-04-18 Method and apparatus for configuring multimedia sequence using mobile platform

Country Status (1)

Country Link
WO (1) WO2014172601A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018186445A (en) * 2017-04-27 2018-11-22 株式会社Firebug System and method for content distribution
CN111385599A (en) * 2018-12-28 2020-07-07 北京字节跳动网络技术有限公司 Video processing method and device
CN112035405A (en) * 2020-08-29 2020-12-04 平安科技(深圳)有限公司 Document transcoding method and device, scheduling server and storage medium
US11449664B1 (en) 2019-07-01 2022-09-20 Instasize, Inc. Template for creating content item

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020116716A1 (en) * 2001-02-22 2002-08-22 Adi Sideman Online video editor
US20070183741A1 (en) * 2005-04-20 2007-08-09 Videoegg, Inc. Browser based video editing
US20070239788A1 (en) * 2006-04-10 2007-10-11 Yahoo! Inc. Topic specific generation and editing of media assets
US20080112683A1 (en) * 2006-11-13 2008-05-15 Cyberlink Corp. System and Methods for Remote Manipulation of Video over a Network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020116716A1 (en) * 2001-02-22 2002-08-22 Adi Sideman Online video editor
US20070183741A1 (en) * 2005-04-20 2007-08-09 Videoegg, Inc. Browser based video editing
US20070239788A1 (en) * 2006-04-10 2007-10-11 Yahoo! Inc. Topic specific generation and editing of media assets
US20080112683A1 (en) * 2006-11-13 2008-05-15 Cyberlink Corp. System and Methods for Remote Manipulation of Video over a Network

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018186445A (en) * 2017-04-27 2018-11-22 株式会社Firebug System and method for content distribution
CN111385599A (en) * 2018-12-28 2020-07-07 北京字节跳动网络技术有限公司 Video processing method and device
CN111385599B (en) * 2018-12-28 2022-02-11 北京字节跳动网络技术有限公司 Video processing method and device
US11449664B1 (en) 2019-07-01 2022-09-20 Instasize, Inc. Template for creating content item
US11868701B1 (en) 2019-07-01 2024-01-09 Instasize, Inc. Template for creating content item
CN112035405A (en) * 2020-08-29 2020-12-04 平安科技(深圳)有限公司 Document transcoding method and device, scheduling server and storage medium
WO2021151294A1 (en) * 2020-08-29 2021-08-05 平安科技(深圳)有限公司 Document transcoding method and apparatus, and scheduling server and storage medium
CN112035405B (en) * 2020-08-29 2023-10-13 平安科技(深圳)有限公司 Document transcoding method and device, scheduling server and storage medium

Similar Documents

Publication Publication Date Title
US20210158843A1 (en) Mobile application for future interaction
US8316084B2 (en) System and method for facilitating presentations over a network
US9716909B2 (en) Mobile video editing and sharing for social media
US9336512B2 (en) Digital media and social networking system and method
US10057205B2 (en) Systems and methods for creating and accessing collaborative electronic multimedia compositions
US20160105382A1 (en) System and method for digital media capture and related social networking
Costello Multimedia foundations
US9977591B2 (en) Image with audio conversation system and method
US20180048831A1 (en) Generation of combined videos
JP6093289B2 (en) Video processing apparatus, video processing method, and program
WO2019133490A1 (en) Image tagging with audio files in a wide area network
US20100325547A1 (en) Systems and Methods for Sharing Multimedia Editing Projects
US20130117671A1 (en) Methods and systems for editing video clips on mobile devices
US11256402B1 (en) Systems and methods for generating and broadcasting digital trails of visual media
EP1756801A2 (en) Internet presentation system
US20210006974A1 (en) Live greetings
WO2014172601A1 (en) Method and apparatus for configuring multimedia sequence using mobile platform
US9639534B2 (en) System and method for automating the creation of customized media
US20140362290A1 (en) Facilitating generation and presentation of sound images
Hight Shoot, edit, share: Cultural software and user-generated documentary practice
US10869107B2 (en) Systems and methods to replicate narrative character's social media presence for access by content consumers of the narrative presentation
JP6461146B2 (en) Social media platform
JP2009521875A (en) Multimedia transfer system and method
HK40030872B (en) Barrage processing method and apparatus, device and storage medium
JP6320586B1 (en) Content management system, content management method, and medium set

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14726276

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14726276

Country of ref document: EP

Kind code of ref document: A1