Fix merge edge cases
This commit is contained in:
@@ -203,6 +203,7 @@ def replace_audio(target_path : str, audio_path : str, output_path : str) -> boo
|
|||||||
|
|
||||||
|
|
||||||
def merge_video(target_path : str, temp_video_fps : Fps, output_video_resolution : str, output_video_fps : Fps, trim_frame_start : int, trim_frame_end : int) -> bool:
|
def merge_video(target_path : str, temp_video_fps : Fps, output_video_resolution : str, output_video_fps : Fps, trim_frame_start : int, trim_frame_end : int) -> bool:
|
||||||
|
output_file_format = get_file_format(target_path)
|
||||||
output_video_encoder = state_manager.get_item('output_video_encoder')
|
output_video_encoder = state_manager.get_item('output_video_encoder')
|
||||||
output_video_quality = state_manager.get_item('output_video_quality')
|
output_video_quality = state_manager.get_item('output_video_quality')
|
||||||
output_video_preset = state_manager.get_item('output_video_preset')
|
output_video_preset = state_manager.get_item('output_video_preset')
|
||||||
@@ -210,7 +211,10 @@ def merge_video(target_path : str, temp_video_fps : Fps, output_video_resolution
|
|||||||
temp_file_path = get_temp_file_path(target_path)
|
temp_file_path = get_temp_file_path(target_path)
|
||||||
temp_frames_pattern = get_temp_frames_pattern(target_path, '%08d')
|
temp_frames_pattern = get_temp_frames_pattern(target_path, '%08d')
|
||||||
|
|
||||||
if get_file_format(target_path) == 'webm':
|
if output_file_format == 'mp4' and output_video_encoder == 'rawvideo':
|
||||||
|
output_video_encoder = 'libx264'
|
||||||
|
|
||||||
|
if output_file_format == 'webm':
|
||||||
output_video_encoder = 'libvpx-vp9'
|
output_video_encoder = 'libvpx-vp9'
|
||||||
|
|
||||||
commands = ffmpeg_builder.chain(
|
commands = ffmpeg_builder.chain(
|
||||||
|
|||||||
@@ -81,7 +81,7 @@ def test_merge_video() -> None:
|
|||||||
merge_set =\
|
merge_set =\
|
||||||
[
|
[
|
||||||
(get_test_example_file('target-240p.mp4'), 'libx264'),
|
(get_test_example_file('target-240p.mp4'), 'libx264'),
|
||||||
(get_test_example_file('target-240p.mp4'), 'libx265'),
|
(get_test_example_file('target-240p.mp4'), 'rawvideo'),
|
||||||
(get_test_example_file('target-240p.webm'), 'libx264')
|
(get_test_example_file('target-240p.webm'), 'libx264')
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user