mirror of
https://github.com/Wan-Video/Wan2.1.git
synced 2025-11-04 14:16:57 +00:00
fixed fmpeg crasg on linux
This commit is contained in:
parent
7b6c6e11b5
commit
b2c3416bcd
@ -488,6 +488,8 @@ def extract_audio_tracks(source_video, verbose=False, query_only=False):
|
||||
return file_paths, metadata
|
||||
|
||||
|
||||
import subprocess
|
||||
|
||||
import subprocess
|
||||
|
||||
def combine_and_concatenate_video_with_audio_tracks(
|
||||
@ -516,10 +518,10 @@ def combine_and_concatenate_video_with_audio_tracks(
|
||||
if source_audio_duration == 0:
|
||||
if n:
|
||||
inputs += ['-i', n]
|
||||
filters.append(f'[{idx}:a]apad=pad_dur=100[aout{i}];')
|
||||
filters.append(f'[{idx}:a]apad=pad_dur=100[aout{i}]')
|
||||
idx += 1
|
||||
else:
|
||||
filters.append(f'anullsrc=r={audio_sampling_rate}:cl=mono,apad=pad_dur=100[aout{i}];')
|
||||
filters.append(f'anullsrc=r={audio_sampling_rate}:cl=mono,apad=pad_dur=100[aout{i}]')
|
||||
else:
|
||||
if s:
|
||||
inputs += ['-i', s]
|
||||
@ -533,32 +535,32 @@ def combine_and_concatenate_video_with_audio_tracks(
|
||||
if needs_filter:
|
||||
filters.append(
|
||||
f'[{idx}:a]aresample={audio_sampling_rate},aformat=channel_layouts=mono,'
|
||||
f'apad=pad_dur={source_audio_duration},atrim=0:{source_audio_duration},asetpts=PTS-STARTPTS[s{i}];')
|
||||
f'apad=pad_dur={source_audio_duration},atrim=0:{source_audio_duration},asetpts=PTS-STARTPTS[s{i}]')
|
||||
else:
|
||||
filters.append(
|
||||
f'[{idx}:a]apad=pad_dur={source_audio_duration},atrim=0:{source_audio_duration},asetpts=PTS-STARTPTS[s{i}];')
|
||||
f'[{idx}:a]apad=pad_dur={source_audio_duration},atrim=0:{source_audio_duration},asetpts=PTS-STARTPTS[s{i}]')
|
||||
if lang := meta.get('language'):
|
||||
metadata_args += ['-metadata:s:a:' + str(i), f'language={lang}']
|
||||
idx += 1
|
||||
else:
|
||||
filters.append(
|
||||
f'anullsrc=r={audio_sampling_rate}:cl=mono,atrim=0:{source_audio_duration},asetpts=PTS-STARTPTS[s{i}];')
|
||||
f'anullsrc=r={audio_sampling_rate}:cl=mono,atrim=0:{source_audio_duration},asetpts=PTS-STARTPTS[s{i}]')
|
||||
|
||||
if n:
|
||||
inputs += ['-i', n]
|
||||
start = '0' if new_audio_from_start else source_audio_duration
|
||||
filters.append(
|
||||
f'[{idx}:a]aresample={audio_sampling_rate},aformat=channel_layouts=mono,'
|
||||
f'atrim=start={start},asetpts=PTS-STARTPTS[n{i}];'
|
||||
f'[s{i}][n{i}]concat=n=2:v=0:a=1[aout{i}];')
|
||||
f'atrim=start={start},asetpts=PTS-STARTPTS[n{i}]')
|
||||
filters.append(f'[s{i}][n{i}]concat=n=2:v=0:a=1[aout{i}]')
|
||||
idx += 1
|
||||
else:
|
||||
filters.append(f'[s{i}]apad=pad_dur=100[aout{i}];')
|
||||
filters.append(f'[s{i}]apad=pad_dur=100[aout{i}]')
|
||||
|
||||
maps += ['-map', f'[aout{i}]']
|
||||
|
||||
cmd = ['ffmpeg', '-y', *inputs,
|
||||
'-filter_complex', ''.join(filters),
|
||||
'-filter_complex', ';'.join(filters), # ✅ Only change made
|
||||
*maps, *metadata_args,
|
||||
'-c:v', 'copy',
|
||||
'-c:a', audio_codec,
|
||||
|
||||
Loading…
Reference in New Issue
Block a user