Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Vimeo Upload 2.0 Spec (Working Draft) #11

Closed
alfiehanssen opened this issue Oct 27, 2015 · 2 comments
Closed

Vimeo Upload 2.0 Spec (Working Draft) #11

alfiehanssen opened this issue Oct 27, 2015 · 2 comments

Comments

@alfiehanssen
Copy link
Contributor

Goals

  1. Remove file copy / export from the "composite" upload task. It's unreliable to conduct a copy / export in between background tasks (i.e. conducting copy / export when a background task completes, before starting the next background task). We don't know how much time the OS will allow us in between tasks. Therefore conducting copy / export at that time becomes less reliable as filesize increases. See this issue.
  2. Provide a mechanism for consumers of the API to monitor copy / export progress.
  3. Make the API simpler, more abstract, more flexible by removing the awareness of ALAssets and PHAssets. An API that accepts a url to a local file will accommodate more consumers.
  4. Allow composite upload tasks to occur in parallel rather than in serial.
  5. Provide a mechanism for consumers to define which network tasks they'd like to perform as part of the upload. For example, one consumer might want to perform the standard "Create" > "Upload" > "Activate" steps. Whereas another might want to append the "VideoSettings" request to that flow, yielding "Create" > "Upload" > "Activate" > "VideoSettings". And still another might want to append a custom task that does something like post the newly retrieved video_uri to their own servers: "Create" > "Upload" > "Activate" > "VideoSettings" > "CustomTask".
  6. Surface information about upload system lifecycle and upload task lifecycle to the calling (e.g. app) context so the containing context can manage logging and use-case-specific state persistence on it's own. Error tracking and classes like VIMUploadTaskQueueTracker in v1.0 are cumbersome.

Work in progress...

Proposed Changes

  1. File copy / export will be the responsibility of the consumer. The upload library will provide convenience mechanisms (via NSOperation subclasses) to export assets to disk. Consumers will pass the url to the local file into the upload system.
  2. The upload system will have no knowledge of ALAssets or PHAssets. It will accept a URL to a local and accessible video file and manipulate this as needed.

Work in progress...

@alfiehanssen alfiehanssen changed the title Vimeo Upload 2.0 Vimeo Upload 2.0 Spec (Working Draft) Oct 27, 2015
@alfiehanssen
Copy link
Contributor Author

cc @victusfate

@alfiehanssen
Copy link
Contributor Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant