全部产品
云市场

图片叠加

更新时间:2018-11-02 17:36:13

概述

视频剪辑的简介、总体流程和媒体合成服务的两种使用方式已在 简介 中介绍过,媒体合成最终都是通过 媒体合成服务 发起并实现的,而Timeline是该服务重点处理的数据,也是视频剪辑中最核心的对象。Timeline内部参数可以组织成多种形式,以应对不同的业务场景。

参数说明

参数 说明
图片出现的坐标 X表示图片左上角距离输出视频左上角的横向距离。
Y表示图片左上角距离输出视频左上角的纵向距离。
注:支持百分比和像素两种形式。当取值为[0~0.9999]时,表示相对输出视频宽/高的占比(X相对宽,Y相对高)。当取值为>=8的整数时,表示绝对像素。
图片在输出视频中所占的大小 Width表示图片在输出视频中的宽度。
Height表示图片在输出视频中的宽度。
注:支持百分比和像素两种形式。当取值为[0~0.9999]时,表示相对输出视频宽/高的占比(Width相对宽,Height相对高)。当取值为>=8的整数时,表示绝对像素。
图片在输出视频叠加的时间区间 TimelineIn表示图片在输出视频中的入点。
TimelineOut表示图片在输出视频中的出点。

样例

本文以图片叠加场景Timeline的各种数据组织举例。

全程叠加

全程叠加指从片头到片尾叠加图片,即视频全程叠加图片不需要指定TimelineIn和TimelineOut。图片在输出视频中出现的位置由X,Y设定,在输出视频中的宽高由Width,Height设定。举例如下:

  • 单视频叠加
    1. {
    2. "VideoTracks": [
    3. {
    4. "VideoTrackClips": [
    5. {
    6. "MediaId": "222d9296e8864746a0b6f32dad6e1a3d"
    7. }
    8. ]
    9. }
    10. ],
    11. "ImageTracks": [
    12. {
    13. "ImageTrackClips": [
    14. {
    15. "ImageId": "001d9296e8864746a0b6f32dad6e1001",
    16. "Width": 0.1345,
    17. "Height": 0.1678,
    18. "X": 0.1234,
    19. "Y": 0.1234
    20. },
    21. {
    22. "ImageId": "002d9296e8864746a0b6f32dad6e1002",
    23. "Width": 0.1345,
    24. "Height": 0.1678,
    25. "X": 0.7234,
    26. "Y": 0.7234
    27. }
    28. ]
    29. }
    30. ]
    31. }
  • 多视频叠加
    1. {
    2. "VideoTracks": [
    3. {
    4. "VideoTrackClips": [
    5. {
    6. "MediaId": "222d9296e8864746a0b6f32dad6e1a3d"
    7. },
    8. {
    9. "MediaId": "333d9296e8864746a0b6f32dad6e1a3d"
    10. }
    11. ]
    12. }
    13. ],
    14. "ImageTracks": [
    15. {
    16. "ImageTrackClips": [
    17. {
    18. "ImageId": "001d9296e8864746a0b6f32dad6e1001",
    19. "Width": 0.1345,
    20. "Height": 0.1678,
    21. "X": 0.1234,
    22. "Y": 0.1234
    23. },
    24. {
    25. "ImageId": "002d9296e8864746a0b6f32dad6e1002",
    26. "Width": 0.1345,
    27. "Height": 0.1678,
    28. "X": 0.7234,
    29. "Y": 0.7234
    30. }
    31. ]
    32. }
    33. ]
    34. }

指定区域叠加

指定区域叠加指图片叠加在视频的指定时间区间。图片在输出视频中出现的位置由X,Y设定,在输出视频中的宽高由Width,Height设定。在一个视频的2-100秒叠加2张图片,举例如下:

注意:输出视频指最终合成的成片视频。

  • 单视频叠加

    • 当TimelineIn不设置时,默认从0开始。
    • 当TimelineOut不设置时,默认到视频的尾部。
    • 当TimelineOut超过视频尾部(对单视频来说,即视频时长)时,超过的时间区间自动被忽略,仍以视频轨的尾部为准。
    1. {
    2. "VideoTracks": [
    3. {
    4. "VideoTrackClips": [
    5. {
    6. "MediaId": "222d9296e8864746a0b6f32dad6e1a3d"
    7. }
    8. ]
    9. }
    10. ],
    11. "ImageTracks": [
    12. {
    13. "ImageTrackClips": [
    14. {
    15. "ImageId": "001d9296e8864746a0b6f32dad6e1001",
    16. "Width": 0.1345,
    17. "Height": 0.1678,
    18. "X": 0.1234,
    19. "Y": 0.1234,
    20. "TimelineIn":2,
    21. "TimelineOut":100
    22. },
    23. {
    24. "ImageId": "002d9296e8864746a0b6f32dad6e1002",
    25. "Width": 0.1345,
    26. "Height": 0.1678,
    27. "X": 0.7234,
    28. "Y": 0.7234,
    29. "TimelineIn":2,
    30. "TimelineOut":100
    31. }
    32. ]
    33. }
    34. ]
    35. }
  • 多视频叠加图片

    • 当TimelineIn不设置时,默认从0开始。
    • 当TimelineOut不设置时,默认到视频的尾部。
    • 当TimelineOut超过视频尾部(对多个视频来说,即视频轨总体时长)时,超过的时间区间,视频画面为黑场。

    如果视频轨有多个不同分辨率的源视频,那么:

    • 输出视频的宽取多个源视频宽的最大值
    • 输出视频的高取多个源视频高的最大值
    • 画面采用pad+scale的方式,先加黑边保证实际画面比例不变形,再等比例放大到输出视频的宽高
    • 输出视频的时长为视频轨的时长
    1. {
    2. "VideoTracks": [
    3. {
    4. "VideoTrackClips": [
    5. {
    6. "MediaId": "222d9296e8864746a0b6f32dad6e1a3d"
    7. },
    8. {
    9. "MediaId": "333d9296e8864746a0b6f32dad6e1a3d"
    10. }
    11. ]
    12. }
    13. ],
    14. "ImageTracks": [
    15. {
    16. "ImageTrackClips": [
    17. {
    18. "ImageId": "001d9296e8864746a0b6f32dad6e1001",
    19. "Width": 0.1345,
    20. "Height": 0.1678,
    21. "X": 0.1234,
    22. "Y": 0.1234,
    23. "TimelineIn":2,
    24. "TimelineOut":100
    25. },
    26. {
    27. "ImageId": "002d9296e8864746a0b6f32dad6e1002",
    28. "Width": 0.1345,
    29. "Height": 0.1678,
    30. "X": 0.7234,
    31. "Y": 0.7234,
    32. "TimelineIn":2,
    33. "TimelineOut":100
    34. }
    35. ]
    36. }
    37. ]
    38. }