Цитирование имени файла в ffmpeg concat

12

Я хочу объединить файлы с помощью ffmpeg, используя демультиплексор Concat, как описано в этой статье. Как объединить (объединить, объединить) медиафайлы . Мои файлы, однако, содержат одинарные кавычки (апострофы). Итак, мой concat.list выглядит так:

file 'artist's song.mp3'
file 'artist's song 2 .mp3'

Как вы видите, апостроф в середине имени файла конфликтует с форматом файла concat. Установка обратной косой черты не помогает, потому что ffmpeg читает имя файла с литературным именем и жалуется, что файл не существует. В качестве дополнительной информации я использую ffmpeg с cygwin под Windows 7.

Тихомир Митков
источник

Ответы:

13

Вы должны поместить все в одинарные кавычки и экранировать каждую кавычку с помощью

'\''

Так,

foo'bar test.mp4

будет указан как:

file 'foo'\''bar test.mp4'

Вы можете представить его как разделенную строку, где заканчивается первая пара одинарных кавычек, а затем продолжается:

'foo'   \'   'bar test.mp4'

Это также объясняется в документации :

Сам символ кавычки не может быть заключен в кавычки, поэтому вам может потребоваться закрыть кавычку и избежать ее.

и это сообщение об ошибке .

slhck
источник