Recherche avancée

Médias (1)

Mot : - Tags -/copyleft

Autres articles (68)

  • Amélioration de la version de base

    13 septembre 2013

    Jolie 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 (...)

  • Mise à jour de la version 0.1 vers 0.2

    24 juin 2013, par

    Explications des différents changements notables lors du passage de la version 0.1 de MediaSPIP à la version 0.3. Quelles sont les nouveautés
    Au niveau des dépendances logicielles Utilisation des dernières versions de FFMpeg (>= v1.2.1) ; Installation des dépendances pour Smush ; Installation de MediaInfo et FFprobe pour la récupération des métadonnées ; On n’utilise plus ffmpeg2theora ; On n’installe plus flvtool2 au profit de flvtool++ ; On n’installe plus ffmpeg-php qui n’est plus maintenu au (...)

  • De l’upload à la vidéo finale [version standalone]

    31 janvier 2010, par

    Le chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.
    Upload et récupération d’informations de la vidéo source
    Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".
    Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées : La récupération des informations techniques des flux audio et video du fichier ; La génération d’une vignette : extraction d’une (...)

Sur d’autres sites (8540)

  • Ode to the Gravis Ultrasound

    1er août 2011, par Multimedia Mike — General

    WARNING : This post is a bunch of nostalgia. Feel free to follow along if you recall the DOS days of the early-mid 1990s.

    I finally let go of my Gravis Ultrasound MAX sound card a little while ago. It felt like the end of an era for me, even though I had scarcely used the card in recent memory.



    The Beginning
    What is the Gravis Ultrasound ? Only the finest PC sound card from the classic DOS days. Back in the day (very early 1990s), most consumer PC sound cards were Yamaha OPL FM synthesizers paired with a basic digital to analog converter (DAC). Gravis, a company known for game controllers, dared to break with the dominant paradigm of Sound Blaster clones and create a sound card that had 32 digital channels.

    I heard about the GUS sometime in 1992 through one of the dominant online services at the time, Prodigy. Through the message boards, I learned of a promotion with Electronic Arts in which customers could pre-order a GUS at a certain discount along with 2 EA games from a selected catalog (with progressive discounts when ordering more games from the list). I know I got the DOS version of PowerMonger ; I think the other was Night Shift, though that doesn’t seem to be an EA title.

    Anyway, 1992 saw many maddening delays of the GUS hardware. Finally, reports of GUS shipments began to trickle into the Prodigy message forums. Then one day in November, 1992, mine arrived. Into the 286 machine it went and a valiant attempt at software installation was made. A friend and I fought with the software late into the evening, trying to make this thing work reasonably. I remember grabbing a pair of old headphones sitting near the computer that were used for an ancient (even for the time) portable radio. That was the only means of sound reproduction we had available at that moment. And it still sounded incredible.

    After graduating to progressively superior headphones, I would later return to that original pair only to feel my ears were being physically assaulted. Strange, they sounded fine that first night I was trying to make the GUS work. I guess this was my first understanding that the degree to which one is a snobby audiophile is all a matter of hard-earned experience.

    Technology
    The GUS was powered by something called a GF1 which was supposed to use a technology called wavetable synthesis. In the early days, I thought (and I wasn’t alone in this) that this meant that the GF1 chip had a bunch of digitized instrument samples stored in the ASIC. That wasn’t it.

    However, it did feature 32 digital channels at a time when most PC audio cards had 2 (plus that Yamaha FM synthesizer). There was some hemming and hawing about how the original GUS couldn’t drive all 32 channels at a full 44.1 kHz ("CD quality") playback rate. It’s true— if 14 channels were enabled, all could be played at 44.1 kHz. Enabling more channels started progressive degradation and with all 32 channels, each was only playing at around 19 kHz. Still, from my emerging game programmer perspective, that allowed for 8-channel tracker music and 6 channels of sound effects, all at the vaunted CD level of quality.

    Games and Compatibility
    The primary reason to have a discrete sound card was for entertainment applications — ahem, games. GUS support was pretty sketchy out of the gate (ostensibly a major reason for the card’s delay). While many sound cards offered Sound Blaster emulation by basically having the same hardware as Sound Blaster cards, the GUS took a software route towards emulating the SB. To do this required a program called the Sound Blaster Operating System, or SBOS.

    Oh, how awesome it was to hear the program exclaim "SBOS installed !" And how harshly it grated on your nerves after the 200th time hearing it due to so many reboots and fiddling with options to make your games work. Also, I’ve always wondered if there’s something special about sampling an ’s’ sound — does it strain the sampling frequency range ? Perhaps the phrase was sampled at too low a bitrate because the ’s’ sounds didn’t come through very clearly, which is something you notice after hundreds of iterations when there are 3 ’s’ sounds in the phrase.

    Fortunately, SBOS became less relevant with the advent of Mega-Em, a separate emulator which intercepted calls to Roland MIDI systems and routed them to the very capable GUS. Roland-supporting games sounded beautiful.

    Eventually, more and more DOS games were released with native Gravis support, sometimes with the help of The Miles Sound System (from our friends at Rad Game Tools — you know, the people behind Smacker and Bink). The library changelog is quite the trip down PC memory lane.

    An important area where the GUS shined brightly was that of demos and music trackers. The emerging PC demo scene embraced the powerful GUS (aided, no doubt, by Gravis’ sponsorship of the community) and the coolest computer art and music of the time natively supported the card.

    Programming
    At this point in my life, I was a budding programmer in high school and was fairly intent on programming video games. So far, I had figured out how to make a few blips using a borrowed Sound Blaster card. I went to great lengths to learn how to program the Gravis Ultrasound.

    Oh you kids today, with your easy access to information at the tips of your fingers thanks to Google and the broader internet. I had to track down whatever information I could find through a combination of Prodigy message boards and local dialup BBSes and FidoNet message bases. Gravis was initially tight-lipped about programming information for its powerful card, as was de rigueur of hardware companies (something that largely persists to this day). But Gravis eventually saw an opportunity to one-up encumbent Creative Labs and released a full SDK for the Ultrasound. I wanted the SDK badly.

    So it was early-mid 1993. Gravis released an SDK. I heard that it was available on their support BBS. Their BBS with a long distance phone number. If memory serves, the SDK was only in the neighborhood of 1.5 Mbytes. That takes a long time to transfer via a 2400 baud modem at a time when long distance phone charges were still a thing and not insubstantial.

    Luckily, they also put the SDK on something called an ’FTP site’. Fortunately, about this time, I had the opportunity to get some internet access via the local university.

    Indeed, my entire motivation for initially wanting to get on the internet was to obtain special programming information. Is that nerdy enough for you ?

    I see that the GUS SDK is still available via the Gravis FTP site. The file GUSDK222.ZIP is dated 1998 and is less than a megabyte.

    Next Generation : CD Support
    So I had my original GUS by the end of 1992. That was just the first iteration of the Gravis Ultrasound. The next generation was the GUS MAX. When I was ready to get into the CD-ROM era, this was what I wanted in my computer. This is because the GUS MAX had CD-ROM support. This is odd to think about now when all optical drives have SATA interfaces and (P)ATA interfaces before that— what did CD-ROM compatibility mean back then ? I wasn’t quite sure. But in early 1995, I headed over to Computer City (R.I.P.) and bought a new GUS MAX and Sony double-speed CD-ROM drive to install in the family’s PC.



    About the "CD-ROM compatibility" : It seems that there were numerous competing interfaces in the early days of CD-ROM technology. The GUS MAX simply integrated 3 different CD-ROM controllers onto the audio card. This was superfluous to me since the Sony drive came with an appropriate controller card anyway, though I didn’t figure out that the extra controller card was unnecessary until after I installed it. No matter ; computers of the day were rife with expansion ports.



    The 3 different CD-ROM controllers on the GUS MAX

    Explaining The Difference
    It was difficult to explain the difference in quality to those who didn’t really care. Sometime during 1995, I picked up a quasi-promotional CD-ROM called "The Gravis Ultrasound Experience" from Babbage’s computer store (remember when that was a thing ?). As most PC software had been distributed on floppy discs up until this point, this CD-ROM was an embarrassment of riches. Tons of game demos, scene demos, tracker music, and all the latest GUS drivers and support software.

    Further, the CD-ROM had a number of red book CD audio tracks that illustrated the difference between Sound Blaster cards and the GUS. I remember loaning this to a tech-savvy coworker who disbelieved how awesome the GUS was. The coworker took it home, listened to it, and wholly agreed that the GUS audio sounded better than the SB audio in the comparison — and was thoroughly confused because she was hearing this audio emanating from her Sound Blaster. It was the difference between real-time and pre-rendered audio, I suppose, but I failed to convey that message. I imagine the same issue comes up even today regarding real-time video rendering vs., e.g., a pre-rendered HD cinematic posted on YouTube.

    Regrettably, I can’t find that CD-ROM anymore which leads me to believe that the coworker never gave it back. Too bad, because it was quite the treasure trove.

    Aftermath
    According to folklore I’ve heard, Gravis couldn’t keep up as the world changed to Windows and failed to deliver decent drivers. Indeed, I remember trying to keep my GUS in service under Windows 95 well into 1998 but eventually relented and installed some kind of more appropriate sound card that was better supported under Windows.

    Of course, audio output capability has been standard issue for any PC for at least 10 years and many people aren’t even aware that discrete sound cards still exist. Real-time audio rendering has become less essential as full musical tracks can be composed and compressed into PCM format and delivered with the near limitless space afforded by optical storage.

    A few years ago, it was easy to pick up old GUS cards on eBay for cheap. As of this writing, there are only a few and they’re pricy (but perhaps not selling). Maybe I was just viewing during the trough of no value a few years ago.

    Nowadays, of course, anyone interested in studying the old GUS or getting a nostalgia fix need only boot up the always-excellent DOSBox emulator which provides remarkable GUS emulation support.

  • H.264 and VP8 for still image coding : WebP ?

    1er octobre 2010, par Dark Shikari — H.264, VP8, google, psychovisual optimizations

    JPEG is a very old lossy image format. By today’s standards, it’s awful compression-wise : practically every video format since the days of MPEG-2 has been able to tie or beat JPEG at its own game. The reasons people haven’t switched to something more modern practically always boil down to a simple one — it’s just not worth the hassle. Even if JPEG can be beaten by a factor of 2, convincing the entire world to change image formats after 20 years is nigh impossible. Furthermore, JPEG is fast, simple, and practically guaranteed to be free of any intellectual property worries. It’s been tried before : JPEG-2000 first, then Microsoft’s JPEG XR, both tried to unseat JPEG. Neither got much of anywhere.

    Now Google is trying to dump yet another image format on us, “WebP”. But really, it’s just a VP8 intra frame. There are some obvious practical problems with this new image format in comparison to JPEG ; it doesn’t even support all of JPEG’s features, let alone many of the much-wanted features JPEG was missing (alpha channel support, lossless support). It only supports 4:2:0 chroma subsampling, while JPEG can handle 4:2:2 and 4:4:4. Google doesn’t seem interested in adding any of these features either.

    But let’s get to the meat and see how these encoders stack up on compressing still images. As I explained in my original analysis, VP8 has the advantage of H.264′s intra prediction, which is one of the primary reasons why H.264 has such an advantage in intra compression. It only has i4x4 and i16x16 modes, not i8x8, so it’s not quite as fancy as H.264′s, but it comes close.

    The test files are all around 155KB ; download them for the exact filesizes. For all three, I did a binary search of quality levels to get the file sizes close. For x264, I encoded with --tune stillimage --preset placebo. For libvpx, I encoded with --best. For JPEG, I encoded with ffmpeg, then applied jpgcrush, a lossless jpeg compressor. I suspect there are better JPEG encoders out there than ffmpeg ; if you have one, feel free to test it and post the results. The source image is the 200th frame of Parkjoy, from derf’s page (fun fact : this video was shot here ! More info on the video here.).

    Files : (x264 [154KB], vp8 [155KB], jpg [156KB])

    Results (decoded to PNG) : (x264, vp8, jpg)

    This seems rather embarrassing for libvpx. Personally I think VP8 looks by far the worst of the bunch, despite JPEG’s blocking. What’s going on here ? VP8 certainly has better entropy coding than JPEG does (by far !). It has better intra prediction (JPEG has just DC prediction). How could VP8 look worse ? Let’s investigate.

    VP8 uses a 4×4 transform, which tends to blur and lose more detail than JPEG’s 8×8 transform. But that alone certainly isn’t enough to create such a dramatic difference. Let’s investigate a hypothesis — that the problem is that libvpx is optimizing for PSNR and ignoring psychovisual considerations when encoding the image… I’ll encode with --tune psnr --preset placebo in x264, turning off all psy optimizations. 

    Files : (x264, optimized for PSNR [154KB]) [Note for the technical people : because adaptive quantization is off, to get the filesize on target I had to use a CQM here.]

    Results (decoded to PNG) : (x264, optimized for PSNR)

    What a blur ! Only somewhat better than VP8, and still worse than JPEG. And that’s using the same encoder and the same level of analysis — the only thing done differently is dropping the psy optimizations. Thus we come back to the conclusion I’ve made over and over on this blog — the encoder matters more than the video format, and good psy optimizations are more important than anything else for compression. libvpx, a much more powerful encoder than ffmpeg’s jpeg encoder, loses because it tries too hard to optimize for PSNR.

    These results raise an obvious question — is Google nuts ? I could understand the push for “WebP” if it was better than JPEG. And sure, technically as a file format it is, and an encoder could be made for it that’s better than JPEG. But note the word “could”. Why announce it now when libvpx is still such an awful encoder ? You’d have to be nuts to try to replace JPEG with this blurry mess as-is. Now, I don’t expect libvpx to be able to compete with x264, the best encoder in the world — but surely it should be able to beat an image format released in 1992 ?

    Earth to Google : make the encoder good first, then promote it as better than the alternatives. The reverse doesn’t work quite as well.

    [155KB]
  • extract subtitle from video ffmpeg. subs.srt : Invalid argument

    3 juillet 2019, par evgeni fotia
       let 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 argument

    the 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