summaryrefslogtreecommitdiff
path: root/Changelog
Commit message (Collapse)AuthorAge
...
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-05-25
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: rtmp: Return a proper error code instead of -1 rtmp: Check malloc calls rtmp: Check ff_rtmp_packet_create calls lavfi: add audio mix filter flvdec: Make sure sample_rate is set to the updated value tqi: Pass errors from the MB decoder Conflicts: Changelog doc/filters.texi libavcodec/eatqi.c libavfilter/Makefile libavfilter/allfilters.c libavfilter/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavfi: add audio mix filterJustin Ruggles2012-05-23
| |
* | Changelog: update for 0.11Michael Niedermayer2012-05-24
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-05-22
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: dwt: check malloc calls ppc: Drop unused header regs.h af_resample: remove an extra space in the log output Convert vector_fmul range of functions to YASM and add AVX versions lavfi: add an audio split filter lavfi: rename vf_split.c to split.c Conflicts: doc/filters.texi libavcodec/ppc/regs.h libavfilter/Makefile libavfilter/allfilters.c libavfilter/f_split.c libavfilter/split.c libavfilter/version.h libavfilter/vf_split.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavfi: add an audio split filterJustin Ruggles2012-05-21
| | | | | | | | | | Based on current version of the asplit filter in FFmpeg written by Stefano Sabatini and others.
* | Add Avid Meridien Uncompressed (AVUI) encoder.Carl Eugen Hoyos2012-05-22
| |
* | Merge commit '755cd4197d53946208e042f095b930dca18d9430'Michael Niedermayer2012-05-19
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '755cd4197d53946208e042f095b930dca18d9430': mov: enable parsing for VC-1. lavfi: Add fps filter. lavfi: initialize pts to AV_NOPTS_VALUE when creating new buffer refs. avconv: add support for audio in complex filtergraphs. Conflicts: ffmpeg.c libavfilter/version.h libavformat/mov.c tests/ref/fate/vc1-ism Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavfi: Add fps filter.Anton Khirnov2012-05-18
| | | | | | | | Partially based on a patch by Robert Nagy <ronag89@gmail.com>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-05-16
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (26 commits) fate: use diff -b in oneline comparison Add missing version bumps and APIchanges/Changelog entries. lavfi: move buffer management function to a separate file. lavfi: move formats-related functions from default.c to formats.c lavfi: move video-related functions to a separate file. fate: make smjpeg a demux test fate: separate sierra-vmd audio and video tests fate: separate smacker audio and video tests libmp3lame: set supported channel layouts. avconv: automatically insert asyncts when -async is used. avconv: add support for audio filters. lavfi: add asyncts filter. lavfi: add aformat filter lavfi: add an audio buffer sink. lavfi: add an audio buffer source. buffersrc: add av_buffersrc_write_frame(). buffersrc: fix invalid read in uninit if the fifo hasn't been allocated lavfi: rename vsrc_buffer.c to buffersrc.c avfiltergraph: reindent lavfi: add channel layout/sample rate negotiation. ... Conflicts: Changelog doc/APIchanges doc/filters.texi ffmpeg.c ffprobe.c libavcodec/libmp3lame.c libavfilter/Makefile libavfilter/af_aformat.c libavfilter/allfilters.c libavfilter/avfilter.c libavfilter/avfilter.h libavfilter/avfiltergraph.c libavfilter/buffersrc.c libavfilter/defaults.c libavfilter/formats.c libavfilter/src_buffer.c libavfilter/version.h libavfilter/vf_yadif.c libavfilter/vsrc_buffer.c libavfilter/vsrc_buffer.h libavutil/avutil.h tests/fate/audio.mak tests/fate/demux.mak tests/fate/video.mak Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Add missing version bumps and APIchanges/Changelog entries.Anton Khirnov2012-05-15
| |
* | ffmpeg: accept + prefix to -pix_fmt option to disable automatic conversions.Nicolas George2012-05-14
| |
* | Add Avid Meridien (AVUI) decoder.Carl Eugen Hoyos2012-05-08
| |
* | lavc: add MicroDVD decoder.Clément Bœsch2012-04-27
| | | | | | | | | | Based on my MicroDVD->ASS conversion code from MPlayer (sub/subassconvert.c).
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-04-25
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: FATE: use updated reference for aac-latm_stereo_to_51 avconv: use libavresample Add libavresample FATE: avoid channel mixing in lavf-dv_fmt Conflicts: Changelog Makefile cmdutils.c configure doc/APIchanges ffmpeg.c tests/lavf-regression.sh tests/ref/lavf/dv_fmt tests/ref/seek/lavf_dv Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Add libavresampleJustin Ruggles2012-04-24
| | | | | | | | | | This is a new library for audio sample format, channel layout, and sample rate conversion.
* | lavfi: port 2xsai filter from libmpcodecsStefano Sabatini2012-04-13
| | | | | | | | | | | | | | | | | | | | Partially based on the port by Niel van der Westhuizen <nielkie@gmail.com>, done for GCI 2010. Same output as the original filter and as fast. See thread: Subject: [FFmpeg-devel] [PATCH] Port MPlayer 2xSaI filter to libavfilter Date: Thu, 25 Nov 2010 01:31:24 +1000
* | ffmpeg: add -benchmark_all option.Nicolas George2012-04-12
| |
* | vf_drawtext: fontconfig support.Nicolas George2012-04-10
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-04-07
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: rtpdec_asf: Set the no_resync_search option for the chained asf demuxer asfdec: Add an option for not searching for the packet markers cosmetics: Clean up the tiffenc pix_fmts declaration to match the style of others cosmetics: Align codec declarations cosmetics: Convert mimic.c to utf-8 avconv: remove an unused function parameter. avconv: remove now pointless variables. avconv: drop support for building without libavfilter. nellymoserenc: fix crash due to memsetting the wrong area. libavformat: Only require first packet to be known for audio/video streams avplay: Don't try to scale timestamps if the tb isn't set Conflicts: Changelog configure ffmpeg.c libavcodec/aacenc.c libavcodec/bmpenc.c libavcodec/dnxhddec.c libavcodec/dnxhdenc.c libavcodec/ffv1.c libavcodec/flacenc.c libavcodec/fraps.c libavcodec/huffyuv.c libavcodec/libopenjpegdec.c libavcodec/mpeg12enc.c libavcodec/mpeg4videodec.c libavcodec/pamenc.c libavcodec/pgssubdec.c libavcodec/pngenc.c libavcodec/qtrleenc.c libavcodec/rawdec.c libavcodec/sgienc.c libavcodec/tiffenc.c libavcodec/v210dec.c libavcodec/wmv2dec.c libavformat/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avconv: drop support for building without libavfilter.Anton Khirnov2012-04-06
| | | | | | | | | | | | | | Since the mandatory memcpy in vsrc_buffer has been eliminated, there shouldn't be any significant reason to build without lavfi anymore. This will make upcoming support for complex filtergraphs easier to do.
* | lavfi: port libmpcodecs remove-logo filterStefano Sabatini2012-04-07
| | | | | | | | | | | | | | The code is based on the remove-logo filter in MPlayer/libmpcodecs, by Robert Edele, relicensed to LGPL with consent of the author. Address trac issue #249.
* | lavc: add a OpenEXR decoderJimmy Christensen2012-04-06
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | XBM decoderPaul B Mahol2012-03-27
| | | | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | "Metal Gear Solid: The Twin Snakes" demuxerPaul B Mahol2012-03-25
| | | | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavfi: add tile video filter.Nicolas George2012-03-21
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-20
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (35 commits) fix space type in Changelog ZeroCodec Decoder RealAudio Lossless decoder rtpenc: Use AVFormatContext.packet_size instead of a private option url: Document the expected behaviour of url_read libavformat: Use AVFormatContext.probesize in init_input docs: Fix a stray reference to tags in the generic doxy on dicts cosmetics: Align some AVInput/OutputFormat declarations zmbv: check decompress result zmbv: correct indentation adpcm: convert adpcm_thp to bytestream2. adpcm: convert adpcm_yamaha to bytestream2. adpcm: convert adpcm_swf to bytestream2. adpcm: convert adpcm_sbpro to bytestream2. adpcm: convert adpcm_ct to bytestream2. adpcm: convert adpcm_ima_amv/smjpeg to bytestream2. adpcm: convert adpcm_ea_xas to bytestream2. adpcm: convert adpcm_ea_r1/2/3 to bytestream2. adpcm: convert ea_maxis_xa to bytestream2. adpcm: convert adpcm_ea to bytestream2. ... Conflicts: Changelog libavcodec/Makefile libavcodec/adpcm.c libavcodec/allcodecs.c libavcodec/avcodec.h libavcodec/version.h libavcodec/zerocodec.c libavcodec/zmbv.c libavformat/riff.c libavformat/url.h tests/ref/fate/truemotion1-15 tests/ref/fate/truemotion1-24 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * fix space type in ChangelogKostya Shishkov2012-03-19
| |
| * ZeroCodec DecoderDerek Buitenhuis2012-03-19
| | | | | | | | | | | | | | | | An obscure Japanese lossless video codec, originally intended for use with a remote desktop application. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
| * RealAudio Lossless decoderKostya Shishkov2012-03-19
| |
* | ZeroCodec DecoderDerek Buitenhuis2012-03-19
| | | | | | | | | | | | | | | | An obscure Japanese lossless video codec, originally intended for use with a remote desktop application. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-18
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: fate: make compare() function compatible with POSIX bc Update Janne's email address. APIchanges: Replace Subversion revision numbers by Git hashes. bytestream: Eliminate one level of pointless macro indirection. xwd: convert to bytestream2. vqavideo: port to bytestream2 API Read preset files with suffix .avpreset prores: allow user to set fixed quantiser lavf: remove some disabled code. lavf: only set average frame rate for video. lavf: remove a pointless check. avcodec: add XBM encoder Conflicts: Changelog cmdutils.c cmdutils.h doc/APIchanges libavcodec/Makefile libavcodec/avcodec.h libavcodec/version.h libavcodec/vqavideo.c libavformat/img2enc.c libavformat/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avcodec: add XBM encoderPaul B Mahol2012-03-17
| | | | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
* | lavfi: add bbox filterStefano Sabatini2012-03-17
| | | | | | | | | | | | Also add bbox.h and bbox.c files, based on the remove-logo filter by Robert Edele. These files are useful for sharing code with the pending removelogo port.
* | lavfi: port MP swapuv filterStefano Sabatini2012-03-10
| |
* | libutvideo: Add Ut Video encoder wrapperDerek Buitenhuis2012-03-05
| | | | | | | | | | | | | | | | | | All colorspaces are supported. Renamed libutvideo.cpp to libutvideodec.cpp. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavfi: add blackdetect filterStefano Sabatini2012-03-04
| | | | | | | | Address trac ticket #901.
* | bluray protocolPetri Hintukainen2012-03-03
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-03
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (29 commits) amrwb: remove duplicate arguments from extrapolate_isf(). amrwb: error out early if mode is invalid. h264: change underread for 10bit QPEL to overread. matroska: check buffer size for RM-style byte reordering. vp8: disable mmx functions with sse/sse2 counterparts on x86-64. vp8: change int stride to ptrdiff_t stride. wma: fix invalid buffer size assumptions causing random overreads. Windows Media Audio Lossless decoder rv10/20: Fix slice overflow with checked bitstream reader. h263dec: Disallow width/height changing with frame threads. rv10/20: Fix a buffer overread caused by losing track of the remaining buffer size. rmdec: Honor .RMF tag size rather than assuming 18. g722: Fix the QMF scaling r3d: don't set codec timebase. electronicarts: set timebase for tgv video. electronicarts: parse the framerate for cmv video. ogg: don't set codec timebase electronicarts: don't set codec timebase avs: don't set codec timebase wavpack: Fix an integer overflow ... Conflicts: libavcodec/arm/vp8dsp_init_arm.c libavcodec/fraps.c libavcodec/h264.c libavcodec/mpeg4videodec.c libavcodec/mpegvideo.c libavcodec/msmpeg4.c libavcodec/pnmdec.c libavcodec/qpeg.c libavcodec/rawenc.c libavcodec/ulti.c libavcodec/vcr1.c libavcodec/version.h libavcodec/wmalosslessdec.c libavformat/electronicarts.c libswscale/ppc/yuv2rgb_altivec.c tests/ref/acodec/g722 tests/ref/fate/ea-cmv Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Windows Media Audio Lossless decoderMashiat Sarker Shakkhar2012-03-02
| | | | | | | | | | | | | | | | | | | | | | | | Decodes 16-bit WMA Lossless encoded files. 24-bit is not supported yet. Bitstream parser written by Andreas Öman with contributions from Baptiste Coudurier and Ulion. Includes a number of bug-fixes from Benjamin Larsson, Michael Niedermayer and Konstantin Shishkov, shine and polish by Diego Biurrun. Signed-off-by: Diego Biurrun <diego@biurrun.de>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-01
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (58 commits) amrnbdec: check frame size before decoding. cscd: use negative error values to indicate decode_init() failures. h264: prevent overreads in intra PCM decoding. FATE: do not decode audio in the nuv test. dxa: set audio stream time base using the sample rate psx-str: do not allow seeking by bytes asfdec: Do not set AVCodecContext.frame_size vqf: set packet parameters after av_new_packet() mpegaudiodec: use DSPUtil.butterflies_float(). FATE: add mp3 test for sample that exhibited false overreads fate: add cdxl test for bit line plane arrangement vmnc: return error on decode_init() failure. libvorbis: add/update error messages libvorbis: use AVFifoBuffer for output packet buffer libvorbis: remove unneeded e_o_s check libvorbis: check return values for functions that can return errors libvorbis: use float input instead of s16 libvorbis: do not flush libvorbis analysis if dsp state was not initialized libvorbis: use VBR by default, with default quality of 3 libvorbis: fix use of minrate/maxrate AVOptions ... Conflicts: Changelog doc/APIchanges libavcodec/avcodec.h libavcodec/dpxenc.c libavcodec/libvorbis.c libavcodec/vmnc.c libavformat/asfdec.c libavformat/id3v2enc.c libavformat/internal.h libavformat/mp3enc.c libavformat/utils.c libavformat/version.h libswscale/utils.c tests/fate/video.mak tests/ref/fate/nuv tests/ref/fate/prores-alpha tests/ref/lavf/ffm tests/ref/vsynth1/prores tests/ref/vsynth2/prores Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Add a minor bump, changelog/APIchanges entry and some documentation for APIC ↵Anton Khirnov2012-02-29
| | | | | | | | support.
| * Remove libpostproc.Diego Biurrun2012-02-23
| | | | | | | | | | | | | | | | This library does not fit into Libav as a whole and its code is just a maintenance burden. Furthermore it is now available as an external project, which completely obviates any reason to keep it around. URL: http://git.videolan.org/?p=libpostproc.git
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-02-18
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (22 commits) als: prevent infinite loop in zero_remaining(). cook: prevent div-by-zero if channels is zero. pamenc: switch to encode2(). svq1enc: switch to encode2(). dvenc: switch to encode2(). dpxenc: switch to encode2(). pngenc: switch to encode2(). v210enc: switch to encode2(). xwdenc: switch to encode2(). ttadec: use branchless unsigned-to-signed unfolding avcodec: add a Sun Rasterfile encoder sunrast: Move common defines to a new header file. cdxl: fix video decoding for some files cdxl: fix audio for some samples apetag: add proper support for binary tags ttadec: remove dead code swscale: make access to filter data conditional on filter type. swscale: update context offsets after removal of AlpMmxFilter. prores: initialise encoder and decoder parts only when needed swscale: make monowhite/black RGB-independent. ... Conflicts: Changelog libavcodec/alsdec.c libavcodec/dpxenc.c libavcodec/golomb.h libavcodec/pamenc.c libavcodec/pngenc.c libavformat/img2.c libswscale/output.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avcodec: add a Sun Rasterfile encoderAneesh Dogra2012-02-17
| | | | | | | | Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
* | ffprobe: add count_frames and count_packets optionsMatthieu Bouron2012-02-17
| | | | | | | | Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-02-16
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (27 commits) ppc: Add ff_ prefix to nonstatic symbols sh4: Add ff_ prefix to nonstatic symbols mpegvideo: Add ff_ prefix to nonstatic functions rtjpeg: Add ff_ prefix to nonstatic symbols rv: Add ff_ prefix to nonstatic symbols vp56: Add ff_ prefix to nonstatic symbols vorbis: Add ff_ prefix to nonstatic symbols msmpeg4: Add ff_ prefix to nonstatic symbols vc1: Add ff_ prefix to nonstatic symbols msmpeg4: Add ff_ prefixes to nonstatic symbols snow: Add ff_ prefix to nonstatic symbols mpeg12: Add ff_ prefix to nonstatic symbols mpeg4: Add ff_ prefixes to nonstatic symbols lagarith: Add ff_ prefix to lag_rac_init libavcodec: Add ff_ prefix to j_rev_dct* dsputil: Add ff_ prefix to inv_zigzag_direct16 libavcodec: Prefix fdct_ifast, fdct_ifast248 dsputil: Add ff_ prefix to the dsputil*_init* functions libavcodec: Add ff_ prefix to some nonstatic symbols vlc/rl: Add ff_ prefix to the nonstatic symbols ... Conflicts: libavcodec/Makefile libavcodec/allcodecs.c libavcodec/dnxhddec.c libavcodec/ffv1.c libavcodec/h263.h libavcodec/h263dec.c libavcodec/h264.c libavcodec/mpegvideo.c libavcodec/mpegvideo_enc.c libavcodec/nuv.c libavcodec/ppc/dsputil_ppc.c libavcodec/proresdsp.c libavcodec/svq3.c libavcodec/version.h libavformat/dv.h libavformat/dvenc.c libavformat/matroskadec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * prores encoderKostya Shishkov2012-02-15
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-02-15
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (21 commits) CDXL demuxer and decoder hls: Re-add legacy applehttp name to preserve interface compatibility. hlsproto: Rename the functions and context hlsproto: Encourage users to try the hls demuxer instead of the proto doc: Move the hls protocol section into the right place libavformat: Rename the applehttp protocol to hls hls: Rename the functions and context libavformat: Rename the applehttp demuxer to hls rtpdec: Support H263 in RFC 2190 format rv30: check block type validity ttadec: CRC checking movenc: Support muxing VC1 avconv: Don't split out inline sequence headers when stream copying VC1 rv34: handle size changes during frame multithreading rv40: prevent undefined signed overflow in rv40_loop_filter() rv34: use AVERROR return values in ff_rv34_decode_frame() rv34: use uint16_t for RV34DecContext.deblock_coefs librtmp: Add "lib" prefix to librtmp URLProtocol declarations. movenc: Use defines instead of hardcoded numbers for RTCP types smjpegdec: implement seeking ... Conflicts: Changelog doc/general.texi libavcodec/avcodec.h libavcodec/rv30.c libavcodec/tta.c libavcodec/version.h libavformat/Makefile libavformat/allformats.c libavformat/version.h libswscale/x86/swscale_mmx.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * CDXL demuxer and decoderPaul B Mahol2012-02-14
| | | | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Diego Biurrun <diego@biurrun.de>
* | lavfi: add setfield filterStefano Sabatini2012-02-06
| |