summaryrefslogtreecommitdiff
path: root/libavdevice/lavfi.c
Commit message (Collapse)AuthorAge
* lavd: add categories to device implementationsLukasz Marek2014-03-03
| | | | Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
* lavd/lavfi: support unknown channel layouts.Nicolas George2013-11-03
|
* avdevice/lavfi: fix input with unknown channel layoutMichael Niedermayer2013-07-13
| | | | | | | Fixes handling of >8 channels Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* lavfi: create Libav-API compatibility layer for avfilter_graph_parse() at ↵Stefano Sabatini2013-07-03
| | | | | | | | | | | | | | | | | the next bump Add function avfilter_graph_parse_ptr() and favor it in place of avfilter_graph_parse(), which will be restored with the old/Libav signature at the next bump. If HAVE_INCOMPATIBLE_LIBAV_API is enabled it will use the Libav-compatible signature for avfilter_graph_parse(). At the next major bump the current implementation of avfilter_graph_parse() should be dropped in favor of the Libav/old implementation. Should address trac ticket #2672.
* replace remaining PIX_FMT_* flags with AV_PIX_FMT_FLAG_*Michael Niedermayer2013-05-15
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avdevice/lavfi: add error checking for av_opt_set_int_list()Michael Niedermayer2013-04-12
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* buffersink: switch from opaque to AVOptions for paramsMichael Niedermayer2013-04-12
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* abuffersink: switch from opaque to AVOptions for paramsMichael Niedermayer2013-04-12
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* lavd/lavfi: upgrade to AVFrame.Nicolas George2013-03-15
| | | | | Fix a memory leak because the compat implementation of AV_BUFFERSINK_FLAG_PEEK is not identical to the previous one.
* Remove references to the "ff" variant of buffersink.Nicolas George2013-03-12
|
* avformat/lavfi: force probesize to cover at least 30 framesMichael Niedermayer2013-02-28
| | | | | | | | | | | | This ensures that fps and other values are estimated correctly, the probesize also is intended to limit disk/protocol reads which does not apply to lavfi inputs at all. Fixes Ticket1051 Something similar could be usefull to other input devices Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* lavd/lavfi: fix float.h include.Clément Bœsch2012-12-06
| | | | float.h is a system header.
* Replace rest of libavutil/audioconvert.h with libavutil/channel_layout.hPaul B Mahol2012-11-13
| | | | | | Also remove it in once case when it is not needed. Signed-off-by: Paul B Mahol <onemda@gmail.com>
* lavd/lavfi: fix leak in case of failureStefano Sabatini2012-10-25
| | | | Jump to the common release code in case of failure.
* lavd/lavfi: add graph_file optionStefano Sabatini2012-10-23
| | | | | | | | Allow to specify a filename where to put the filtergraph description. This is useful to override limitations or glitches of particular shell environments, and allows a level of indirection for specifying filtergraphs.
* lavc: add lavfi metadata support.Clément Bœsch2012-10-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit introduces a new AVPacket side data type: AV_PKT_DATA_STRINGS_METADATA. Its main goal is to provide a way to transmit the metadata from the AVFilterBufferRef up to the AVFrame. This is at the moment "only" useful for lavfi input from libavdevice: lavd/lavfi only outputs packets, and the metadata from the buffer ref kept in its context needs to be transmitted from the packet to the frame by the decoders. The buffer ref can be destroyed at any time (along with the metadata), and a duplication of the AVPacket needs to duplicate the metadata as well, so the choice of using the side data to store them was selected. Making sure lavd/lavfi raises the metadata is useful to allow tools like ffprobe to access the filters metadata (it is at the moment the only way); ffprobe will now automatically show the AVFrame metadata in any customizable output format for users. API users will also be able to access the AVFrame->metadata pointer the same way ffprobe does (av_frame_get_metadata). All the changes are done in this single commit to avoid some memory leaks: for instances, the changes in lavfi/avcodec.c are meant to duplicate the metadata from the buffer ref into the AVFrame. Unless we have an internal way of freeing the AVFrame->metadata automatically, it will leak in most of the user apps. To fix this problem, we introduce AVCodecContext->metadata and link avctx->metadata to the current frame->metadata and free it at each decode frame call (and in the codec closing callback for the last one). But doing this also means to update the way the tiff decoder already handles the AVFrame->metadata (it's the only one decoder with frame metadata at the moment), by making sure it is not trying to free a pointer already freed by the lavc internals. The lavfi/avcodec.c buffer ref code is based on an old Thomas Kühnel work, the rest of the code belongs to the commit author. Signed-off-by: Thomas Kühnel <kuehnelth@googlemail.com> Signed-off-by: Clément Bœsch <ubitux@gmail.com>
* lavd: do not use av_pix_fmt_descriptors directlyPaul B Mahol2012-10-12
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* 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>
* lavd/lavfi: push frames until the last sink is EOFStefano Sabatini2012-09-20
| | | | | | Previously the device was returning EOF when the first sink was ending, with the current change the device will continue to return frames until all the sinks are EOF, which seems the most expected behavior.
* lavd/lavfi: apply stylistic fixes to the options help fieldsStefano Sabatini2012-09-11
|
* avoid ambigous buffersink namesMichael Niedermayer2012-09-01
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Merge commit '36ef5369ee9b336febc2c270f8718cec4476cb85'Michael Niedermayer2012-08-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '36ef5369ee9b336febc2c270f8718cec4476cb85': Replace all CODEC_ID_* with AV_CODEC_ID_* lavc: add AV prefix to codec ids. Conflicts: doc/APIchanges doc/examples/decoding_encoding.c doc/examples/muxing.c ffmpeg.c ffprobe.c ffserver.c libavcodec/8svx.c libavcodec/avcodec.h libavcodec/dnxhd_parser.c libavcodec/dvdsubdec.c libavcodec/error_resilience.c libavcodec/h263dec.c libavcodec/libvorbisenc.c libavcodec/mjpeg_parser.c libavcodec/mjpegenc.c libavcodec/mpeg12.c libavcodec/mpeg4videodec.c libavcodec/mpegvideo.c libavcodec/mpegvideo_enc.c libavcodec/pcm.c libavcodec/r210dec.c libavcodec/utils.c libavcodec/v210dec.c libavcodec/version.h libavdevice/alsa-audio-dec.c libavdevice/bktr.c libavdevice/v4l2.c libavformat/asfdec.c libavformat/asfenc.c libavformat/avformat.h libavformat/avidec.c libavformat/caf.c libavformat/electronicarts.c libavformat/flacdec.c libavformat/flvdec.c libavformat/flvenc.c libavformat/framecrcenc.c libavformat/img2.c libavformat/img2dec.c libavformat/img2enc.c libavformat/ipmovie.c libavformat/isom.c libavformat/matroska.c libavformat/matroskadec.c libavformat/matroskaenc.c libavformat/mov.c libavformat/movenc.c libavformat/mp3dec.c libavformat/mpeg.c libavformat/mpegts.c libavformat/mxf.c libavformat/mxfdec.c libavformat/mxfenc.c libavformat/nsvdec.c libavformat/nut.c libavformat/oggenc.c libavformat/pmpdec.c libavformat/rawdec.c libavformat/rawenc.c libavformat/riff.c libavformat/sdp.c libavformat/utils.c libavformat/vocenc.c libavformat/wtv.c libavformat/xmv.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* lavfi: remove old video sink APIStefano Sabatini2012-06-26
| | | | | It was deprecated since a long time and removed after the 2->3 major bump.
* lavd/lavfi: do not set the channel layout list.Nicolas George2012-06-21
| | | | | | | The list was set to avfilter_all_channel_layouts, which is really all common channel layouts. Not setting it leaves an empty list, which now means really all.
* lavfi: drop planar/packed negotiation supportStefano Sabatini2012-05-16
| | | | | | | | | The planar/packed switch and the packing_formats list is no longer required, since the planar/packed information is now stored in the sample format enum. This is technically a major API break, possibly it should be not too painful as we marked the audio filtering API as unstable.
* lavd/lavfi: support all sample formats.Nicolas George2012-02-22
|
* Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-01-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (71 commits) movenc: Allow writing to a non-seekable output if using empty moov movenc: Support adding isml (smooth streaming live) metadata libavcodec: Don't crash in avcodec_encode_audio if time_base isn't set sunrast: Document the different Sun Raster file format types. sunrast: Add a check for experimental type. libspeexenc: use AVSampleFormat instead of deprecated/removed SampleFormat lavf: remove disabled FF_API_SET_PTS_INFO cruft lavf: remove disabled FF_API_OLD_INTERRUPT_CB cruft lavf: remove disabled FF_API_REORDER_PRIVATE cruft lavf: remove disabled FF_API_SEEK_PUBLIC cruft lavf: remove disabled FF_API_STREAM_COPY cruft lavf: remove disabled FF_API_PRELOAD cruft lavf: remove disabled FF_API_NEW_STREAM cruft lavf: remove disabled FF_API_RTSP_URL_OPTIONS cruft lavf: remove disabled FF_API_MUXRATE cruft lavf: remove disabled FF_API_FILESIZE cruft lavf: remove disabled FF_API_TIMESTAMP cruft lavf: remove disabled FF_API_LOOP_OUTPUT cruft lavf: remove disabled FF_API_LOOP_INPUT cruft lavf: remove disabled FF_API_AVSTREAM_QUALITY cruft ... Conflicts: doc/APIchanges libavcodec/8bps.c libavcodec/avcodec.h libavcodec/libx264.c libavcodec/mjpegbdec.c libavcodec/options.c libavcodec/sunrast.c libavcodec/utils.c libavcodec/version.h libavcodec/x86/h264_deblock.asm libavdevice/libdc1394.c libavdevice/v4l2.c libavformat/avformat.h libavformat/avio.c libavformat/avio.h libavformat/aviobuf.c libavformat/dv.c libavformat/mov.c libavformat/utils.c libavformat/version.h libavformat/wtv.c libavutil/Makefile libavutil/file.c libswscale/x86/input.asm libswscale/x86/swscale_mmx.c libswscale/x86/swscale_template.c tests/ref/lavf/ffm Merged-by: Michael Niedermayer <michaelni@gmx.at>
* lavd/lavfi: add dumpgraph option.Nicolas George2012-01-24
|
* lavd/lavfi: fix compiler warning for uninitialized variablesJean First2011-12-31
| | | | | Signed-off-by: Jean First <jeanfirst@gmail.com> Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
* lavd/lavfi: fix two memleaks.Nicolas George2011-12-22
| | | | | Signed-off-by: Nicolas George <nicolas.george@normalesup.org> Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
* lavd/lavfi: reindent block in lavfi_read_headerStefano Sabatini2011-12-20
|
* lavd/lavfi: add check in case pix_fmts cannot be allocated in ↵Stefano Sabatini2011-12-20
| | | | lavfi_read_header()
* lavd/lavfi: fix incomplete commentStefano Sabatini2011-12-18
|
* lavd/lavfi: fix typo in error messageStefano Sabatini2011-12-18
|
* lavd/lavfi: remove a duplicated line.Nicolas George2011-12-15
|
* lavf: rename remaining av_set_pts_info() to avpriv_set_pts_info().Clément Bœsch2011-12-03
|
* Replace remaining av_new_stream() with avformat_new_stream().Clément Bœsch2011-11-05
|
* AVOptions: rename remaining FF_OPT_TYPE_* to AV_OPT_TYPE_*.Clément Bœsch2011-10-17
|
* lavd/lavfi: compute and use the used samples buffer size for the output ↵Stefano Sabatini2011-10-16
| | | | | | | audio packet size Do not assume the used size is the same of the allocated size, as it was wrongly assumed. Fix audio playback when the two values differ.
* lavdev/lavfi: reindent after the last commitStefano Sabatini2011-09-16
|
* lavdev/lavfi: add audio supportStefano Sabatini2011-09-16
|
* lavfi: rename vsink_buffer.c to sink_buffer.c, and vsink_buffer.h to ↵Stefano Sabatini2011-09-06
| | | | | | | | buffersink.h This is done in order to clarify the non-video-specific nature of the buffersink code, as the result of the video/audio API unification of the previous commit, and for improving overall consistency.
* lavfi: unify asink_buffer and vsink_buffer APIStefano Sabatini2011-09-06
| | | | | | | | | The new API is more generic (no distinction between audio/video for pulling frames), and avoids code duplication. A backward compatibility layer is kept for avoiding tools ABI breaks (only for the video binary interface, audio interface was never used in the tools).
* lavdev/lavfi: add debug traces in lavfi_read_packet()Stefano Sabatini2011-08-31
|
* lavdev/lavfi: set sample aspect ratio in the output stream/codec contextStefano Sabatini2011-08-21
|
* lavdev/lavfi: specify pos in the output packetsStefano Sabatini2011-08-20
|
* lavdev/lavfi: initialize variable, fix warningStefano Sabatini2011-08-20
|
* lavdev/lavfi: correctly set the inout pad index when linking a filter to the ↵Stefano Sabatini2011-08-14
| | | | | | | | output sink In lavfi_read_header(), use the pad index designated in the inout for linking an output to a sink, rather than always 0. Fix link creation for filters with more than one output (e.g. the split filter).
* lavdev: add libavfilter virtual input deviceStefano Sabatini2011-08-11
This input device is to be considered still experimental, only video output is supported.