
Recherche avancée
Médias (91)
-
Géodiversité
9 septembre 2011, par ,
Mis à jour : Août 2018
Langue : français
Type : Texte
-
USGS Real-time Earthquakes
8 septembre 2011, par
Mis à jour : Septembre 2011
Langue : français
Type : Texte
-
SWFUpload Process
6 septembre 2011, par
Mis à jour : Septembre 2011
Langue : français
Type : Texte
-
La conservation du net art au musée. Les stratégies à l’œuvre
26 mai 2011
Mis à jour : Juillet 2013
Langue : français
Type : Texte
-
Podcasting Legal guide
16 mai 2011, par
Mis à jour : Mai 2011
Langue : English
Type : Texte
-
Creativecommons informational flyer
16 mai 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
Autres articles (44)
-
Multilang : améliorer l’interface pour les blocs multilingues
18 février 2011, parMultilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela. -
Les autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs -
Personnaliser les catégories
21 juin 2013, parFormulaire de création d’une catégorie
Pour ceux qui connaissent bien SPIP, une catégorie peut être assimilée à une rubrique.
Dans le cas d’un document de type catégorie, les champs proposés par défaut sont : Texte
On peut modifier ce formulaire dans la partie :
Administration > Configuration des masques de formulaire.
Dans le cas d’un document de type média, les champs non affichés par défaut sont : Descriptif rapide
Par ailleurs, c’est dans cette partie configuration qu’on peut indiquer le (...)
Sur d’autres sites (6917)
-
hw_base_encode : refactor picture allocation/freeing
21 août 2024, par Lynnehw_base_encode : refactor picture allocation/freeing
This commit cleans up and refactors the mess of private state upon
private state that used to be.Now, FFHWBaseEncodePicture is fully initialized upon call-time,
and, most importantly, this lets APIs which require initialization
data for frames (VkImageViews) to initialize this for both the
input image, and the reconstruction (DPB) image.Signed-off-by : Tong Wu <wutong1208@outlook.com>
- [DH] libavcodec/d3d12va_encode.c
- [DH] libavcodec/d3d12va_encode.h
- [DH] libavcodec/d3d12va_encode_hevc.c
- [DH] libavcodec/hw_base_encode.c
- [DH] libavcodec/hw_base_encode.h
- [DH] libavcodec/vaapi_encode.c
- [DH] libavcodec/vaapi_encode.h
- [DH] libavcodec/vaapi_encode_av1.c
- [DH] libavcodec/vaapi_encode_h264.c
- [DH] libavcodec/vaapi_encode_h265.c
- [DH] libavcodec/vaapi_encode_mjpeg.c
- [DH] libavcodec/vaapi_encode_mpeg2.c
- [DH] libavcodec/vaapi_encode_vp8.c
- [DH] libavcodec/vaapi_encode_vp9.c
-
Understanding User Flow : Eight Practical Examples for Better UX
4 octobre 2024, par Daniel Crough — Analytics Tips, UX -
mpv player with SFTP does not work in bash script [closed]
19 mars 2024, par Pickles888I am making a bash script to make it easier to stream from my media server at home.


In the bash script, it asks whether you want to list or search, and then uses mpv to stream the file. For some reason it says the file does not exist. When I try this in the terminal it works, but running the script gives this error :


[ffmpeg] libssh: Error opening sftp file: SFTP server: No such file
Failed to open sftp://[username:password]@[ip.of.server]/[directory/to/file]



My script :


#!/bin/bash

pass="[password]"

if [ $(nmcli | grep -c [home-network]) -gt 0 ]; then
 ip="[private.ip]"
else
 ip="[public.ip]"
fi

mfolder="[/directory/of/file]"

function select_option {

 # little helpers for terminal print control and key input
 ESC=$( printf "\033")
 cursor_blink_on() { printf "$ESC[?25h"; }
 cursor_blink_off() { printf "$ESC[?25l"; }
 cursor_to() { printf "$ESC[$1;${2:-1}H"; }
 print_option() { printf " $1 "; }
 print_selected() { printf " $ESC[7m $1 $ESC[27m"; }
 get_cursor_row() { IFS=';' read -sdR -p $'\E[6n' ROW COL; echo ${ROW#*[}; }
 key_input() { read -s -n3 key 2>/dev/null >&2
 if [[ $key = $ESC[A ]]; then echo up; fi
 if [[ $key = $ESC[B ]]; then echo down; fi
 if [[ $key = "" ]]; then echo enter; fi; }

 # initially print empty new lines (scroll down if at bottom of screen)
 for opt; do printf "\n"; done

 # determine current screen position for overwriting the options
 local lastrow=`get_cursor_row`
 local startrow=$(($lastrow - $#))

 # ensure cursor and input echoing back on upon a ctrl+c during read -s
 trap "cursor_blink_on; stty echo; printf '\n'; exit" 2
 cursor_blink_off

 local selected=0
 while true; do
 # print options by overwriting the last lines
 local idx=0
 for opt; do
 cursor_to $(($startrow + $idx))
 if [ $idx -eq $selected ]; then
 print_selected "$opt"
 else
 print_option "$opt"
 fi
 ((idx++))
 done

 # user key control
 case `key_input` in
 enter) break;;
 up) ((selected--));
 if [ $selected -lt 0 ]; then selected=$(($# - 1)); fi;;
 down) ((selected++));
 if [ $selected -ge $# ]; then selected=0; fi;;
 esac
 done

 # cursor position back to normal
 cursor_to $lastrow
 printf "\n"
 cursor_blink_on

 return $selected
}

stream() {
 mpv --fs "sftp://[username]:$pass@$ip$mfolder${options[choice]}"
}

search() {
 read -p "Search
> " search
 chars=$(echo -n "$search" | wc -c)
 printf '\n'
 clear
 printf "Search Results For $search:"
 printf '\n'
 readarray options < <(sshpass -p "$pass" ssh "[username]@$ip" ls "$mfolder" | agrep -i -$(($chars/3)) "$search")
 select_option "${options[@]}"
 choice=$?
 stream
}

list() {
 clear
 sshpass -p "$pass" ssh [username]@$ip ls "$mfolder"
 search
}

cmd() {
 read -p "List or Search 
(S/l)> " cmd
 printf '\n'
 
 if [[ "$cmd" == "S" || "$cmd" == "s" ]]; then
 search
 elif [[ "$cmd" == "L" || "$cmd" == "l" ]]; then
 list
 else
 search
 fi
}

main() {
 cmd
}

main



Anything put in brackets is to not share my personal info (except for arrays, if statements etc)


Also this seems to have only changed while I was making the script. In the beginning, it was working great, but at one point it randomly stopped working.


I have a feeling its some kind of quote mess up or something stupid like that. I have tried to edit it and fix it to the best of my abilities but nothing I did fixed it.


I also think it could have to do with it being run in the bash environment as I normally use zsh. However I tested it in my shell by running /bin/bash and executing the command and it worked.


Also the option chooser was not made by me.