
Recherche avancée
Autres articles (10)
-
HTML5 audio and video support
13 avril 2011, parMediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
For older browsers the Flowplayer flash fallback is used.
MediaSPIP allows for media playback on major mobile platforms with the above (...) -
Support de tous types de médias
10 avril 2011Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)
-
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 (4771)
-
avformat/mp4 : add muxer support for H266/VVC
30 janvier 2024, par Thomas Siedelavformat/mp4 : add muxer support for H266/VVC
Add muxer for vvcc byte stream format.
Add AV_CODEC_ID_VVC to ff_mp4_obj_type.
Add AV_CODEC_ID_VVC to ISO Media codec (VvcConfigurationBox vvi1,
vvc1 defined in ISO/IEC 14496-15:2021).
Add VvcConfigurationBox vvcC which extends FullBox type in
ISO/IEC 14496-15:2021.Tested with :
ffmpeg -i NovosobornayaSquare_1920x1080.mp4 -c:v libvvenc test.mp4 && ffmpeg -i test.mp4 -f null -
ffmpeg -i NovosobornayaSquare_1920x1080.mp4 -c:v copy test.mp4 && ffmpeg -i test.mp4 -f md5 -Signed-off-by : James Almer <jamrial@gmail.com>
Signed-off-by : Thomas Siedel <thomas.ff@spin-digital.com>
Co-Authored-By : Nuo Mi <nuomi2021@gmail.com> -
Sending frames from memory to FFMPEG command line program .NET 6
15 septembre 2021, par Alessandro MartinelliI'm trying to use the pipe to send frames generated by my program to ffmpeg command line utility without saving them on disk. Please note I was able to generate a video by first saving frames on disk as images and then having FFMPEG generate a video from such images, but that approach is worse performance-wise and implies writing more data on SSD.


I could use the help of this post, but I have FFMPEG returning an error on frame size, and I don't know how to solve it.


My code is the following :


//object storing single frame returned from camera
mv.impact.acquire.Request pRequest; 
string outputPath = ...;
List frames = new List();

[...]

// Single frame is saved into memory
MemoryStream stream = new MemoryStream();
using (RequestBitmapData data = pRequest.bitmapData) {
 data.bitmap.Save(stream, System.Drawing.Imaging.ImageFormat.Bmp);
 // Please note that now printing data.bitmap.PixelFormat would return Format24bppRgb
}
frames.Add(stream.ToArray());

[...] 

Console.WriteLine(frames.Count + " frames collected. First one length is " + frames.First().Length);

string ffmpegArgument = "/C " + _ffmpegPath + "\\ffmpeg -y -f rawvideo -pix_fmt rgb24 -framerate 3 -video_size 728x544 -i - -c:v libx264 -preset 9 -c:a libvo_aacenc " + outputPath;

Process cmd = new Process();
cmd.StartInfo.FileName = "cmd.exe";
cmd.StartInfo.Arguments = ffmpegArgument;
cmd.StartInfo.UseShellExecute = false;
cmd.StartInfo.RedirectStandardError = false;
cmd.StartInfo.RedirectStandardInput = true;

Console.WriteLine("Executing command " + ffmpegArgument + "...");
cmd.Start();
foreach (byte[] frame in frames) {
 cmd.StandardInput.Write(frame);
}
cmd.StandardInput.Flush();
cmd.StandardInput.Close();



However, when I execute the program, I have the following output :


492 frames collected. First one length is 1188150
Executing command /C ExternalTools\FFmpeg\ffmpeg -y -f rawvideo -pix_fmt rgb24 -framerate 32 -video_size 728x544 -i - -c:v libx264 -preset ultrafast -c:a libvo_aacenc -b:a 128k "Output\TemporaryVideo\2021-09-13 18_58_58.mp4"...
ffmpeg version 2021-06-27-git-49e3a8165c-essentials_build-www.gyan.dev Copyright (c) 2000-2021 the FFmpeg developers
built with gcc 10.3.0 (Rev2, Built by MSYS2 project)

[...] (configurations)

[rawvideo @ 00000241d34feac0] Packet corrupt (stream = 0, dts = 0).
Input #0, rawvideo, from 'pipe:':
 Duration: N/A, start: 0.000000, bitrate: 304152 kb/s
 Stream #0:0: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 728x544, 304152 kb/s, 32 tbr, 32 tbn
Stream mapping:
 Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))
pipe:: corrupt input packet in stream 0
[rawvideo @ 00000241d3511640] Invalid buffer size, packet size 6396 < expected frame_size 1188096
Error while decoding stream #0:0: Invalid argument

[...] (cpu capabilities)

Output #0, mp4, to 'Output\TemporaryVideo\2021-09-13 18_58_58.mp4':
 Metadata:
 encoder : Lavf59.3.101
 Stream #0:0: Video: h264 (avc1 / 0x31637661), yuv444p, 728x544, q=2-31, 32 fps, 16384 tbn
 Metadata:
 encoder : Lavc59.2.100 libx264
 Side data:
 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
frame= 0 fps=0.0 q=0.0 Lsize= 0kB time=00:00:00.00 bitrate=N/A speed= 0x
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Conversion failed!



The value expected by FFMPEG seems correct (1188096 = 728 x 544 x 3), but I don't understand where FFMPEG gets that "packet size 6396" from. Furthermore, that value (6396) changes at every program execution.


I'm pretty sure frames are not corrupted since, if I save such frames on disk, the image is generated correctly.


Thank you for your time,
Alessandro


-
How to convert mkv to mp4 in ffmpeg losslessly
16 novembre 2022, par crsswrdzI'm trying to losslessly convert an .mkv to .mp4.
(For use in Premiere Pro for film analysis and teaching).


When I do so, I get a noticeable drop in file size (11gb to 2gb) and image quality.
The 5.1 streams are maintained but lose their mapping (everything seems displaced i.e. center channel now in the right channel) and the subtitles are lost.


Is it possible to losslessly remux this .mkv to .mp4 ?
I don't want to re-encode it.


E:\>ffmpeg -i Dune.mkv Dune.mp4
ffmpeg version 2022-11-03-git-5ccd4d3060-full_build-www.gyan.dev Copyright (c) 2000-2022 the FFmpeg developers
 built with gcc 12.1.0 (Rev2, 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-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libvpl --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-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 57. 40.100 / 57. 40.100
 libavcodec 59. 51.101 / 59. 51.101
 libavformat 59. 34.101 / 59. 34.101
 libavdevice 59. 8.101 / 59. 8.101
 libavfilter 8. 49.101 / 8. 49.101
 libswscale 6. 8.112 / 6. 8.112
 libswresample 4. 9.100 / 4. 9.100
 libpostproc 56. 7.100 / 56. 7.100
Input #0, matroska,webm, from 'Dune.mkv':
 Metadata:
 title : Dune
 encoder : libebml v1.4.2 + libmatroska v1.6.4
 creation_time : 2021-10-17T11:10:41.000000Z
 Duration: 02:28:56.16, start: 0.000000, bitrate: 10192 kb/s
 Stream #0:0(eng): Video: h264 (High), yuv420p(tv, bt709, progressive), 1920x776, SAR 1:1 DAR 240:97, 25 fps, 25 tbr, 1k tbn (default)
 Metadata:
 BPS : 9806853
 DURATION : 02:28:56.160000000
 NUMBER_OF_FRAMES: 223404
 NUMBER_OF_BYTES : 10954451639
 _STATISTICS_WRITING_APP: mkvmerge v62.0.0.1 ('Apollo') 64-bit
 _STATISTICS_WRITING_DATE_UTC: 2021-10-17 11:10:41
 _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
 Stream #0:1(eng): Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s (default)
 Metadata:
 BPS : 384000
 DURATION : 02:28:56.128000000
 NUMBER_OF_FRAMES: 279254
 NUMBER_OF_BYTES : 428934144
 _STATISTICS_WRITING_APP: mkvmerge v62.0.0.1 ('Apollo') 64-bit
 _STATISTICS_WRITING_DATE_UTC: 2021-10-17 11:10:41
 _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
 Stream #0:2(eng): Subtitle: subrip (forced)
 Metadata:
 title : FORCED
 BPS : 1
 DURATION : 01:49:04.860000000
 NUMBER_OF_FRAMES: 43
 NUMBER_OF_BYTES : 1104
 _STATISTICS_WRITING_APP: mkvmerge v62.0.0.1 ('Apollo') 64-bit
 _STATISTICS_WRITING_DATE_UTC: 2021-10-17 11:10:41
 _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
 Stream #0:3(eng): Subtitle: subrip (default)
 Metadata:
 BPS : 34
 DURATION : 02:20:49.064000000
 NUMBER_OF_FRAMES: 998
 NUMBER_OF_BYTES : 36676
 _STATISTICS_WRITING_APP: mkvmerge v62.0.0.1 ('Apollo') 64-bit
 _STATISTICS_WRITING_DATE_UTC: 2021-10-17 11:10:41
 _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream mapping:
 Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
 Stream #0:1 -> #0:1 (ac3 (native) -> aac (native))
Press [q] to stop, [?] for help
[aac @ 0000016e39c4a7c0] Using a PCE to encode channel layout "5.1(side)"
[libx264 @ 0000016e396ded40] using SAR=1/1
[libx264 @ 0000016e396ded40] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0000016e396ded40] profile High, level 4.0, 4:2:0, 8-bit
[libx264 @ 0000016e396ded40] 264 - core 164 r3101 b093bbe - H.264/MPEG-4 AVC codec - Copyleft 2003-2022 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=24 lookahead_threads=4 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'Dune.mp4':
 Metadata:
 title : Dune
 encoder : Lavf59.34.101
 Stream #0:0(eng): Video: h264 (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1920x776 [SAR 1:1 DAR 240:97], q=2-31, 25 fps, 12800 tbn (default)
 Metadata:
 BPS : 9806853
 DURATION : 02:28:56.160000000
 NUMBER_OF_FRAMES: 223404
 NUMBER_OF_BYTES : 10954451639
 _STATISTICS_WRITING_APP: mkvmerge v62.0.0.1 ('Apollo') 64-bit
 _STATISTICS_WRITING_DATE_UTC: 2021-10-17 11:10:41
 _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
 encoder : Lavc59.51.101 libx264
 Side data:
 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
 Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, 5.1(side), fltp, 394 kb/s (default)
 Metadata:
 BPS : 384000
 DURATION : 02:28:56.128000000
 NUMBER_OF_FRAMES: 279254
 NUMBER_OF_BYTES : 428934144
 _STATISTICS_WRITING_APP: mkvmerge v62.0.0.1 ('Apollo') 64-bit
 _STATISTICS_WRITING_DATE_UTC: 2021-10-17 11:10:41
 _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
 encoder : Lavc59.51.101 aac
frame=115222 fps=216 q=28.0 00000000000000000000000004009000size= 1180416kB time=01:16:52.41 bitrate=2096.5kbits/s speed=8.65x