
Recherche avancée
Médias (3)
-
The Slip - Artworks
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Texte
-
Podcasting Legal guide
16 mai 2011, par
Mis à jour : Mai 2011
Langue : English
Type : Texte
-
Creativecommons informational flyer
16 mai 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
Autres articles (37)
-
Installation en mode ferme
4 février 2011, parLe mode ferme permet d’héberger plusieurs sites de type MediaSPIP en n’installant qu’une seule fois son noyau fonctionnel.
C’est la méthode que nous utilisons sur cette même plateforme.
L’utilisation en mode ferme nécessite de connaïtre un peu le mécanisme de SPIP contrairement à la version standalone qui ne nécessite pas réellement de connaissances spécifique puisque l’espace privé habituel de SPIP n’est plus utilisé.
Dans un premier temps, vous devez avoir installé les mêmes fichiers que l’installation (...) -
Pas question de marché, de cloud etc...
10 avril 2011Le vocabulaire utilisé sur ce site essaie d’éviter toute référence à la mode qui fleurit allègrement
sur le web 2.0 et dans les entreprises qui en vivent.
Vous êtes donc invité à bannir l’utilisation des termes "Brand", "Cloud", "Marché" etc...
Notre motivation est avant tout de créer un outil simple, accessible à pour tout le monde, favorisant
le partage de créations sur Internet et permettant aux auteurs de garder une autonomie optimale.
Aucun "contrat Gold ou Premium" n’est donc prévu, aucun (...) -
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 (3008)
-
2011 In Open Source Multimedia
5 janvier 2012, par Multimedia Mike — Open Source MultimediaSometimes I think that the pace of multimedia technology is slowing down. Obviously, I’m not paying close enough attention. I thought I would do a little 2011 year-end review of what happened in the world of open source multimedia, mainly for my own benefit. Let me know in the comments what I missed.
The Split
The biggest deal in open source multimedia was the matter of the project split. Where once stood one project (FFmpeg) there now stands two (also Libav). Where do things stand with the projects now ? Still very separate but similar. Both projects obsessively monitor each other’s git commits and prodigiously poach each other’s work, both projects being LGPL and all. Most features that land in one code base end up in the other. Thus, I refer to FFmpeg and Libav collectively as “the projects”.Some philosophical reasons for the split included project stagnation and development process friction. Curiously, these problems are fond memories now and the spirit of competition has pushed development forward at a blinding pace.
People inside the project have strong opinions about the split ; that’s understandable. People outside the project have strong opinions about the split ; that’s somewhat less understandable, but whatever. After 5 years of working for Adobe on the Flash Player (a.k.a. the most hated software in all existence if internet nerds are to be believed on the matter), I’m so over internet nerd drama.
For my part, I just try to maintain some appearance of neutrality since I manage some shared resources for the open source multimedia community (like the wiki and samples repo) and am trying to keep them from fracturing as well.
Apple and Open Source
It was big news that Apple magnanimously open sourced their lossless audio codec. That sets a great example and precedent.New Features
I mined the'git log'
of the projects in order to pick out some features that were added during 2011.First off, Apple’s ProRes video codec was reverse engineered and incorporated into the multimedia libraries. And for some weird reason, this is an item that made the rounds in the geek press. I’m not entirely sure why, but it may have something to do with inter-project conflict. Anyway, here is the decoder in action, playing a video of some wild swine, one of the few samples we have :
Other new video codecs included a reverse engineered Indeo 4 decoder. Gotta catch ‘em all ! That completes our collection of Indeo codecs. But that wasn’t enough– this year, we got a completely revised Indeo 3 decoder (the previous one, while functional, exhibited a lot of code artifacts betraying a direct ASM ->C translation). Oh, and many thanks to Kostya for this gem :
That’s the new Origin Xan decoder (best known for Wing Commander IV cinematics) in action, something I first started reverse engineering back in 2002. Thanks to Kostya for picking up my slack yet again.
Continuing with the codec section, there is a decoder for Adobe Flash Screen Video 2 — big congrats on this ! One of my jobs at Adobe was documenting this format to the outside world and I was afraid I could never quite make it clear enough to build a complete re-implementation. But the team came through.
Let’s see, there are decoders for VBLE video, Ut Video, Windows Media Image (WMVP/WMP2), Bink audio version ‘b’, H.264 4:2:2 intra frames, and MxPEG video. There is a DPX image encoder, a Cirrus Logic AccuPak video encoder, and a v410 codec.
How about some more game stuff ? The projects saw — at long last — an SMJPEG demuxer. This will finally allow usage and testing of the SMJPEG IMA ADPCM audio decoder I added about a decade ago. Funny story behind that– I was porting all of my decoders from xine which included the SMJPEG ADPCM. I just never quite got around to writing a corresponding demuxer. Thanks to Paul Mahol for taking care of that.
Here’s a DFA playback system for a 1995 DOS CD-ROM title called Chronomaster. No format is too obscure, nor its encoded contents too cheesy :
There’s now a demuxer for a format called XMV that was (is ?) prevalent on Xbox titles. Now the projects can handle FMV files from many Xbox games, such as Thrillville.
The projects also gained the ability to play BMV files. I think this surfing wizard comes from Discworld II. It’s non-computer-generated animation at a strange resolution.
More demuxers : xWMA, PlayStation Portable PMP format, and CRI ADX format ; muxer for OpenMG audio and LATM muxer/demuxer.
One more thing : an AVX-optimized fast Fourier transform (FFT). If you have a machine that supports AVX, there’s no way you’ll even notice the speed increase of a few measly FFT calls for audio coding/decoding, but that’s hardly the point. The projects always use everything on offer for any CPU.
Please make me aware of features that I missed in the list !
Continuous Testing
As a result of the split, each project has its own FATE server, one for FFmpeg and one for Libav. As of the new year, FFmpeg has just over 1000 tests while Libav had 965. This is one area where I’m obviously ecstatic to see competition. Some ad-hoc measurements on my part indicate that the total code coverage via the FATEs has not appreciably increased. But that’s a total percentage. Both the test count and the code count have been steadily rising.Google Summer of Code and Google Code-In
Once again, the projects were allowed to participate in the Google Summer of Code as well as Google Code-In. I confess that I didn’t keep up with these too carefully (and Code-In is still in progress as of this writing). I do know that the project split occurred after FFmpeg had already been accepted for GSoC season 2011 and the admins were gracious enough to allow FFmpeg and Libav to allow both projects to participate in the same slot as long as they could both be mature about it.Happy New Year
Let’s see what we can accomplish in 2012. -
Developing MobyCAIRO
26 mai 2021, par Multimedia Mike — GeneralI recently published a tool called MobyCAIRO. The ‘CAIRO’ part stands for Computer-Assisted Image ROtation, while the ‘Moby’ prefix refers to its role in helping process artifact image scans to submit to the MobyGames database. The tool is meant to provide an accelerated workflow for rotating and cropping image scans. It works on both Windows and Linux. Hopefully, it can solve similar workflow problems for other people.
As of this writing, MobyCAIRO has not been tested on Mac OS X yet– I expect some issues there that should be easily solvable if someone cares to test it.
The rest of this post describes my motivations and how I arrived at the solution.
Background
I have scanned well in excess of 2100 images for MobyGames and other purposes in the past 16 years or so. The workflow looks like this :
Image workflow
It should be noted that my original workflow featured me manually rotating the artifact on the scanner bed in order to ensure straightness, because I guess I thought that rotate functions in image editing programs constituted dark, unholy magic or something. So my workflow used to be even more arduous :
I can’t believe I had the patience to do this for hundreds of scans
Sometime last year, I was sitting down to perform some more scanning and found myself dreading the oncoming tedium of straightening and cropping the images. This prompted a pivotal question :
Why can’t a computer do this for me ?
After all, I have always been a huge proponent of making computers handle the most tedious, repetitive, mind-numbing, and error-prone tasks. So I did some web searching to find if there were any solutions that dealt with this. I also consulted with some like-minded folks who have to cope with the same tedious workflow.
I came up empty-handed. So I endeavored to develop my own solution.
Problem Statement and Prior Work
I want to develop a workflow that can automatically rotate an image so that it is straight, and also find the most likely crop rectangle, uniformly whitening the area outside of the crop area (in the case of circles).As mentioned, I checked to see if any other programs can handle this, starting with my usual workhorse, Photoshop Elements. But I can’t expect the trimmed down version to do everything. I tried to find out if its big brother could handle the task, but couldn’t find a definitive answer on that. Nor could I find any other tools that seem to take an interest in optimizing this particular workflow.
When I brought this up to some peers, I received some suggestions, including an idea that the venerable GIMP had a feature like this, but I could not find any evidence. Further, I would get responses of “Program XYZ can do image rotation and cropping.” I had to tamp down on the snark to avoid saying “Wow ! An image editor that can perform rotation AND cropping ? What a game-changer !” Rotation and cropping features are table stakes for any halfway competent image editor for the last 25 or so years at least. I am hoping to find or create a program which can lend a bit of programmatic assistance to the task.
Why can’t other programs handle this ? The answer seems fairly obvious : Image editing tools are general tools and I want a highly customized workflow. It’s not reasonable to expect a turnkey solution to do this.
Brainstorming An Approach
I started with the happiest of happy cases— A disc that needed archiving (a marketing/press assets CD-ROM from a video game company, contents described here) which appeared to have some pretty clear straight lines :
My idea was to try to find straight lines in the image and then rotate the image so that the image is parallel to the horizontal based on the longest single straight line detected.
I just needed to figure out how to find a straight line inside of an image. Fortunately, I quickly learned that this is very much a solved problem thanks to something called the Hough transform. As a bonus, I read that this is also the tool I would want to use for finding circles, when I got to that part. The nice thing about knowing the formal algorithm to use is being able to find efficient, optimized libraries which already implement it.
Early Prototype
A little searching for how to perform a Hough transform in Python led me first to scikit. I was able to rapidly produce a prototype that did some basic image processing. However, running the Hough transform directly on the image and rotating according to the longest line segment discovered turned out not to yield expected results.
It also took a very long time to chew on the 3300×3300 raw image– certainly longer than I care to wait for an accelerated workflow concept. The key, however, is that you are apparently not supposed to run the Hough transform on a raw image– you need to compute the edges first, and then attempt to determine which edges are ‘straight’. The recommended algorithm for this step is the Canny edge detector. After applying this, I get the expected rotation :
The algorithm also completes in a few seconds. So this is a good early result and I was feeling pretty confident. But, again– happiest of happy cases. I should also mention at this point that I had originally envisioned a tool that I would simply run against a scanned image and it would automatically/magically make the image straight, followed by a perfect crop.
Along came my MobyGames comrade Foxhack to disabuse me of the hope of ever developing a fully automated tool. Just try and find a usefully long straight line in this :
Darn it, Foxhack…
There are straight edges, to be sure. But my initial brainstorm of rotating according to the longest straight edge looks infeasible. Further, it’s at this point that we start brainstorming that perhaps we could match on ratings badges such as the standard ESRB badges omnipresent on U.S. video games. This gets into feature detection and complicates things.
This Needs To Be Interactive
At this point in the effort, I came to terms with the fact that the solution will need to have some element of interactivity. I will also need to get out of my safe Linux haven and figure out how to develop this on a Windows desktop, something I am not experienced with.I initially dreamed up an impressive beast of a program written in C++ that leverages Windows desktop GUI frameworks, OpenGL for display and real-time rotation, GPU acceleration for image analysis and processing tricks, and some novel input concepts. I thought GPU acceleration would be crucial since I have a fairly good GPU on my main Windows desktop and I hear that these things are pretty good at image processing.
I created a list of prototyping tasks on a Trello board and made a decent amount of headway on prototyping all the various pieces that I would need to tie together in order to make this a reality. But it was ultimately slowgoing when you can only grab an hour or 2 here and there to try to get anything done.
Settling On A Solution
Recently, I was determined to get a set of old shareware discs archived. I ripped the data a year ago but I was blocked on the scanning task because I knew that would also involve tedious straightening and cropping. So I finally got all the scans done, which was reasonably quick. But I was determined to not manually post-process them.This was fairly recent, but I can’t quite recall how I managed to come across the OpenCV library and its Python bindings. OpenCV is an amazing library that provides a significant toolbox for performing image processing tasks. Not only that, it provides “just enough” UI primitives to be able to quickly create a basic GUI for your program, including image display via multiple windows, buttons, and keyboard/mouse input. Furthermore, OpenCV seems to be plenty fast enough to do everything I need in real time, just with (accelerated where appropriate) CPU processing.
So I went to work porting the ideas from the simple standalone Python/scikit tool. I thought of a refinement to the straight line detector– instead of just finding the longest straight edge, it creates a histogram of 360 rotation angles, and builds a list of lines corresponding to each angle. Then it sorts the angles by cumulative line length and allows the user to iterate through this list, which will hopefully provide the most likely straightened angle up front. Further, the tool allows making fine adjustments by 1/10 of an angle via the keyboard, not the mouse. It does all this while highlighting in red the straight line segments that are parallel to the horizontal axis, per the current candidate angle.
The tool draws a light-colored grid over the frame to aid the user in visually verifying the straightness of the image. Further, the program has a mode that allows the user to see the algorithm’s detected edges :
For the cropping phase, the program uses the Hough circle transform in a similar manner, finding the most likely circles (if the image to be processed is supposed to be a circle) and allowing the user to cycle among them while making precise adjustments via the keyboard, again, rather than the mouse.
Running the Hough circle transform is a significantly more intensive operation than the line transform. When I ran it on a full 3300×3300 image, it ran for a long time. I didn’t let it run longer than a minute before forcibly ending the program. Is this approach unworkable ? Not quite– It turns out that the transform is just as effective when shrinking the image to 400×400, and completes in under 2 seconds on my Core i5 CPU.
For rectangular cropping, I just settled on using OpenCV’s built-in region-of-interest (ROI) facility. I tried to intelligently find the best candidate rectangle and allow fine adjustments via the keyboard, but I wasn’t having much success, so I took a path of lesser resistance.
Packaging and Residual Weirdness
I realized that this tool would be more useful to a broader Windows-using base of digital preservationists if they didn’t have to install Python, establish a virtual environment, and install the prerequisite dependencies. Thus, I made the effort to figure out how to wrap the entire thing up into a monolithic Windows EXE binary. It is available from the project’s Github release page (another thing I figured out for the sake of this project !).The binary is pretty heavy, weighing in at a bit over 50 megabytes. You might advise using compression– it IS compressed ! Before I figured out the
--onefile
command for pyinstaller.exe, the generated dist/ subdirectory was 150 MB. Among other things, there’s a 30 MB FORTRAN BLAS library packaged in !Conclusion and Future Directions
Once I got it all working with a simple tkinter UI up front in order to select between circle and rectangle crop modes, I unleashed the tool on 60 or so scans in bulk, using the Windows forfiles command (another learning experience). I didn’t put a clock on the effort, but it felt faster. Of course, I was livid with proudness the whole time because I was using my own tool. I just wish I had thought of it sooner. But, really, with 2100+ scans under my belt, I’m just getting started– I literally have thousands more artifacts to scan for preservation.The tool isn’t perfect, of course. Just tonight, I threw another scan at MobyCAIRO. Just go ahead and try to find straight lines in this specimen :
I eventually had to use the text left and right of center to line up against the grid with the manual keyboard adjustments. Still, I’m impressed by how these computer vision algorithms can see patterns I can’t, highlighting lines I never would have guessed at.
I’m eager to play with OpenCV some more, particularly the video processing functions, perhaps even some GPU-accelerated versions.
The post Developing MobyCAIRO first appeared on Breaking Eggs And Making Omelettes.
-
extract subtitle from video ffmpeg. subs.srt : Invalid argument
3 juillet 2019, par evgeni fotialet filename_ext = file.path.split('/').pop()
let filename = filename_ext.split('.').slice(0, filename_ext.split('.').length-1).join('.')
var result = ffmpeg({
MEMFS: [{name: filename_ext, data: buffer}],
arguments: ["-i", filename_ext, "-map", "0:s:0", "subs.srt"],
// Ignore stdin read requests
stdin: function() {},
});
// Write out.webm to disk.
var out = result.MEMFS[0];
fs.outputFile(pathname + '/' + out.name, Buffer(out.data), 'binary');I get the following
ffmpeg version n3.1.2 Copyright (c) 2000-2016 the FFmpeg developers
built with emcc (Emscripten gcc/clang-like replacement) 1.36.7 ()
configuration: --cc=emcc --enable-cross-compile --target-os=none --arch=x86 --disable-runtime-cpudetect --disable-asm --disable-fast-unaligned --disable-pthreads --disable-w32threads --disable-os2threads --disable-debug --disable-stripping --disable-all --enable-ffmpeg --enable-avcodec --enable-avformat --enable-avutil --enable-swresample --enable-swscale --enable-avfilter --disable-network --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --enable-decoder=vp8 --enable-decoder=vp9 --enable-decoder=theora --enable-decoder=mpeg2video --enable-decoder=mpeg4 --enable-decoder=h264 --enable-decoder=hevc --enable-decoder=png --enable-decoder=mjpeg --enable-decoder=vorbis --enable-decoder=opus --enable-decoder=mp3 --enable-decoder=ac3 --enable-decoder=aac --enable-decoder=ass --enable-decoder=ssa --enable-decoder=srt --enable-decoder=webvtt --enable-demuxer=matroska --enable-demuxer=ogg --enable-demuxer=avi --enable-demuxer=mov --enable-demuxer=flv --enable-demuxer=mpegps --enable-demuxer=image2 --enable-demuxer=mp3 --enable-demuxer=concat --enable-protocol=file --enable-filter=aresample --enable-filter=scale --enable-filter=crop --enable-filter=overlay --disable-bzlib --disable-iconv --disable-libxcb --disable-lzma --disable-sdl --disable-securetransport --disable-xlib --disable-zlib --enable-encoder=libvpx_vp8 --enable-encoder=libopus --enable-encoder=mjpeg --enable-muxer=webm --enable-muxer=ogg --enable-muxer=null --enable-muxer=image2 --enable-filter=subtitles --enable-libass --enable-libopus --enable-libvpx --extra-cflags=-I../libvpx/dist/include --extra-ldflags=-L../libvpx/dist/lib
libavutil 55. 28.100 / 55. 28.100
libavcodec 57. 48.101 / 57. 48.101
libavformat 57. 41.100 / 57. 41.100
libavfilter 6. 47.100 / 6. 47.100
libswscale 4. 1.100 / 4. 1.100
libswresample 2. 1.100 / 2. 1.100
[h264 @ 0x7d7510] Warning: not compiled with thread support, using thread emulation
[aac @ 0x7d81c0] Warning: not compiled with thread support, using thread emulation
[ssa @ 0x7d8e30] Warning: not compiled with thread support, using thread emulation
Input #0, matroska,webm, from 'censored filename.mkv':
Metadata:
encoder : no_variable_data
creation_time : 1970-01-01 00:00:00
Duration: 00:23:40.13, start: 0.000000, bitrate: 2789 kb/s
Stream #0:0: Video: h264 (High), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc (default)
Metadata:
BPS : 2658044
BPS-eng : 2658044
DURATION : 00:23:40.045000000
DURATION-eng : 00:23:40.045000000
NUMBER_OF_FRAMES: 34047
NUMBER_OF_FRAMES-eng: 34047
NUMBER_OF_BYTES : 471817808
NUMBER_OF_BYTES-eng: 471817808
_STATISTICS_WRITING_APP: no_variable_data
_STATISTICS_WRITING_APP-eng: no_variable_data
_STATISTICS_WRITING_DATE_UTC: 1970-01-01 00:00:00
_STATISTICS_WRITING_DATE_UTC-eng: 1970-01-01 00:00:00
_STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream #0:1(jpn): Audio: aac (LC), 44100 Hz, stereo, fltp (default)
Metadata:
BPS : 128000
BPS-eng : 128000
DURATION : 00:23:40.109000000
DURATION-eng : 00:23:40.109000000
NUMBER_OF_FRAMES: 61159
NUMBER_OF_FRAMES-eng: 61159
NUMBER_OF_BYTES : 22721748
NUMBER_OF_BYTES-eng: 22721748
_STATISTICS_WRITING_APP: no_variable_data
_STATISTICS_WRITING_APP-eng: no_variable_data
_STATISTICS_WRITING_DATE_UTC: 1970-01-01 00:00:00
_STATISTICS_WRITING_DATE_UTC-eng: 1970-01-01 00:00:00
_STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream #0:2(eng): Subtitle: ass (default)
Metadata:
BPS : 110
BPS-eng : 110
DURATION : 00:23:25.280000000
DURATION-eng : 00:23:25.280000000
NUMBER_OF_FRAMES: 298
NUMBER_OF_FRAMES-eng: 298
NUMBER_OF_BYTES : 19407
NUMBER_OF_BYTES-eng: 19407
_STATISTICS_WRITING_APP: no_variable_data
_STATISTICS_WRITING_APP-eng: no_variable_data
_STATISTICS_WRITING_DATE_UTC: 1970-01-01 00:00:00
_STATISTICS_WRITING_DATE_UTC-eng: 1970-01-01 00:00:00
_STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream #0:3: Attachment: ttf
Metadata:
filename : OpenSans-Semibold.ttf
mimetype : application/x-truetype-font
[NULL @ 0x9eac90] Unable to find a suitable output format for 'subs.srt'
subs.srt: Invalid argumentthe file is a mkv video file
Other info
Codecs:
D..... = Decoding supported
.E.... = Encoding supported
..V... = Video codec
..A... = Audio codec
..S... = Subtitle codec
...I.. = Intra frame-only codec
....L. = Lossy compression
.....S = Lossless compression
-------
..VI.. 012v Uncompressed 4:2:2 10-bit
..V.L. 4xm 4X Movie
..VI.S 8bps QuickTime 8BPS video
..VIL. a64_multi Multicolor charset for Commodore 64
..VIL. a64_multi5 Multicolor charset for Commodore 64, extended with 5th color (colram)
..V..S aasc Autodesk RLE
..VIL. aic Apple Intermediate Codec
..VI.S alias_pix Alias/Wavefront PIX image
..VIL. amv AMV Video
..V.L. anm Deluxe Paint Animation
..V.L. ansi ASCII/ANSI art
..V..S apng APNG (Animated Portable Network Graphics) image
..VIL. asv1 ASUS V1
..VIL. asv2 ASUS V2
..VIL. aura Auravision AURA
..VIL. aura2 Auravision Aura 2
..V... avrn Avid AVI Codec
..VI.. avrp Avid 1:1 10-bit RGB Packer
..V.L. avs AVS (Audio Video Standard) video
..VI.. avui Avid Meridien Uncompressed
..VI.. ayuv Uncompressed packed MS 4:4:4:4
..V.L. bethsoftvid Bethesda VID video
..V.L. bfi Brute Force & Ignorance
..V.L. binkvideo Bink video
..VI.. bintext Binary text
..VI.S bmp BMP (Windows and OS/2 bitmap)
..V..S bmv_video Discworld II BMV video
..VI.S brender_pix BRender PIX image
..V.L. c93 Interplay C93
..V.L. cavs Chinese AVS (Audio Video Standard) (AVS1-P2, JiZhun profile)
..V.L. cdgraphics CD Graphics video
..VIL. cdxl Commodore CDXL video
..V.L. cfhd Cineform HD
..V.L. cinepak Cinepak
..VIL. cljr Cirrus Logic AccuPak
..VI.S cllc Canopus Lossless Codec
..V.L. cmv Electronic Arts CMV video
..V... cpia CPiA video format
..V..S cscd CamStudio
..VIL. cyuv Creative YUV (CYUV)
..V.LS daala Daala
..VILS dds DirectDraw Surface image decoder
..V.L. dfa Chronomaster DFA
..V.LS dirac Dirac
..VIL. dnxhd VC3/DNxHD
..VI.S dpx DPX (Digital Picture Exchange) image
..V.L. dsicinvideo Delphine Software International CIN video
..VIL. dvvideo DV (Digital Video)
..V..S dxa Feeble Files/ScummVM DXA
..VI.S dxtory Dxtory
..VIL. dxv Resolume DXV
..V.L. escape124 Escape 124
..V.L. escape130 Escape 130
..VILS exr OpenEXR image
..V..S ffv1 FFmpeg video codec #1
..VI.S ffvhuff Huffyuv FFmpeg variant
..V.L. fic Mirillis FIC
..V..S flashsv Flash Screen Video v1
..V.L. flashsv2 Flash Screen Video v2
..V..S flic Autodesk Animator Flic video
..V.L. flv1 FLV / Sorenson Spark / Sorenson H.263 (Flash Video)
..V..S fraps Fraps
..VI.S frwu Forward Uncompressed
..V.L. g2m Go2Meeting
..V..S gif GIF (Graphics Interchange Format)
..V.L. h261 H.261
D.V.L. h263 H.263 / H.263-1996, H.263+ / H.263-1998 / H.263 version 2
..V.L. h263i Intel H.263
..V.L. h263p H.263+ / H.263-1998 / H.263 version 2
D.V.LS h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
..VIL. hap Vidvox Hap decoder
D.V.L. hevc H.265 / HEVC (High Efficiency Video Coding)
..V.L. hnm4video HNM 4 video
..VIL. hq_hqa Canopus HQ/HQA
..VIL. hqx Canopus HQX
..VI.S huffyuv HuffYUV
..V.L. idcin id Quake II CIN video
..VI.. idf iCEDraw text
..V.L. iff_ilbm IFF ACBM/ANIM/DEEP/ILBM/PBM/RGB8/RGBN
..V.L. indeo2 Intel Indeo 2
..V.L. indeo3 Intel Indeo 3
..V.L. indeo4 Intel Indeo Video Interactive 4
..V.L. indeo5 Intel Indeo Video Interactive 5
..V.L. interplayvideo Interplay MVE video
..VILS jpeg2000 JPEG 2000
..VILS jpegls JPEG-LS
..VIL. jv Bitmap Brothers JV video
..V.L. kgv1 Kega Game Video
..V.L. kmvc Karl Morton's video codec
..VI.S lagarith Lagarith lossless
..VI.S ljpeg Lossless JPEG
..VI.S loco LOCO
..VI.S m101 Matrox Uncompressed SD
..V.L. mad Electronic Arts Madcow Video
..VI.S magicyuv MagicYUV Lossless Video
..VIL. mdec Sony PlayStation MDEC (Motion DECoder)
..V.L. mimic Mimic
DEVIL. mjpeg Motion JPEG
..VIL. mjpegb Apple MJPEG-B
..V.L. mmvideo American Laser Games MM Video
..V.L. motionpixels Motion Pixels video
..V.L. mpeg1video MPEG-1 video
D.V.L. mpeg2video MPEG-2 video
D.V.L. mpeg4 MPEG-4 part 2
..V.L. mpegvideo_xvmc MPEG-1/2 video XvMC (X-Video Motion Compensation)
..V.L. msa1 MS ATC Screen
..V.L. msmpeg4v1 MPEG-4 part 2 Microsoft variant version 1
..V.L. msmpeg4v2 MPEG-4 part 2 Microsoft variant version 2
..V.L. msmpeg4v3 MPEG-4 part 2 Microsoft variant version 3
..V..S msrle Microsoft RLE
..V.L. mss1 MS Screen 1
..VIL. mss2 MS Windows Media Video V9 Screen
..V.L. msvideo1 Microsoft Video 1
..VI.S mszh LCL (LossLess Codec Library) MSZH
..V.L. mts2 MS Expression Encoder Screen
..VIL. mvc1 Silicon Graphics Motion Video Compressor 1
..VIL. mvc2 Silicon Graphics Motion Video Compressor 2
..V.L. mxpeg Mobotix MxPEG video
..V.L. nuv NuppelVideo/RTJPEG
..V.L. paf_video Amazing Studio Packed Animation File Video
..VI.S pam PAM (Portable AnyMap) image
..VI.S pbm PBM (Portable BitMap) image
..VI.S pcx PC Paintbrush PCX image
..VI.S pgm PGM (Portable GrayMap) image
..VI.S pgmyuv PGMYUV (Portable GrayMap YUV) image
..VIL. pictor Pictor/PC Paint
..V..S png PNG (Portable Network Graphics) image
..VI.S ppm PPM (Portable PixelMap) image
..VIL. prores Apple ProRes (iCodec Pro)
..VIL. ptx V.Flash PTX image
..VI.S qdraw Apple QuickDraw
..V.L. qpeg Q-team QPEG
..V..S qtrle QuickTime Animation (RLE) video
..VI.S r10k AJA Kona 10-bit RGB Codec
..VI.S r210 Uncompressed RGB 10-bit
..VI.S rawvideo raw video
..VIL. rl2 RL2 video
..V.L. roq id RoQ video
..V.L. rpza QuickTime video (RPZA)
..V..S rscc innoHeim/Rsupport Screen Capture Codec
..V.L. rv10 RealVideo 1.0
..V.L. rv20 RealVideo 2.0
..V.L. rv30 RealVideo 3.0
..V.L. rv40 RealVideo 4.0
..V.L. sanm LucasArts SANM/SMUSH video
..V..S screenpresso Screenpresso
..VI.S sgi SGI image
..VI.S sgirle SGI RLE 8-bit
..VI.S sheervideo BitJazz SheerVideo
..V.L. smackvideo Smacker video
..V.L. smc QuickTime Graphics (SMC)
..V... smvjpeg Sigmatel Motion Video
..V.LS snow Snow
..VIL. sp5x Sunplus JPEG (SP5X)
..VI.S sunrast Sun Rasterfile image
..V.L. svq1 Sorenson Vector Quantizer 1 / Sorenson Video 1 / SVQ1
..V.L. svq3 Sorenson Vector Quantizer 3 / Sorenson Video 3 / SVQ3
..VI.S targa Truevision Targa image
..VI.. targa_y216 Pinnacle TARGA CineWave YUV16
..V.L. tdsc TDSC
..V.L. tgq Electronic Arts TGQ video
..V.L. tgv Electronic Arts TGV video
D.V.L. theora Theora
..VIL. thp Nintendo Gamecube THP video
..V.L. tiertexseqvideo Tiertex Limited SEQ video
..VI.S tiff TIFF image
..VIL. tmv 8088flex TMV
..V.L. tqi Electronic Arts TQI video
..V.L. truemotion1 Duck TrueMotion 1.0
..V.L. truemotion2 Duck TrueMotion 2.0
..V.L. truemotion2rt Duck TrueMotion 2.0 Real Time
..V..S tscc TechSmith Screen Capture Codec
..V.L. tscc2 TechSmith Screen Codec 2
..VIL. txd Renderware TXD (TeXture Dictionary) image
..V.L. ulti IBM UltiMotion
..VI.S utvideo Ut Video
..VI.S v210 Uncompressed 4:2:2 10-bit
..VI.S v210x Uncompressed 4:2:2 10-bit
..VI.. v308 Uncompressed packed 4:4:4
..VI.. v408 Uncompressed packed QT 4:4:4:4
..VI.S v410 Uncompressed 4:4:4 10-bit
..V.L. vb Beam Software VB
..VI.S vble VBLE Lossless Codec
..V.L. vc1 SMPTE VC-1
..V.L. vc1image Windows Media Video 9 Image v2
..VIL. vcr1 ATI VCR1
..VIL. vixl Miro VideoXL
..V.L. vmdvideo Sierra VMD video
..V..S vmnc VMware Screen Codec / VMware Video
D.V.L. vp3 On2 VP3
..V.L. vp5 On2 VP5
..V.L. vp6 On2 VP6
..V.L. vp6a On2 VP6 (Flash version, with alpha channel)
..V.L. vp6f On2 VP6 (Flash version)
..V.L. vp7 On2 VP7
DEV.L. vp8 On2 VP8 (encoders: libvpx )
D.V.L. vp9 Google VP9
..VILS webp WebP
..V.L. wmv1 Windows Media Video 7
..V.L. wmv2 Windows Media Video 8
..V.L. wmv3 Windows Media Video 9
..V.L. wmv3image Windows Media Video 9 Image
..VIL. wnv1 Winnov WNV1
..V..S wrapped_avframe AVFrame to AVPacket passthrough
..V.L. ws_vqa Westwood Studios VQA (Vector Quantized Animation) video
..V.L. xan_wc3 Wing Commander III / Xan
..V.L. xan_wc4 Wing Commander IV / Xxan
..VI.. xbin eXtended BINary text
..VI.S xbm XBM (X BitMap) image
..VIL. xface X-face image
..VI.S xwd XWD (X Window Dump) image
..VI.. y41p Uncompressed YUV 4:1:1 12-bit
..VI.S ylc YUY2 Lossless Codec
..V.L. yop Psygnosis YOP Video
..VI.. yuv4 Uncompressed packed 4:2:0
..V..S zerocodec ZeroCodec Lossless Video
..VI.S zlib LCL (LossLess Codec Library) ZLIB
..V..S zmbv Zip Motion Blocks Video
..A.L. 4gv 4GV (Fourth Generation Vocoder)
..A.L. 8svx_exp 8SVX exponential
..A.L. 8svx_fib 8SVX fibonacci
D.A.L. aac AAC (Advanced Audio Coding)
..A.L. aac_latm AAC LATM (Advanced Audio Coding LATM syntax)
D.A.L. ac3 ATSC A/52A (AC-3)
..A.L. adpcm_4xm ADPCM 4X Movie
..A.L. adpcm_adx SEGA CRI ADX ADPCM
..A.L. adpcm_afc ADPCM Nintendo Gamecube AFC
..A.L. adpcm_aica ADPCM Yamaha AICA
..A.L. adpcm_ct ADPCM Creative Technology
..A.L. adpcm_dtk ADPCM Nintendo Gamecube DTK
..A.L. adpcm_ea ADPCM Electronic Arts
..A.L. adpcm_ea_maxis_xa ADPCM Electronic Arts Maxis CDROM XA
..A.L. adpcm_ea_r1 ADPCM Electronic Arts R1
..A.L. adpcm_ea_r2 ADPCM Electronic Arts R2
..A.L. adpcm_ea_r3 ADPCM Electronic Arts R3
..A.L. adpcm_ea_xas ADPCM Electronic Arts XAS
..A.L. adpcm_g722 G.722 ADPCM
..A.L. adpcm_g726 G.726 ADPCM
..A.L. adpcm_g726le G.726 ADPCM little-endian
..A.L. adpcm_ima_amv ADPCM IMA AMV
..A.L. adpcm_ima_apc ADPCM IMA CRYO APC
..A.L. adpcm_ima_dat4 ADPCM IMA Eurocom DAT4
..A.L. adpcm_ima_dk3 ADPCM IMA Duck DK3
..A.L. adpcm_ima_dk4 ADPCM IMA Duck DK4
..A.L. adpcm_ima_ea_eacs ADPCM IMA Electronic Arts EACS
..A.L. adpcm_ima_ea_sead ADPCM IMA Electronic Arts SEAD
..A.L. adpcm_ima_iss ADPCM IMA Funcom ISS
..A.L. adpcm_ima_oki ADPCM IMA Dialogic OKI
..A.L. adpcm_ima_qt ADPCM IMA QuickTime
..A.L. adpcm_ima_rad ADPCM IMA Radical
..A.L. adpcm_ima_smjpeg ADPCM IMA Loki SDL MJPEG
..A.L. adpcm_ima_wav ADPCM IMA WAV
..A.L. adpcm_ima_ws ADPCM IMA Westwood
..A.L. adpcm_ms ADPCM Microsoft
..A.L. adpcm_mtaf ADPCM MTAF
..A.L. adpcm_psx ADPCM Playstation
..A.L. adpcm_sbpro_2 ADPCM Sound Blaster Pro 2-bit
..A.L. adpcm_sbpro_3 ADPCM Sound Blaster Pro 2.6-bit
..A.L. adpcm_sbpro_4 ADPCM Sound Blaster Pro 4-bit
..A.L. adpcm_swf ADPCM Shockwave Flash
..A.L. adpcm_thp ADPCM Nintendo THP
..A.L. adpcm_thp_le ADPCM Nintendo THP (Little-Endian)
..A.L. adpcm_vima LucasArts VIMA audio
..A.L. adpcm_xa ADPCM CDROM XA
..A.L. adpcm_yamaha ADPCM Yamaha
..A..S alac ALAC (Apple Lossless Audio Codec)
..A.L. amr_nb AMR-NB (Adaptive Multi-Rate NarrowBand)
..A.L. amr_wb AMR-WB (Adaptive Multi-Rate WideBand)
..A..S ape Monkey's Audio
..A.L. atrac1 ATRAC1 (Adaptive TRansform Acoustic Coding)
..A.L. atrac3 ATRAC3 (Adaptive TRansform Acoustic Coding 3)
..A.L. atrac3p ATRAC3+ (Adaptive TRansform Acoustic Coding 3+)
..A.L. avc On2 Audio for Video Codec
..A.L. binkaudio_dct Bink Audio (DCT)
..A.L. binkaudio_rdft Bink Audio (RDFT)
..A.L. bmv_audio Discworld II BMV audio
..A.L. celt Constrained Energy Lapped Transform (CELT)
..A.L. comfortnoise RFC 3389 Comfort Noise
..A.L. cook Cook / Cooker / Gecko (RealAudio G2)
..A.L. dsd_lsbf DSD (Direct Stream Digital), least significant bit first
..A.L. dsd_lsbf_planar DSD (Direct Stream Digital), least significant bit first, planar
..A.L. dsd_msbf DSD (Direct Stream Digital), most significant bit first
..A.L. dsd_msbf_planar DSD (Direct Stream Digital), most significant bit first, planar
..A.L. dsicinaudio Delphine Software International CIN audio
..A.L. dss_sp Digital Speech Standard - Standard Play mode (DSS SP)
..A..S dst DST (Direct Stream Transfer)
..A.LS dts DCA (DTS Coherent Acoustics)
..A.L. dvaudio DV audio
..A.L. eac3 ATSC A/52B (AC-3, E-AC-3)
..A.L. evrc EVRC (Enhanced Variable Rate Codec)
..A..S flac FLAC (Free Lossless Audio Codec)
..A.L. g723_1 G.723.1
..A.L. g729 G.729
..A.L. gsm GSM
..A.L. gsm_ms GSM Microsoft variant
..A.L. iac IAC (Indeo Audio Coder)
..A.L. ilbc iLBC (Internet Low Bitrate Codec)
..A.L. imc IMC (Intel Music Coder)
..A.L. interplay_dpcm DPCM Interplay
..A.L. interplayacm Interplay ACM
..A.L. mace3 MACE (Macintosh Audio Compression/Expansion) 3:1
..A.L. mace6 MACE (Macintosh Audio Compression/Expansion) 6:1
..A.L. metasound Voxware MetaSound
..A..S mlp MLP (Meridian Lossless Packing)
..A.L. mp1 MP1 (MPEG audio layer 1)
..A.L. mp2 MP2 (MPEG audio layer 2)
D.A.L. mp3 MP3 (MPEG audio layer 3)
..A.L. mp3adu ADU (Application Data Unit) MP3 (MPEG audio layer 3)
..A.L. mp3on4 MP3onMP4
..A..S mp4als MPEG-4 Audio Lossless Coding (ALS)
..A.L. musepack7 Musepack SV7
..A.L. musepack8 Musepack SV8
..A.L. nellymoser Nellymoser Asao
DEA.L. opus Opus (Opus Interactive Audio Codec) (encoders: libopus )
..A.L. paf_audio Amazing Studio Packed Animation File Audio
..A.L. pcm_alaw PCM A-law / G.711 A-law
..A..S pcm_bluray PCM signed 16|20|24-bit big-endian for Blu-ray media
..A..S pcm_dvd PCM signed 20|24-bit big-endian
..A..S pcm_f32be PCM 32-bit floating point big-endian
..A..S pcm_f32le PCM 32-bit floating point little-endian
..A..S pcm_f64be PCM 64-bit floating point big-endian
..A..S pcm_f64le PCM 64-bit floating point little-endian
..A..S pcm_lxf PCM signed 20-bit little-endian planar
..A.L. pcm_mulaw PCM mu-law / G.711 mu-law
..A..S pcm_s16be PCM signed 16-bit big-endian
..A..S pcm_s16be_planar PCM signed 16-bit big-endian planar
..A..S pcm_s16le PCM signed 16-bit little-endian
..A..S pcm_s16le_planar PCM signed 16-bit little-endian planar
..A..S pcm_s24be PCM signed 24-bit big-endian
..A..S pcm_s24daud PCM D-Cinema audio signed 24-bit
..A..S pcm_s24le PCM signed 24-bit little-endian
..A..S pcm_s24le_planar PCM signed 24-bit little-endian planar
..A..S pcm_s32be PCM signed 32-bit big-endian
..A..S pcm_s32le PCM signed 32-bit little-endian
..A..S pcm_s32le_planar PCM signed 32-bit little-endian planar
..A..S pcm_s8 PCM signed 8-bit
..A..S pcm_s8_planar PCM signed 8-bit planar
..A..S pcm_u16be PCM unsigned 16-bit big-endian
..A..S pcm_u16le PCM unsigned 16-bit little-endian
..A..S pcm_u24be PCM unsigned 24-bit big-endian
..A..S pcm_u24le PCM unsigned 24-bit little-endian
..A..S pcm_u32be PCM unsigned 32-bit big-endian
..A..S pcm_u32le PCM unsigned 32-bit little-endian
..A..S pcm_u8 PCM unsigned 8-bit
..A.L. pcm_zork PCM Zork
..A.L. qcelp QCELP / PureVoice
..A.L. qdm2 QDesign Music Codec 2
..A.L. qdmc QDesign Music
..A.L. ra_144 RealAudio 1.0 (14.4K)
..A.L. ra_288 RealAudio 2.0 (28.8K)
..A..S ralf RealAudio Lossless
..A.L. roq_dpcm DPCM id RoQ
..A..S s302m SMPTE 302M
..A.L. sdx2_dpcm DPCM Squareroot-Delta-Exact
..A..S shorten Shorten
..A.L. sipr RealAudio SIPR / ACELP.NET
..A.L. smackaudio Smacker audio
..A.L. smv SMV (Selectable Mode Vocoder)
..A.L. sol_dpcm DPCM Sol
..A... sonic Sonic
..A... sonicls Sonic lossless
..A.L. speex Speex
..A..S tak TAK (Tom's lossless Audio Kompressor)
..A..S truehd TrueHD
..A.L. truespeech DSP Group TrueSpeech
..A..S tta TTA (True Audio)
..A.L. twinvq VQF TwinVQ
..A.L. vmdaudio Sierra VMD audio
D.A.L. vorbis Vorbis
..A.L. voxware Voxware RT29 Metasound
..A... wavesynth Wave synthesis pseudo-codec
..A.LS wavpack WavPack
..A.L. westwood_snd1 Westwood Audio (SND1)
..A..S wmalossless Windows Media Audio Lossless
..A.L. wmapro Windows Media Audio 9 Professional
..A.L. wmav1 Windows Media Audio 1
..A.L. wmav2 Windows Media Audio 2
..A.L. wmavoice Windows Media Audio Voice
..A.L. xan_dpcm DPCM Xan
..A.L. xma1 Xbox Media Audio 1
..A.L. xma2 Xbox Media Audio 2
..D... bin_data binary data
..D... dvd_nav_packet DVD Nav packet
..D... klv SMPTE 336M Key-Length-Value (KLV) metadata
..D... otf OpenType font
..D... timed_id3 timed ID3 metadata
..D... ttf TrueType font
D.S... ass ASS (Advanced SSA) subtitle (decoders: ssa ass )
..S... dvb_subtitle DVB subtitles
..S... dvb_teletext DVB teletext
..S... dvd_subtitle DVD subtitles
..S... eia_608 EIA-608 closed captions
..S... hdmv_pgs_subtitle HDMV Presentation Graphic Stream subtitles
..S... hdmv_text_subtitle HDMV Text subtitle
..S... jacosub JACOsub subtitle
..S... microdvd MicroDVD subtitle
..S... mov_text MOV text
..S... mpl2 MPL2 subtitle
..S... pjs PJS (Phoenix Japanimation Society) subtitle
..S... realtext RealText subtitle
..S... sami SAMI subtitle
..S... srt SubRip subtitle with embedded timing
..S... ssa SSA (SubStation Alpha) subtitle
..S... stl Spruce subtitle format
D.S... subrip SubRip subtitle (decoders: srt )
..S... subviewer SubViewer subtitle
..S... subviewer1 SubViewer v1 subtitle
..S... text raw UTF-8 text
..S... vplayer VPlayer subtitle
D.S... webvtt WebVTT subtitle
..S... xsub XSUB