예제 #1
0
def merge_segments(files, output_dir=VIDEO_OUTPUT_DIR):
    merged_video = os.path.join(output_dir, 'merged.mp4')
    if len(files) == 0:
        raise ValueError('no segments')
    logger.info('Merging segments to %s', merged_video)
    pathutil.rm(merged_video)
    p = shell.execute(
        config['mencoder'],
        '-ovc', 'copy',
        '-o', merged_video,
        *files)
    if p.returncode != 0:
        raise ValueError('fail\n' + p.stderr)
    return merged_video
예제 #2
0
파일: avmerge.py 프로젝트: neuront/madmagia
def avmerge(audio_file, video_file, output_file=OUTPUT_FILE,
            force_encoder=None, sync=True):
    logger.info('Zip video and audio')
    pathutil.rm(output_file)
    p = shell.Process([
        config['avconv'],
        '-i', audio_file,
        '-i', video_file,
        '-acodec', 'copy',
        '-vcodec', 'copy' if force_encoder is None else force_encoder,
        output_file], sync)
    p.execute()
    if sync and p.returncode != 0:
        raise ValueError('fail')
    return output_file