
Recherche avancée
Médias (1)
-
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
Autres articles (57)
-
Des sites réalisés avec MediaSPIP
2 mai 2011, parCette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page. -
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir -
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)
Sur d’autres sites (8850)
-
Streaming without Content-Length in response
29 août 2011, par kainI'm using Node.js, Express (and connect), and fluent-ffmpeg.
We want to stream audio files that are stored on Amazon S3 through http.
We have all working, except that we would like to add a feature, the on-the-fly conversion of the stream through ffmpeg.
This is working well, the problem is that some browsers checks in advance before actually getting the file.
Incoming requests containing the Range header, for which we reply with a 206 with all the info from S3, have a fundamental problem : we need to know in advance the content-length of the file.
We don't know that since it is going through ffmpeg.
One solution might be to write out the resulting content-length directly on S3 when storing the file (in a special header), but this means we have to go through the pain of having queues to encode after upload just to know the size for future requests.
It also means that if we change compressor or preset we have to go through all this over again, so it is not a viable solution.We also noticed big differencies in the way Chrome and Safari request the audio tag src, but this may be discussion for another topic.
Fact is that without a proper content-length header in response everything seems to break or browsers goes in an infinite loop or restart the stream at pleasure.
Ideas ?
-
Muxing together a .ts file and a sub file causes playback issues in video and audio [closed]
3 mai 2024, par Meta83So I have a .ts file and a converted .dvb sub file (.SRT TO .DVB) that I want to mux togheter using FFMPEG. The mux is a success and the file plays fine in VLC or other modern divce.However I have an older divce (around 10 yeras old) where playback has issues, whenever a line of subs is displayd the picture and and audio gets corrupted and frezzes up and as sson there are no lins everything looks good again and so on. Note that subs are displayd correctly and they are not affected by the issue, only picture and audio is.


I have tried using diffrent command without any luck but here is the most basic command that should work :


ffmpeg -i <video file="file"> -i <dvb file="file"> -f mpegts -c:v copy -c:a copy -c:s copy -copyts <output file="file">
</output></dvb></video>


Here is the output I get frome FFMPEG :


ffmpeg version 7.0-full_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers
 built with gcc 13.2.0 (Rev5, Built by MSYS2 project)
 configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libxevd --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxeve --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2 --enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc --enable-vaapi --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
 libavutil 59. 8.100 / 59. 8.100
 libavcodec 61. 3.100 / 61. 3.100
 libavformat 61. 1.100 / 61. 1.100
 libavdevice 61. 1.100 / 61. 1.100
 libavfilter 10. 1.100 / 10. 1.100
 libswscale 8. 1.100 / 8. 1.100
 libswresample 5. 1.100 / 5. 1.100
 libpostproc 58. 1.100 / 58. 1.100
[mpegts @ 0000029209341000] stream 0 : no PTS found at end of file, duration not set
Input #0, mpegts, from '\Tests\video.ts':
 Duration: 00:28:52.06, start: 0.980000, bitrate: 4992 kb/s
 Program 1
 Stream #0:0[0x1e1]: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn
 Stream #0:1[0x1e2](swe): Audio: mp2 (mp3float) ([3][0][0][0] / 0x0003), 48000 Hz, stereo, fltp, 192 kb/s
Input #1, mpegts, from 'ENG.dvb':
 Duration: 00:28:09.88, start: 0.160000, bitrate: 8 kb/s
 Program 1
 Metadata:
 service_name : Service01
 service_provider: FFmpeg
 Stream #1:0[0x100](eng): Subtitle: dvb_subtitle (dvbsub) ([6][0][0][0] / 0x0006)
Stream mapping:
 Stream #0:0 -> #0:0 (copy)
 Stream #0:1 -> #0:1 (copy)
 Stream #1:0 -> #0:2 (copy)
Output #0, mpegts, to '\Tests\20735799_muxed.ts':
 Metadata:
 encoder : Lavf61.1.100
 Stream #0:0: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 25 fps, 25 tbr, 90k tbn
 Stream #0:1(swe): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, fltp, 192 kb/s
 Stream #0:2(swe): Subtitle: dvb_subtitle ([6][0][0][0] / 0x0006)
Press [q] to stop, [?] for help
[out#0/mpegts @ 000002920a155380] video:951379KiB audio:40595KiB subtitle:1389KiB other streams:0KiB global headers:0KiB muxing overhead: 3.385295%
size= 1026992KiB time=00:27:25.74 bitrate=5112.1kbits/s speed=75.3x



Can anyone help me out ? I'm I missing something that is needed for older divaces (divece in question is a Samsung SMT-S5140 STB).


-
FFMPEG in Node.js : Conversion Failed
11 juillet 2024, par cuneyttylerI have a small node.js web app. I use like this in a get request :


app.get('/api/voice/:gender/:voice/:pitch', function(req, res){
 if(req.params.pitch == "1" || req.params.pitch == "1.0") {
 const file = "./voices/" + req.params.gender.toLowerCase() + "/" + req.params.voice + ".mp3"
 res.download(file);
 return
 }

 const inputFile = "./voices/" + req.params.gender.toLowerCase() + "/" + req.params.voice + ".mp3"
 const output_file = "./Audio/Temp/" + req.params.voice + ".mp3"
 ffmpeg()
 .input(inputFile)
 .audioCodec('pcm_s16le') // Set the audio codec to PCM with 16-bit depth
 .audioFrequency(44100) // Set the sample rate
 .on('error', function(err) {
 console.error('Error while converting:', err);
 })
 .on('end', function() {
 // res.download(output_file)
 })
 .save(output_file);

 });



It gives
Conversion Failed
error :

[2024-07-11T18:11:22.880Z] Error while converting: Error: ffmpeg exited with code 1: Conversion failed!

 at ChildProcess.<anonymous> (d:\Dev\Anima\Client\node_modules\fluent-ffmpeg\lib\processor.js:180:22)
 at ChildProcess.emit (d:\Dev\Anima\Client\lib\events.js:519:28)
 at ChildProcess._handle.onexit (d:\Dev\Anima\Client\lib\internal\child_process.js:294:12)
 at Process.callbackTrampoline (node:internal/async_hooks:130:17) {stack: 'Error: ffmpeg exited with code 1: Conversion …Trampoline (node:internal/async_hooks:130:17)', message: 'ffmpeg exited with code 1: Conversion failed!
'}
</anonymous>


When I use same code in a node.js desktop(.exe) app, it successfully runs. When I use it in an express.js app, it fails. Error message is not clear. What is the issue ?