Вы меняете права доступа к папке, а не к файлам внутри. Вместо этого попробуйте
sudo chmod -R 777 configSite/
Вы должны использовать обходной подход. Дважды загрузите файл и сместите временные метки второго ввода на длительность в конце, который вы хотите обрезать. Затем направьте оба потока на другой экземпляр ffmpeg с установленным -shortest
. Во втором экземпляре ffmpeg сохраните только поток из второго входа.
ffmpeg -i in.mp3 -itsoffset 1 -i in.mp3 -map 0:a:0 -map 1:a:0 -c copy -shortest -f nut - | ffmpeg -f nut -i - -c copy -map 0:1 out.mp3
Вдохновившись ответами на другие вопросы на этом сайте, я тоже смог кое-что придумать. Эту команду можно передать в find
как опцию exec
ffmpeg -i FILE1.wma -ss 0 -to $(echo $(ffprobe -i FILE1.wma -show_entries format=duration -v quiet -of csv="p=0") - 1 | bc) -c copy FILE2.wma
Часть в середине $(echo $(ffprobe -i FILE1.wma -show_entries format=duration -v quiet -of csv="p=0") - 1 | bc)
первой получает желаемую продолжительность. Конвейер к bc
должен вычисляться в плавающем формате. Результат этого затем передается в качестве аргумента -to
в основной команде.
Чтобы разбить длинную однострочную команду выше, для простоты понимания:
ffmpeg -i FILE1.wma -ss 0 -to
$(echo
$(ffprobe -i FILE1.wma -show_entries format=duration -v quiet -of csv="p=0")
- 1 | bc
)
-c copy FILE2.wma