summaryrefslogtreecommitdiff
path: root/libavcodec/raw.c
Commit message (Collapse)AuthorAge
* Remove unnecessary libavutil/(avutil|common|internal).h inclusionsAndreas Rheinhardt2022-02-24
| | | | | | | | | | Some of these were made possible by moving several common macros to libavutil/macros.h. While just at it, also improve the other headers a bit. Reviewed-by: Martin Storsjö <martin@martin.st> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/raw: Reduce number of avpriv symbolsAndreas Rheinhardt2022-01-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libavcodec currently exports four avpriv symbols that deal with PixelFormatTags: avpriv_get_raw_pix_fmt_tags, avpriv_find_pix_fmt, avpriv_pix_fmt_bps_avi and avpriv_pix_fmt_bps_mov. The latter two are lists of PixelFormatTags, the former returns such a list and the second searches a list for a pixel format that matches a given fourcc; only one of the aforementioned three lists is ever searched. Yet for avpriv_pix_fmt_bps_avi, avpriv_pix_fmt_bps_mov and avpriv_find_pix_fmt the overhead of exporting these functions actually exceeds the size of said objects (at least for ELF; the following numbers are for x64 Ubuntu 20.10): The code size of avpriv_find_pix_fmt is small (GCC 10.2 37B, Clang 11 41B), yet exporting it adds a 20B string for the name alone to the exporting as well as to each importing library; there is more: Four bytes in the exporting libraries .gnu.hash; two bytes each for the exporting as well as each importing libraries .gnu.version; 24B in the exporting as well as each importing libraries .dynsym; 16B+24B for an entry in .plt as well as the accompanying relocation entry in .rela.plt for each importing library. The overhead for the lists is similar: The strings are 23B and the .plt+.rela.plt pair is replaced by 8B+24B for an entry in .got and a relocation entry in .rela.dyn. These lists have a size of 80 resp. 72 bytes. Yet for ff_raw_pix_fmt_tags, exporting it is advantageous compared to duplicating it into libavformat and potentially libavdevice. Therefore this commit replaces all library uses of the four symbols with a single function that is exported for shared builds. It has an enum parameter to choose the desired list besides the parameter for the fourcc. New lists can be supported with new enum values. Unfortunately, avpriv_get_raw_pix_fmt_tags could not be removed, as the fourcc2pixfmt tool uses the table of raw pix fmts. No other user of this function remains. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/isom: add support for RAW ASC Bayer BGGR in movPaul B Mahol2020-10-12
|
* avformat/nut: add support for yuva444/422p12 pixel formatPaul B Mahol2018-12-14
|
* swscale: add gray14 supportPaul B Mahol2018-05-05
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* libswscale: add gray9 supportPaul B Mahol2017-08-07
|
* lavf/riff: Support more vlc fourcc's for 12 and 16 bit yuv4xx.Carl Eugen Hoyos2017-05-21
|
* avcodec/raw: add gray10 support in nutPaul B Mahol2016-11-29
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* nut: add gray12 supportMichael Niedermayer2016-11-10
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/avcodec: support rawvideo with planar rgb and alpha in nutPaul B Mahol2016-08-23
|
* lavc/raw: Support QT b64a ARGB64 rawvideo.Carl Eugen Hoyos2016-08-13
| | | | | Decoder based on a patch by v0lt, v0lt rambler ru Fixes ticket #5657.
* avcodec/raw: Fix decoding of ilacetest.movMichael Niedermayer2016-08-07
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* nut: Add PAL8 supportMichael Niedermayer2016-02-09
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* lavc/rawdec: Use AV_PIX_FMT_PAL8 for raw 1 bpp video in AVIMats Peterson2016-01-29
| | | | | | | | | | | | | | | | | From https://msdn.microsoft.com/en-us/library/windows/desktop/dd318229%28v=vs.85%29.aspx: "If biCompression equals BI_RGB and the bitmap uses 8 bpp or less, the bitmap has a color table immediatelly following the BITMAPINFOHEADER structure. The color table consists of an array of RGBQUAD values. The size of the array is given by the biClrUsed member. If biClrUsed is zero, the array contains the maximum number of colors for the given bitdepth; that is, 2^biBitCount colors." Nothing about "monochrome" here. Unfortunately, pal8 to monow conversion seems a bit flaky, but that's another story. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* lavf/riff: Support reading vlc's rawvideo fourccs.Carl Eugen Hoyos2016-01-21
| | | | Reported by Bob, no6b no6b com
* lavf/nut: Add forgotten fourccs for YUV4xxP9.Carl Eugen Hoyos2016-01-21
|
* lavc/rawdec: Use AV_PIX_FMT_PAL8 for 1-bit raw QuickTime videoMats Peterson2016-01-18
| | | | | | | | | | | Match the use of AV_PIX_FMT_PAL8 for 1-bit QuickTime Animation in lavc/qtrle. To reiterate, 1-bit video is not necessary black & white in QuickTime, merely bi-level. The two colors can be any color. The palette, either included in the sample description, or the default Macintosh palette (black & white for 1-bit video) will be set in lavf/qtpalette. See the QuickTime File Format Specification for details. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/riff: add YUYV FourCC (Drastic YUYV)Piotr Bandurski2016-01-15
|
* avcodec/raw: add avpriv_get_raw_pix_fmt_tags()James Almer2014-08-07
| | | | | | | Used to expose ff_raw_pix_fmt_tags[] to other libav* libraries Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Merge commit 'e96c3b81cadd0ba84d43b1f3a54980df3785d9a5'Michael Niedermayer2014-08-04
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'e96c3b81cadd0ba84d43b1f3a54980df3785d9a5': avutil: rename AV_PIX_FMT_Y400A to AV_PIX_FMT_YA8 Conflicts: libavcodec/libopenjpegdec.c libavcodec/libopenjpegenc.c libavcodec/raw.c libavutil/pixdesc.c libavutil/pixfmt.h libavutil/version.h libswscale/swscale_internal.h libswscale/swscale_unscaled.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avutil: rename AV_PIX_FMT_Y400A to AV_PIX_FMT_YA8Vittorio Giovara2014-08-04
| | | | | | | | | | | | | | The rationale is that you have a packed format in form <greyscale sample> <alpha sample> <greyscale sample> <alpha sample> and shortening greyscale to 'G' might make one thing about Greenscale instead. An alias pixel format and color space name are provided for compatibility.
* | Warn if rawvideo and an unreadable pix_fmt are written.Carl Eugen Hoyos2014-04-11
| | | | | | | | | | | | Print an error if a combination of rawvideo and an unusual pix_fmt that will be impossible to decode are written to avi or mov. Fixes ticket #3545.
* | Merge commit 'b6a09ef700786b4e1e871dfa0f5c386ea43bbd0a'Michael Niedermayer2014-04-09
|\| | | | | | | | | | | | | | | * commit 'b6a09ef700786b4e1e871dfa0f5c386ea43bbd0a': rawvideo: Support decoding YVYU422 FourCC See: ab7d6cb8f770c3b88a8139d1182fcc934062f891 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * rawvideo: Support decoding YVYU422 FourCCVittorio Giovara2014-04-08
| |
| * raw, nut: Support rgba64 encodingCarl Eugen Hoyos2014-03-16
| |
* | avcodec/raw: add bayer formatsPeter Ross2014-02-22
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | nut: Support XYZ12 rawvideoMichael Niedermayer2014-01-10
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/raw: gbrp supportMichael Niedermayer2013-08-09
| | | | | | | | | | | | Fixes 2nd half of Ticket2274 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-10-30
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: pixfmt: support more yuva formats swscale: support gray to 9bit and 10bit formats configure: rewrite print_config() function using awk FATE: fix (AD)PCM test dependencies broken in e519990 Use ptrdiff_t instead of int for intra pred "stride" function parameter. x86: use PRED4x4/8x8/8x8L/16x16 macros to declare intrapred prototypes. Conflicts: libavcodec/h264pred.c libavcodec/h264pred_template.c libavutil/pixfmt.h libswscale/swscale_unscaled.c tests/ref/lavfi/pixdesc tests/ref/lavfi/pixfmts_copy tests/ref/lavfi/pixfmts_null tests/ref/lavfi/pixfmts_scale tests/ref/lavfi/pixfmts_vflip Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * pixfmt: support more yuva formatsLuca Barbato2012-10-30
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '716d413c13981da15323c7a3821860536eefdbbb'Michael Niedermayer2012-10-08
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '716d413c13981da15323c7a3821860536eefdbbb': Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat Conflicts: doc/examples/muxing.c ffmpeg.h ffmpeg_filter.c ffmpeg_opt.c ffplay.c ffprobe.c libavcodec/8bps.c libavcodec/aasc.c libavcodec/aura.c libavcodec/avcodec.h libavcodec/avs.c libavcodec/bfi.c libavcodec/bmp.c libavcodec/bmpenc.c libavcodec/c93.c libavcodec/cscd.c libavcodec/cyuv.c libavcodec/dpx.c libavcodec/dpxenc.c libavcodec/eatgv.c libavcodec/escape124.c libavcodec/ffv1.c libavcodec/flashsv.c libavcodec/fraps.c libavcodec/h264.c libavcodec/huffyuv.c libavcodec/iff.c libavcodec/imgconvert.c libavcodec/indeo3.c libavcodec/kmvc.c libavcodec/libopenjpegdec.c libavcodec/libopenjpegenc.c libavcodec/libx264.c libavcodec/ljpegenc.c libavcodec/mjpegdec.c libavcodec/mjpegenc.c libavcodec/motionpixels.c libavcodec/mpeg12.c libavcodec/mpeg12enc.c libavcodec/mpeg4videodec.c libavcodec/mpegvideo_enc.c libavcodec/pamenc.c libavcodec/pcxenc.c libavcodec/pgssubdec.c libavcodec/pngdec.c libavcodec/pngenc.c libavcodec/pnm.c libavcodec/pnmdec.c libavcodec/pnmenc.c libavcodec/ptx.c libavcodec/qdrw.c libavcodec/qpeg.c libavcodec/qtrleenc.c libavcodec/raw.c libavcodec/rawdec.c libavcodec/rl2.c libavcodec/sgidec.c libavcodec/sgienc.c libavcodec/snowdec.c libavcodec/snowenc.c libavcodec/sunrast.c libavcodec/targa.c libavcodec/targaenc.c libavcodec/tiff.c libavcodec/tiffenc.c libavcodec/tmv.c libavcodec/truemotion2.c libavcodec/utils.c libavcodec/vb.c libavcodec/vp3.c libavcodec/wnv1.c libavcodec/xl.c libavcodec/xwddec.c libavcodec/xwdenc.c libavcodec/yop.c libavdevice/v4l2.c libavdevice/x11grab.c libavfilter/avfilter.c libavfilter/avfilter.h libavfilter/buffersrc.c libavfilter/drawutils.c libavfilter/formats.c libavfilter/src_movie.c libavfilter/vf_ass.c libavfilter/vf_drawtext.c libavfilter/vf_fade.c libavfilter/vf_format.c libavfilter/vf_hflip.c libavfilter/vf_lut.c libavfilter/vf_overlay.c libavfilter/vf_pad.c libavfilter/vf_scale.c libavfilter/vf_transpose.c libavfilter/vf_yadif.c libavfilter/video.c libavfilter/vsrc_testsrc.c libavformat/movenc.c libavformat/mxf.h libavformat/utils.c libavformat/yuv4mpeg.c libavutil/imgutils.c libavutil/pixdesc.c libswscale/input.c libswscale/output.c libswscale/swscale_internal.h libswscale/swscale_unscaled.c libswscale/utils.c libswscale/x86/swscale_template.c libswscale/x86/yuv2rgb.c libswscale/x86/yuv2rgb_template.c libswscale/yuv2rgb.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormatAnton Khirnov2012-10-08
| |
* | tools: move raw-test program to tools, with the name fourcc2pixfmtStefano Sabatini2012-09-14
| |
* | lavc/raw-test: invert the order of key/value when printing the ↵Stefano Sabatini2012-09-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | fourcc->pix_fmt map Print FOURCC: PIX_FMT rather than PIX_FMT: FOURCC This seems more consistent with the help message: -l list the pixel format for each fourcc Remove possibly redundant/confusing comment.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-08-16
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: Fix even more missing includes after the common.h removal build: Factor out rangecoder dependencies to CONFIG_RANGECODER build: Factor out error resilience dependencies to CONFIG_ERROR_RESILIENCE x86: avcodec: Consistently name all init files Add more missing includes after removing the implicit common.h Add some more missing includes after removing the implicit common.h Don't include common.h from avutil.h rtmp: Automatically compute the hash for SWFVerification Conflicts: configure doc/APIchanges doc/examples/decoding_encoding.c libavcodec/Makefile libavcodec/assdec.c libavcodec/audio_frame_queue.c libavcodec/avpacket.c libavcodec/dv_profile.c libavcodec/dwt.c libavcodec/libtheoraenc.c libavcodec/rawdec.c libavcodec/rv40dsp.c libavcodec/tiff.c libavcodec/tiffenc.c libavcodec/v210dec.h libavcodec/vc1dsp.c libavcodec/x86/Makefile libavfilter/asrc_anullsrc.c libavfilter/avfilter.c libavfilter/buffer.c libavfilter/formats.c libavfilter/vf_ass.c libavfilter/vf_drawtext.c libavfilter/vf_fade.c libavfilter/vf_select.c libavfilter/video.c libavfilter/vsrc_testsrc.c libavformat/version.h libavutil/audioconvert.c libavutil/error.h libavutil/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Don't include common.h from avutil.hMartin Storsjö2012-08-15
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* | nut: add 12/14 bit yuv to nut/rawCarl Eugen Hoyos2012-07-05
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | isom: add Radius DV YUV FourCCsPiotr Bandurski2012-06-05
| |
* | lavc/raw: add test utility for listing fourcc/pix_fmt mapStefano Sabatini2012-06-04
| | | | | | | | | | The test program is useful for checking which raw formats are currently identified by a codec tag.
* | Support decoding fourcc YVYU.Carl Eugen Hoyos2012-05-27
| | | | | | | | | | | | Based on work by ami_stuff. Fixes ticket #1352
* | Support some BOXX codecs.ami_stuff2012-05-26
| | | | | | | | | | | | Fixes a part of ticket #1352. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Support yuva422p rawvideo in nut.Carl Eugen Hoyos2012-05-08
| |
* | Support yuva444p rawvideo in nut.Carl Eugen Hoyos2012-04-06
| | | | | | | | Fixes ticket #1058.
* | Allow encoding rawvideo RGBA64 and friends.Carl Eugen Hoyos2012-02-09
| |
* | Allow encoding rawvideo RGB0 and friends.Carl Eugen Hoyos2012-02-09
| |
* | Allow decoding of uyvy422 CYUV with -vcodec rawvideo.Carl Eugen Hoyos2012-01-06
| | | | | | | | FourCC CYUV can be Creative YUV and uyvy422 rawvideo.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-12-21
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: lavc: always align height by 32 pixel raw: add 10bit YUV definitions nut: support 10bit YUV mpegvideo_enc: separate declarations and statements oma: make header compile standalone vp3: Reorder some functions to fix VP3 build with Theora disabled. build: fix standalone compilation of ADX encoder build: fix standalone compilation of ADPCM decoders build: fix standalone compilation of mpc7/mpc8 decoders 4xm: Use bytestream2 functions to prevent overreads bytestream: add a new set of bytestream functions with overread checking mpegts: Suppress invalid timebase warnings on DMB streams. mpegts: Fix typo in handling sections in the PMT. vc1dec: Use the right pointer type for the tmp pointer Conflicts: libavcodec/4xm.c libavcodec/utils.c libavcodec/vc1dec.c libavcodec/vp3.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * raw: add 10bit YUV definitionsLuca Barbato2011-12-21
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * Synchronize various 4CCs and codec tags from FFmpeg.Diego Biurrun2011-10-04
| |
| * rawdec: Fix decoding of QT WRAW files.ami_stuff2011-06-21
| | | | | | | | | | | | | | From some tests it results that: 1. All of the AVI/MOV WRAW files need to be flipped. 2. MOV WRAW files need to use AVI color modes. 3. Assigning PAL8 mode by default to WRAW codec is not correct.