
Recherche avancée
Autres articles (62)
-
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 (...) -
Le profil des utilisateurs
12 avril 2011, parChaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...) -
Configurer la prise en compte des langues
15 novembre 2010, parAccéder à la configuration et ajouter des langues prises en compte
Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...)
Sur d’autres sites (6133)
-
Why do my Windows filenames keep getting converted in FFMPEG ?
14 avril 2024, par GeneralTullyI'm running a script that walks through a large library of
.flac
music, making a mirror library with the same structure but converted to.opus
. I'm doing this on Windows 11, so I believe the source filenames are all inUTF-16
. The script calls FFMPEG to do the converting.

For some reason, uncommon characters keep getting converted to different but similar characters when the script runs, for example :


06 xXXi_wud_nvrstøp_ÜXXx.flac



gets converted to :


06 xXXi_wud_nvrstøp_ÜXXx.opus



They look almost identical, but the
Ü
and I believe also theø
are technically slightly different characters before and after the conversion.

The function which calls
FFMPEG
for the conversion looks like this :

def convert_file(pool, top, file):
 fullPath = os.path.join(top, file)
 # Pass count=1 to str.replace() just in case .flac is in the song
 # title or something.
 newPath = fullPath.replace(src_dir, dest_dir, 1)
 newPath = newPath.replace(".flac", ".opus", 1)

 if os.path.isfile(newPath):
 return None
 else:
 print("{} does not exist".format(newPath))
 
 cvt = [
 "Ffmpeg", "-v", "debug", "-i", fullPath, "-c:a", "libopus", "-b:a", "96k", newPath]
 print(cvt)

 return (
 fullPath,
 pool.apply_async(subprocess.run, kwds={
 "args": cvt,
 "check": True,
 "stdin": subprocess.DEVNULL}))



The arguments are being supplied by
os.walk
with no special parameters.

Given that the script is comparing filenames to check if a conversion needs to happen, and the filenames keep getting changed, it keeps destroying and recreating the same files every time the script runs.


Why might this be happening ?


edit : I have confirmed that if I manually execute the FFMPEG command in CMD, bypassing Python completely, it converts the original Unicode 0125 + 01410 to 0334 (U with umlaut), so this doesn't seem to be a Python problem.


-
lavf : Use wchar functions for filenames on windows for mkdir/rmdir/rename/unlink
17 novembre 2014, par Martin Storsjölavf : Use wchar functions for filenames on windows for mkdir/rmdir/rename/unlink
This makes sure that the internal utf8 path names are handled
properly - the normal file handling functions assume path names
are in the native codepage, which isn’t utf8.This assumes that the tools outside of lavf don’t use the mkdir
definition. (The tools don’t do the same reading of command line
parameters as wchar either - they probably won’t handle all possible
unicode file parameters properly, but at least work more predictably
if no utf8/wchar conversion is involved.)This is moved further down in os_support.h, since windows.h shouldn’t
be included before winsock2.h, while io.h needs to be included before
the manual defines for lseek functions.Signed-off-by : Martin Storsjö <martin@martin.st>
-
Revision 34657 : lister les plugins non utilises (le glob() est pourri, qui fait mieux)
23 janvier 2010, par fil@… — Loglister les plugins non utilises (le glob() est pourri, qui fait mieux)