fix (core): checks the compatibility even if default options are used
This commit is contained in:
@@ -105,11 +105,13 @@ def validate_format_compatibility(
|
|||||||
"Please use --drop-video or choose a container that supports video (e.g., MKV, MP4)."
|
"Please use --drop-video or choose a container that supports video (e.g., MKV, MP4)."
|
||||||
)
|
)
|
||||||
|
|
||||||
# Check if audio codec is supported
|
# Determine actual audio codec for validation
|
||||||
if audio_codec and audio_codec != 'copy':
|
# When 'copy' is used, we must still validate the input codec against the container
|
||||||
if not is_audio_codec_supported(container, audio_codec):
|
actual_audio_codec = audio_codec if audio_codec and audio_codec != 'copy' else stream_info.get('audio_codec')
|
||||||
|
if actual_audio_codec:
|
||||||
|
if not is_audio_codec_supported(container, actual_audio_codec):
|
||||||
raise ValueError(
|
raise ValueError(
|
||||||
f"Container '{container}' does not support audio codec '{audio_codec}'. "
|
f"Container '{container}' does not support audio codec '{actual_audio_codec}'. "
|
||||||
f"Please choose a different container or audio codec."
|
f"Please choose a different container or audio codec."
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -119,7 +121,11 @@ def validate_format_compatibility(
|
|||||||
if video_codec is None and input_file:
|
if video_codec is None and input_file:
|
||||||
from .ffmpeg import get_video_codec
|
from .ffmpeg import get_video_codec
|
||||||
video_codec = get_video_codec(input_file)
|
video_codec = get_video_codec(input_file)
|
||||||
if video_codec and video_codec != 'copy':
|
# When 'copy' is used, validate the input video codec against the container
|
||||||
|
if video_codec == 'copy' and input_file:
|
||||||
|
from .ffmpeg import get_video_codec
|
||||||
|
video_codec = get_video_codec(input_file)
|
||||||
|
if video_codec:
|
||||||
if not is_video_codec_supported(container, video_codec):
|
if not is_video_codec_supported(container, video_codec):
|
||||||
raise ValueError(
|
raise ValueError(
|
||||||
f"Container '{container}' does not support video codec '{video_codec}'. "
|
f"Container '{container}' does not support video codec '{video_codec}'. "
|
||||||
|
|||||||
Reference in New Issue
Block a user