
Recherche avancée
Autres articles (17)
-
La file d’attente de SPIPmotion
28 novembre 2010, parUne file d’attente stockée dans la base de donnée
Lors de son installation, SPIPmotion crée une nouvelle table dans la base de donnée intitulée spip_spipmotion_attentes.
Cette nouvelle table est constituée des champs suivants : id_spipmotion_attente, l’identifiant numérique unique de la tâche à traiter ; id_document, l’identifiant numérique du document original à encoder ; id_objet l’identifiant unique de l’objet auquel le document encodé devra être attaché automatiquement ; objet, le type d’objet auquel (...) -
Contribute to documentation
13 avril 2011Documentation is vital to the development of improved technical capabilities.
MediaSPIP welcomes documentation by users as well as developers - including : critique of existing features and functions articles contributed by developers, administrators, content producers and editors screenshots to illustrate the above translations of existing documentation into other languages
To contribute, register to the project users’ mailing (...) -
Selection of projects using MediaSPIP
2 mai 2011, parThe examples below are representative elements of MediaSPIP specific uses for specific projects.
MediaSPIP farm @ Infini
The non profit organizationInfini develops hospitality activities, internet access point, training, realizing innovative projects in the field of information and communication technologies and Communication, and hosting of websites. It plays a unique and prominent role in the Brest (France) area, at the national level, among the half-dozen such association. Its members (...)
Sur d’autres sites (4014)
-
Iterate recursively in every subfolder and run a batch file
6 août 2018, par Gokul NairPlease look at the following scenario wherein a folder
A
has many subfolders with different names. These subfolders haven
number of.jpg
files, which I am trying to scale and crop.Folder A\
SubFolder 01\*.jpg
SubFolder 02\*.jpg
.
.
.
SubFolder xx\*.jpgThese sub-folders are with different names and do not have a trend when it comes to its names.
I have created a batch file which would scale and crop images. This is working perfectly. I need to run the following command (name of file : ScaleCrop.bat) in each SubFolder xx :
for %%I in (.) do set CurrDirName=%%~nxI
for %%a in ("*.JPG") do ffmpeg -i "%%a" -vf ^"scale=-1:260, crop=250:250^" "..\ScaledImages\%CurrDirName%\%%a.JPG"
for %%a in ("*.JPG") do ffmpeg -i "%%a" -vf ^"scale=260:-1, crop=250:250^" "..\ScaledImages\%CurrDirName%\%%a.JPG"
pauseThe command Scales and crops the image in the folder and saves these files in to a folder named
SacledImages
, which too has subfolders of the same name (SubFolder 01
,SubFolder 02
,…,SubFolderxx
).I have created another
.bat
file which I used to copyScaleCrop.bat
to each subfolder.for /d %%a in ("C:\Users\Name\Desktop\Folder A\*") do copy " C:\Users\Name\Desktop\Folder A\ScaleCrop.bat" "%%a"
How could I code a batch file run and execute
ScaleCrop.bat
from each of these subfolders ?I tried using the following code, but this just calls the
.bat file
inside each subfolder, however it is not executing :for /f %%f in ('dir /ad /b') do start %%f\ScaleCrop.bat
I Tried the following as well, this does the trick, but all images are getting overwritten as the scaled-cropped images are saved on to
/SacledImages
Folder and not insideScaledImages/SubFolderxx
:for /r "C:\ Users\Name\Desktop\Folder A " %%a in (.) do (
pushd %%a
for %%I in (.) do set CurrDirName=%%~nxI
for %%a in ("*.JPG") do ffmpeg -i "%%a" -vf ^"scale=-1:260, crop=250:250^" "..\ScaledImages\%CurrDirName%\%%a.JPG"
for %%a in ("*.JPG") do ffmpeg -i "%%a" -vf ^"scale=260:-1, crop=250:250^" "..\ScaledImages\%CurrDirName%\%%a.JPG"
pause
popd
) -
How to embed ffmpeg and ffprobe to a python gui.exe file in Windows or Mac ?
10 décembre 2023, par sburakcI prepared a Pyhton Gui script in Windows that gets a subtitle then converts an audio file. But at the end of the script I realized that the script uses the ffmpeg from my computer's local ffmpeg and didn't give any error. But, when I try in another computer that doesn't include ffmpeg, it's given the error in the terminal below :

pydub\utils.py:170: RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work Processing text 1/2 pydub\utils.py:198: RuntimeWarning: Couldn't find ffprobe or avprobe - defaulting to ffprobe, but may not work Error occurred: [WinError 2] System cannot find the specified file


I tried many ways such as :


pyinstaller -F --add-data "./ffmpeg/*;./ffmpeg/" gui.py


pyinstaller -F --add-data "C:\Users\sbura\Desktop\gom\ffmpeg\ffmpeg.exe;ffmpeg" --add-data "C:\Users\sbura\Desktop\gom\ffmpeg\ffprobe.exe;ffmpeg" gui.py


OR


tried to gui.spec file adding :


exe = EXE(pyz,
 a.scripts,
 binaries=[('C:\\Users\\sbura\\Desktop\\gom\\ffmpeg_bin\\ffmpeg.exe', 'ffmpeg.exe'), 
 ('C:\\Users\\sbura\\Desktop\\gom\\ffmpeg_bin\\ffprobe.exe', 'ffprobe.exe')],
 a.zipfiles,
 a.datas,
 [],
 ...




I also created a folder with the name of "ffmpeg" where I put the files of ffmpeg.exe and ffprobe.exe.


Also I added to my code that :


import sys
from pydub import AudioSegment

def resource_path(relative_path):
 if hasattr(sys, '_MEIPASS'):
 return os.path.join(sys._MEIPASS, relative_path)
 return os.path.join(os.path.abspath("."), relative_path)

AudioSegment.converter = resource_path('ffmpeg\\ffmpeg.exe')
AudioSegment.ffprobe = resource_path('ffmpeg\\ffprobe.exe')



But any of these didn't work. Thank you for your help.


-
Parsing file-like object into create_ffmpeg_player in discord.py not working
3 août 2018, par user4757174The API documentation for create_ffmpeg_player says it allows passing file-like objects into create_ffmpeg_player as it will be passed to stdin.
create_ffmpeg_player(filename, *, use_avconv=False, pipe=False, stderr=None, options=None, before_options=None, headers=None, after=None)
filename – The filename that ffmpeg will take and convert to PCM bytes. If pipe is True then this is a file-like object that is passed to the stdin of ffmpeg
here’s what I am inputting :
buffer = BytesIO()
c.setopt(c.WRITEDATA, buffer)
c.perform()
player = voice.create_ffmpeg_player(buffer,pipe=True)The PycURL object writes data to
buffer
which is the BytesIO object.Then I try to parse the file-like object into create_ffmpeg_player() but I get the following error :
Traceback (most recent call last):
File "C:\Users\user\AppData\Local\Programs\Python\Python36\lib\site-packages\discord\client.py", line 307, in _run_event
yield from getattr(self, event)(*args, **kwargs)
File "test.py", line 116, in on_message
player = voice.create_ffmpeg_player(buffer,pipe=True)
File "C:\Users\user\AppData\Local\Programs\Python\Python36\lib\site-packages\discord\voice_client.py", line 431, in create_ffmpeg_player
p = subprocess.Popen(args, stdin=stdin, stdout=subprocess.PIPE, stderr=stderr)
File "C:\Users\user\AppData\Local\Programs\Python\Python36\lib\subprocess.py", line 667, in __init__
errread, errwrite) = self._get_handles(stdin, stdout, stderr)
File "C:\Users\user\AppData\Local\Programs\Python\Python36\lib\subprocess.py", line 904, in _get_handles
p2cread = msvcrt.get_osfhandle(stdin.fileno())
io.UnsupportedOperation: filenoThe error shows me that somewhere in the stack, a routine is trying to get the fileno() of the object, but since this is not a real file, there is no file handle, or "fileno". For a temporary work-around I am creating a physical file on disk and parsing that file into the function, but for this program, the function will be run many times so doing physical read/writes is not practical. Is it possible to work around this, or at least create a file on memory with the ability to get/spoof a fileno ?