
Recherche avancée
Médias (91)
-
MediaSPIP Simple : futur thème graphique par défaut ?
26 septembre 2013, par
Mis à jour : Octobre 2013
Langue : français
Type : Video
-
avec chosen
13 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
-
sans chosen
13 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
-
config chosen
13 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
-
SPIP - plugins - embed code - Exemple
2 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
-
GetID3 - Bloc informations de fichiers
9 avril 2013, par
Mis à jour : Mai 2013
Langue : français
Type : Image
Autres articles (74)
-
MediaSPIP version 0.1 Beta
16 avril 2011, parMediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...) -
MediaSPIP 0.1 Beta version
25 avril 2011, parMediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
The zip file provided here only contains the sources of MediaSPIP in its standalone version.
To get a working installation, you must manually install all-software dependencies on the server.
If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...) -
Amélioration de la version de base
13 septembre 2013Jolie sélection multiple
Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)
Sur d’autres sites (9869)
-
avcodec/mpegvideo_enc : Don't find encoder by ID
28 janvier 2022, par Andreas Rheinhardtavcodec/mpegvideo_enc : Don't find encoder by ID
mpegvideo-based encoders supporting bframes implement this
by opening encoders of their own to test how long the chains
of bframes are supposed to be. The needed AVCodec was obtained
via avcodec_find_encoder(). This is complicated, as the current
encoder can be directly obtained. And it also is not guaranteed
that one actually gets the current encoder or not another encoder
for the same codec ID (the latter does not seem to be the case now).Signed-off-by : Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-
FFMPEG command for video and audio
19 mai 2012, par StackOverflowNewbieI'm not building the next YouTube or iTunes, but I do need to give my users the ability to upload their videos and audios — then present it on the web at the highest possible quality with the lowest possible file size.
Questions :
-
FOR INPUT : What video and audio formats should I support ? I'm guessing I should try to support the most common formats, but I'm not entirely sure what they are. Also, I'm not sure if I should support the most common formats. Maybe there is a reason not to support a certain format.
-
FOR OUTPUT : What video and audio output formats should I generate ? I'd like to use HTML5's and tags, but know I should consider supporting non-HTML5 browsers. Should I do OGG, MP4 and FLV for videos ? What about audios ?
-
Given an unknown video and audio file uploaded by the user, what command should I use to generate the desired output formats. I'd like one command to convert to particular outputs — and hopefully not have to do anything different to the commands depending on the input (it'll be a pain for me to know what the MIME type is of the file, etc. and can't really do an "if input is a WMV, then run this command" logic).
Suggestion FFMPEG experts ?
-
-
asyncio.create_subprocess_shell error : Future exception was never retrieved - BrokenPipeError
10 juin 2021, par AbdelmalekWhenever I use asyncio.create_subprocess_shell() with sp.communicate() I get this error at the end of my program.


If I run multiple suprocesses using asyncio, the error would be print at the end for each one of them.


Aulthough it doesn't affect my program, I want to find the source and fix the issue. Thanks for the help !


Traceback :


Future exception was never retrieved
future: <future finished="finished" exception="BrokenPipeError(32," pipe="pipe" has="has" been="been">
Traceback (most recent call last):
 File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\asyncio\subprocess.py", line 153, in _feed_stdin
 await self.stdin.drain()
 File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\asyncio\streams.py", line 387, in drain
 await self._protocol._drain_helper()
 File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\asyncio\streams.py", line 197, in _drain_helper
 await waiter
 File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\asyncio\proactor_events.py", line 379, in _loop_writing
 f.result()
 File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\asyncio\windows_events.py", line 812, in _poll
 value = callback(transferred, key, ov)
 File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\asyncio\windows_events.py", line 538, in finish_send
 return ov.getresult()
BrokenPipeError: [WinError 109] The pipe has been ended
</future>


Code :


async def get(cs, url):
 async with cs.get(url) as r:
 b = b''
 while True:
 chunk = await r.content.read(4000000)
 b += chunk
 if not chunk:
 break
 
 if int(r.headers['content-length']) < 8000000:
 result = BytesIO(b)
 return [result, 'full']
 else:
 command = f"ffmpeg -y -i - -c:v copy -fs 8000000 -f matroska -"
 sp = await asyncio.create_subprocess_shell(command, stdin=asyncio.subprocess.PIPE,
 stdout=asyncio.subprocess.PIPE, stderr=asyncio.subprocess.PIPE)
 stdout, stderr = await sp.communicate(b)
 sp.wait()

 print(stderr.decode())
 print(len(stdout))
 output = str(stderr)
 index_d = output.find('Duration: ')
 index_t = output.rfind('time=')
 duration = await get_sec(output[index_d + 10:].split(",")[0])
 time_ = await get_sec(output[index_t + 5:].split(" ")[0])
 percentage = f"{round((time_ / duration) * 100)}%"

 result = BytesIO(stdout)
 return [result, 'preview', percentage]

async def main(urls):
 async with aiohttp.ClientSession() as cs:
 
 tasks = []
 for url in urls:
 task = asyncio.create_task(get(cs, url))
 tasks.append(task)
 
 results = []
 for task in tasks:
 result = await task
 results.append(result)
 
 return results

loop = asyncio.get_event_loop()
results = loop.run_until_complete(main(urls))