Mon problème est le suivant. J'ai accès à un serveur qui héberge de nombreux fichiers vidéo, la plupart d'entre eux sont très volumineux et mal compressés. J'ai l'intention d'en faire une copie de taille réduite de plus petite taille sur ma machine locale pour un meilleur accès.
Le problème est que le serveur n'a pas d'accès ftp. Je peux scp les fichiers sur ma machine, puis utiliser ffmpeg pour réduire la taille, mais je manquerai d'espace si je copie tous les fichiers localement.
Je cherche un moyen d'entrer directement un fichier réseau dans ffmpeg, de cette façon je pourrai écrire un script qui me donnera du jour au lendemain toutes les vidéos en taille réduite.
Réponses:
Vous pouvez utiliser
sshfs
pour faire apparaître les fichiers distants dans un répertoire sur la machine locale.Vous ne dites pas quelle distribution vous utilisez sur votre client, mais cela est extrait de la documentation Ubuntu sshfs :
sshfs
package (aptitude install sshfs
)fuse
groupe (sudo gpasswd -a username fuse
)sshfs
commandePour l'utiliser
sshfs
, créez-vous un répertoire (nous l'appellerons ainsi/mountpoint
), et faitesLes fichiers distants apparaîtront maintenant dans
/mountpoint
, mais sont en fait toujours sur le serveur distant. Toutes les modifications que vous apportez seront effectuées à distance et non localement.Pour démonter le répertoire, faites
la source
Si vous avez un accès ssh au système distant, vous pouvez faire quelque chose comme
ssh server cat path/to/video | ffmpeg -i - [...]
La commande
-
ffmpeg lit depuis stdin au lieu d'un fichier.Attention, tous les formats ne prennent pas en charge les canaux. Voir /programming/12999674/ffmpeg-which-file-formats-support-stdin-usage
la source