本文介绍了利用智能媒体管理(IMM)媒体转码接口来实现视频拼接的能力。
功能简介
视频拼接是将多个视频片段合并为一个完整视频并转换为所需格式的能力。

使用场景
- 影视制作:在电影、电视剧及短片的制作过程中,视频拼接是核心环节之一,协助剪辑师将不同的镜头和场景整合,以构建完整的叙事结构。 
- 内容创作:在短视频社交媒体平台上,内容创作者通常运用视频拼接技术制作Vlog、教程或主题视频,以提升内容的吸引力和可视性。 
- 教育与培训:教师和培训师可以通过拼接不同的视频片段,以结合理论与实践的方式制作教学视频,从而促进学生的理解与学习。 
- 体育赛事回放:在体育转播中,视频拼接技术被用于制作精彩瞬间集锦,以帮助观众回顾比赛中激动人心的时刻。 
支持音视频格式列表
| 分类 | 格式 | 
| 音频 | AAC、MP3、WAV、FLAC、WMA、AC3、OPUS等所有主流格式。 | 
| 视频 | MP4、MPEG-TS、MKV、MOV、AVI、FLV、M3U8、WebM、WMV、RM、VOB等所有主流格式。 | 
如何使用
前提条件
- 已创建并获取AccessKey。具体操作,请参见创建AccessKey。 
- 已开通OSS服务、创建存储空间。具体操作,请参见创建存储空间。 
- 已开通智能媒体管理服务。具体操作,请参见开通产品。 
- 已通过智能媒体管理控制台创建项目。具体操作,请参见创建项目。 说明- 您也可以调用API接口创建项目。具体操作,请参见CreateProject - 创建项目。 
- 您可以调用ListProjects - 列出所有项目信息的列表接口列出指定地域下已创建的所有项目信息。 
 
步骤一:上传文件
请使用OSS管理控制台将媒体文件上传至IMM项目所在地域的Bucket。

步骤二:使用IMM视频拼接
调用CreateMediaConvertTask - 创建媒体转码任务接口创建视频拼接任务。
参数示例
以下示例使用IMM项目test-project来进行视频拼接处理。
更多有关媒体处理各功能介绍和使用,请参见概述。
- 您可以通过OpenAPI 门户使用媒体转码接口对视频文件进行处理,可参考SDK代码。 
将一段片头和一段片尾拼接到一段视频里面
- 输入视频文件路径: - oss://test-bucket/video-demo/head.mov、- oss://test-bucket/video-demo/酿酒.mov、- oss://test-bucket/video-demo/tail.mov
- 主媒体文件索引号:1 
- 视频配置:h264编码,CRF设置为24,帧率25 
- 音频配置:aac格式,码率96Kbps,双声道,采样率44.1kHz 
- 输出视频格式:mp4 
- 输出文件保存路径: - oss://test-bucket/video-demo/concat.mp4
- 拼接完成消息通知:发送MNS消息到MNS主题“test-mns-topic” 
SDK示例请参见OpenAPI门户,已为您自动填充示例的参数,请您按需修改后再进行调试。
请求参数如下
{
  "ProjectName": "test-project",
  "AlignmentIndex": 1,
  "Notification": {
    "MNS": {
      "TopicName": "test-mns-topic"
    }
  },
  "Sources": [
    {
      "URI": "oss://test-bucket/video-demo/head.mov"
    },
    {
      "URI": "oss://test-bucket/video-demo/酿酒.mov"
    },
    {
      "URI": "oss://test-bucket/video-demo/tail.mov"
    }
  ],
  "Targets": [
    {
      "Audio": {
        "TranscodeAudio": {
          "Bitrate": 96000,
          "Channel": 2,
          "Codec": "aac",
          "SampleRate": 44100
        }
      },
      "Container": "mp4",
      "URI": "oss://test-bucket/video-demo/concat.{autoext}",
      "Video": {
        "TranscodeVideo": {
          "CRF": 24,
          "Codec": "h264",
          "FrameRate": 25,
          "PixelFormat": "yuv420p"
        }
      }
    }
  ]
}将两段视频拼接为一段720p的视频
- 输入视频文件路径: - oss://test-bucket/video-demo/酿酒.mov、- oss://test-bucket/video-demo/蜀山区商业大楼.mov
- 主媒体文件索引号:0 
- 视频配置:h264编码,CRF设置为25,帧率25,分辨率1280x720,缩放并保留黑边,缩放方式请参见缩放方式 
- 音频配置:aac格式,码率96Kbps,双声道,采样率44.1kHz 
- 输出视频格式:mp4 
- 输出文件保存路径: - oss://test-bucket/video-demo/concat.mp4
- 拼接完成消息通知:发送MNS消息到MNS主题“test-mns-topic” 
SDK示例请参见OpenAPI门户,已为您自动填充示例的参数,请您按需修改后再进行调试。
请求参数如下
{
  "ProjectName": "test-project",
  "AlignmentIndex": 0,
  "Notification": {
    "MNS": {
      "TopicName": "test-mns-topic"
    }
  },
  "Sources": [
    {
      "URI": "oss://test-bucket/video-demo/酿酒.mov"
    },
    {
      "URI": "oss://test-bucket/video-demo/蜀山区商业大楼.mov"
    }
  ],
  "Targets": [
    {
      "Audio": {
        "TranscodeAudio": {
          "Bitrate": 96000,
          "Channel": 2,
          "Codec": "aac",
          "SampleRate": 44100
        }
      },
      "Container": "mp4",
      "URI": "oss://test-bucket/video-demo/concat.{autoext}",
      "Video": {
        "TranscodeVideo": {
          "AdaptiveResolutionDirection": true,
          "CRF": 25,
          "Codec": "h264",
          "FrameRate": 25,
          "PixelFormat": "yuv420p",
          "Resolution": "x720",
          "ScaleType": "fill"
        }
      }
    }
  ]
}