Source: externs/shaka/transmuxer.js

  1. /**
  2. * @fileoverview Externs for Transmuxer.
  3. *
  4. * @externs
  5. */
  6. /**
  7. * An interface for transmuxer plugins.
  8. *
  9. * @interface
  10. * @exportDoc
  11. */
  12. shaka.extern.Transmuxer = class {
  13. /**
  14. * Destroy
  15. */
  16. destroy() {}
  17. /**
  18. * Check if the mime type and the content type is supported.
  19. * @param {string} mimeType
  20. * @param {string=} contentType
  21. * @return {boolean}
  22. */
  23. isSupported(mimeType, contentType) {}
  24. /**
  25. * For any stream, convert its codecs to MP4 codecs.
  26. * @param {string} contentType
  27. * @param {string} mimeType
  28. * @return {string}
  29. */
  30. convertCodecs(contentType, mimeType) {}
  31. /**
  32. * Returns the original mimetype of the transmuxer.
  33. * @return {string}
  34. */
  35. getOriginalMimeType() {}
  36. /**
  37. * Transmux a input data to MP4.
  38. * @param {BufferSource} data
  39. * @param {shaka.extern.Stream} stream
  40. * @param {?shaka.media.SegmentReference} reference The segment reference, or
  41. * null for init segments
  42. * @param {number} duration
  43. * @param {string} contentType
  44. * @return {!Promise.<!Uint8Array>}
  45. */
  46. transmux(data, stream, reference, duration, contentType) {}
  47. };
  48. /**
  49. * @typedef {function():!shaka.extern.Transmuxer}
  50. * @exportDoc
  51. */
  52. shaka.extern.TransmuxerPlugin;