1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-02 03:06:28 +02:00
Commit Graph

3348 Commits

Author SHA1 Message Date
Vladimir Pantelic
0b55b16abc avfilter: allow setpts filter to use wallclock time for calculations
Signed-off-by: Vladimir Pantelic <vladoman@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-01-25 10:50:09 +01:00
Vladimir Pantelic
b85a5e87af lavu: Add av_strnstr()
This is a length limited version of strstr()

Signed-off-by: Vladimir Pantelic <vladoman@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-01-25 10:47:51 +01:00
Stefano Sabatini
1ec3324f00 lavf/img2enc: extend current options documentation 2013-01-25 00:04:23 +01:00
Stefano Sabatini
2756c3091a doc/faq: fill missing word in the concat protocol entry 2013-01-25 00:04:22 +01:00
Stefano Sabatini
40cb682ca0 doc/faq: mention concat protocol documentation in the protocol concatenation entry 2013-01-25 00:04:22 +01:00
Michael Niedermayer
70b0aeba00 Merge commit '7a95afe433b2a692f490b98948c082e62ffc1d27'
* commit '7a95afe433b2a692f490b98948c082e62ffc1d27':
  doc: fix dependencies in pod generation

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-24 14:35:15 +01:00
Stefano Sabatini
c89a8ee23d doc/eval: fix/review the section about SI prefixes and usage
In particular, prefer "prefix" to "postfix" as in the tool manuals, and
specify powers of 2 and 10 explicitly.

This is based on the commit:
commit 2bf794b698
Author: Marcus Stollsteimer <sto.mar@web.de>
Date:   Mon Nov 19 21:39:20 2012 +0100
2013-01-24 12:26:21 +01:00
Stefano Sabatini
ca1bc188f4 doc/eval: fix documentation for time() function 2013-01-24 12:26:21 +01:00
Stefano Sabatini
2b207bab19 doc/eval: substitute if/then/else construct with an example making use of boolean expression composition
Since the if/then/else construct is now supported natively, showing how
to compose such a construct from basic primitives is misleading.
2013-01-24 12:19:02 +01:00
Stefano Sabatini
2ed0803c6c lavu/eval: extend if/ifnot functions to accept a third parameter
Add support to an if/else construct, simplify logic in expressions.
2013-01-24 12:19:01 +01:00
Luca Barbato
7a95afe433 doc: fix dependencies in pod generation
The script can and will change.
2013-01-24 10:43:15 +01:00
Michael Niedermayer
31cd1e20bb eval: add function to access the current "wallclock" time.
Reviewed-by: Stefano Sabatini <stefasab@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-23 22:22:53 +01:00
Michael Niedermayer
ac8987591f Merge commit '88bd7fdc821aaa0cbcf44cf075c62aaa42121e3f'
* commit '88bd7fdc821aaa0cbcf44cf075c62aaa42121e3f':
  Drop DCTELEM typedef

Conflicts:
	libavcodec/alpha/dsputil_alpha.h
	libavcodec/alpha/motion_est_alpha.c
	libavcodec/arm/dsputil_init_armv6.c
	libavcodec/bfin/dsputil_bfin.h
	libavcodec/bfin/pixels_bfin.S
	libavcodec/cavs.c
	libavcodec/cavsdec.c
	libavcodec/dct-test.c
	libavcodec/dnxhdenc.c
	libavcodec/dsputil.c
	libavcodec/dsputil.h
	libavcodec/dsputil_template.c
	libavcodec/eamad.c
	libavcodec/h264_cavlc.c
	libavcodec/h264idct_template.c
	libavcodec/mpeg12.c
	libavcodec/mpegvideo.c
	libavcodec/mpegvideo.h
	libavcodec/mpegvideo_enc.c
	libavcodec/ppc/dsputil_altivec.c
	libavcodec/proresdsp.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-23 17:44:56 +01:00
Diego Biurrun
88bd7fdc82 Drop DCTELEM typedef
It does not help as an abstraction and adds dsputil dependencies.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2013-01-22 18:32:56 -08:00
Stefano Sabatini
30a40d4a55 lavf/segment: provide link to HTML M3U8 draft, also fix mentioned version in docs 2013-01-22 20:25:45 +01:00
Stefano Sabatini
7694533fda doc/muxers: remove outdated comment about live flags for the segment muxer
The live flags is currently unused, but still kept for backward
compatibility reasons (and in case it turns to be useful again for
whatever reason).
2013-01-22 20:25:33 +01:00
Michael Niedermayer
2338af0fb4 doc: document aresample:first_pts
Documentation copied from asyncts, the options are supposed to do
the same thing. If not please submit a testcase where they differ
so we can fix it.

Disscussed-with: saste on IRC
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-22 01:38:55 +01:00
Michael Niedermayer
03a82d588b doc/swr: More verbose description of the force resample flag.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-21 22:45:58 +01:00
Michael Niedermayer
c5f9cc9636 doc/swr: elaborate on what the LFE mix level is.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-21 21:48:34 +01:00
Michael Niedermayer
ace74b2122 doc/swr: typo fix
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-21 21:46:48 +01:00
Michael Niedermayer
e0f208a637 doc/swr: docu lfe mix level unit & range
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-21 21:44:39 +01:00
Michael Niedermayer
4606183262 doc/swr: try to fix non english "inclusively included between"
Googling this term has 9 hits, 7 from ffmpeg

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-21 21:41:07 +01:00
Michael Niedermayer
83440f40ba doc/swr: Mention that the internal sample format is choosen automatically if not set
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-21 21:16:43 +01:00
Michael Niedermayer
2dd07518af docs/swr: better used_channel_count docs
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-21 21:14:27 +01:00
Stefano Sabatini
0f2d4eddd8 doc/muxers: extend and clarify documentation for the segment muxer time options 2013-01-21 19:26:44 +01:00
Paul B Mahol
6ea8a830e8 afade filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-01-21 15:20:42 +00:00
Paul B Mahol
098d3891be EVRC decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-01-21 10:24:45 +00:00
Carl Eugen Hoyos
cb1c69c81d Clarify that the recommended audio squeezing/stretching filter is aresample.
Fixes ticket #2036.
2013-01-20 23:26:35 +01:00
Nicolas George
beb5d8f07d ffmpeg: accept "chapters" as forced key frames.
Allow to force a key frame at the beginning of each chapter.
2013-01-19 15:22:34 +01:00
James Almer
4f8b73129b doc/Makefile: Fix make docclean
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-19 14:32:29 +01:00
Carl Eugen Hoyos
a5faae46a3 APIchanges: Add git version and fix version for avfilter_ref_get_channels(). 2013-01-19 10:45:34 +01:00
Carl Eugen Hoyos
371cf6ee9a Add APIchanges entry for av_codec_get_tag2(). 2013-01-19 10:42:27 +01:00
Stefano Sabatini
040c461ccf doc/muxers: apply minor cosmetics to segment option descriptions 2013-01-19 00:51:28 +01:00
Stefano Sabatini
d4890c1068 lavf/segment: add support to segment list file entries sliding window listing
In particular, should fix trac ticket #1842.
2013-01-19 00:22:58 +01:00
Stefano Sabatini
24bbc416a4 doc/filters: create a dedicated "Examples" subsection for fade, and use @itemize 2013-01-18 23:18:01 +01:00
Stefano Sabatini
2852bd704a lavfi/fade: accept shorthand syntax 2013-01-18 23:17:47 +01:00
Stefano Sabatini
44d5a28b7d doc/filters: avoid @example for showing the drawbox shorthand syntax
Improve overall consistency.
2013-01-18 19:03:58 +01:00
Angelo Haller
e7a39e163d examples/demuxing: free AVPacket after usage
Fix leak.
2013-01-15 23:37:30 +01:00
Micah Galizia
10315b1cb8 doc/protocols: document HTTP protocol cookie support
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2013-01-15 22:26:44 +01:00
Michael Niedermayer
e7e0186eeb Merge commit 'ab2ad8bd56882c0ea160b154e8b836eb71abc49d'
* commit 'ab2ad8bd56882c0ea160b154e8b836eb71abc49d':
  lavf: Add functions for SRTP decryption/encryption
  lavu: Add an API for calculating HMAC (RFC 2104)

Conflicts:
	doc/APIchanges
	libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-15 15:57:33 +01:00
Martin Storsjö
8ee288d258 lavu: Add an API for calculating HMAC (RFC 2104)
This supports HMAC-MD5 and HMAC-SHA1 for now, other hashes are
simple to add.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-01-15 11:54:19 +02:00
Carl Eugen Hoyos
5ce023b790 Fix color filter example.
Found-by: johnd and Paul B Mahol
2013-01-15 00:14:35 +01:00
Carl Eugen Hoyos
c29c7c1470 The c99-to-c89 binaries are now hosted on videolan.org. 2013-01-14 16:28:44 +01:00
Michael Niedermayer
8ee7b3881b Merge commit '44e065d56c87d6a9d0effccec5f31517f72924ec'
* commit '44e065d56c87d6a9d0effccec5f31517f72924ec':
  vdpau: Add context and common helpers for hwaccel support

Conflicts:
	Changelog
	doc/APIchanges
	libavcodec/vdpau.h
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-14 13:29:00 +01:00
Michael Niedermayer
48a7981e6f doc/examples: fix assignments in if()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-14 05:05:20 +01:00
Stefano Sabatini
e8bab4c6fc ffplay: extend documentation for the -vf option
In particular, make it consistent with the ffmpeg docs.
2013-01-13 16:03:13 +01:00
Stefano Sabatini
98247e3368 lavf: clarify/extend documentation for AVFormatContext::analyzeduration
"analyzeduration" is not used to detect the input duration, but to
specify the max probe data duration. Fix option description and related
doc entry accordingly.
2013-01-13 15:09:09 +01:00
Stefano Sabatini
89ef586867 doc/ffmpeg: extend documentation for the -filter options and -af/vf aliases 2013-01-13 15:09:09 +01:00
Stefano Sabatini
c499d45c6b doc/texipod: add rule to correctly interpret @ref{ANCHOR,XREF,SECTION_NAME,...}
This allows to name an internal reference in the POD/MAN output.
2013-01-13 15:09:08 +01:00
Rémi Denis-Courmont
44e065d56c vdpau: Add context and common helpers for hwaccel support
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-01-13 14:41:27 +01:00
Michael Niedermayer
1c14c3412e dec/developer: Add Valgrind / Address Sanitizer to the patch checklist
Reviewed-by: saste
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-12 18:23:32 +01:00
Michael Niedermayer
dae382b5b2 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Add version bump and APIchanges entry for Add AV_PIX_FMT_VDPAU.
  pixfmt: add picture format for VDPAU

Conflicts:
	doc/APIchanges
	libavutil/pixfmt.h
	libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-12 13:42:42 +01:00
Diego Biurrun
f89466ad6f Add version bump and APIchanges entry for Add AV_PIX_FMT_VDPAU.
Also fix a lavu version typo in APIchanges.
2013-01-12 12:28:12 +01:00
Stefano Sabatini
4a0d1b2159 doc/protocols: improve wording of a sentence in http docs
Suggested-By: Alexander Strasser
2013-01-12 11:02:12 +01:00
Stefano Sabatini
0edb440282 doc/ffserver: remove painfully outdated "What do I need?" section 2013-01-12 10:53:22 +01:00
Stefano Sabatini
df018207f9 doc/ffserver: remove paragraph in the introductory blurb
The paragraph is about what ffserver is not and where to look for other
information, but is pretty redundant and distracting, especially
considering the new organization of the documentation.
2013-01-12 10:52:32 +01:00
Stefano Sabatini
cab85051c0 doc/ffserver: rework introducing paragraphs of the "description" chapter
In particular, add some markup, fix empty line, and merge it with "How
does it work?" section.
2013-01-12 10:49:11 +01:00
Stefano Sabatini
0a7cd74043 doc/protocols: document http protocol options 2013-01-12 10:41:56 +01:00
Michael Niedermayer
dc60ecdbeb doc: add noise shaping dithers
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-09 23:28:08 +01:00
Carl Eugen Hoyos
c20ce9ad69 Add -movflags rtphint documentation. 2013-01-09 23:13:40 +01:00
Michael Niedermayer
4765f63538 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  xan: Convert to bytestream2
  oggenc: add a page_duration option and deprecate the pagesize option
  x86: lavr: add SSE2/AVX dither_int_to_float()

Conflicts:
	libavcodec/xan.c
	libavformat/oggenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-09 12:30:14 +01:00
Michael Niedermayer
75afbe2ab4 Merge commit '1fb8f6a44f06e48386450fe0363aefc02583d24a'
* commit '1fb8f6a44f06e48386450fe0363aefc02583d24a':
  x86: lavr: add SSE2 quantize() for dithering
  doc/APIchanges: fill in missing dates and hashes.
  rtpdec_vp8: Request a keyframe if RTP packets are lost

Conflicts:
	doc/APIchanges

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-09 12:14:56 +01:00
Justin Ruggles
59220d559b oggenc: add a page_duration option and deprecate the pagesize option
This uses page duration instead of byte size to determine when to buffer
the page. Also, it tries to avoid continued pages by buffering the current
page if there are already packets in the page and adding the next packet
would require it to be continued on a new page. This can improve seeking
performance.

The default page duration is 1 second, which is much saner than filling
all page segments by default.
2013-01-08 15:42:36 -05:00
Justin Ruggles
142c39097c doc/APIchanges: fill in missing dates and hashes. 2013-01-08 14:51:30 -05:00
Michael Niedermayer
249fca3df9 Merge commit '074a00d192c0e749d677b008b337da42597e780f'
* commit '074a00d192c0e749d677b008b337da42597e780f':
  lavr: add a public function for setting a custom channel map
  lavr: typedef internal structs in internal.h
  doc: Extend commit message section

Conflicts:
	doc/APIchanges
	doc/developer.texi

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-08 12:56:41 +01:00
Michael Niedermayer
3a0bac27b3 Merge commit 'ac2603be28602bea76cf38bdbf37aead0dc2979a'
* commit 'ac2603be28602bea76cf38bdbf37aead0dc2979a':
  doc: Mention memory allocation in the fuzz testing section

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-08 12:49:02 +01:00
Michael Niedermayer
32cf37d097 Merge commit 'dc3e12d1cb65d74fb120197ce869a205718b6715'
* commit 'dc3e12d1cb65d74fb120197ce869a205718b6715':
  doc: Mention zzuf in the fuzz testing section

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-08 12:46:59 +01:00
Michael Niedermayer
adc7296aa5 Merge commit 'b5f9b9ac3681acb06d95530f34660ba9fe225305'
* commit 'b5f9b9ac3681acb06d95530f34660ba9fe225305':
  doc: Merge disjointed bits about emailing patches

Conflicts:
	doc/developer.texi

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-08 12:45:24 +01:00
Michael Niedermayer
3bca69c2a8 Merge commit '9a00374cb4512a58a1fee366b850dfa87c76e1f3'
* commit '9a00374cb4512a58a1fee366b850dfa87c76e1f3':
  doc: Fix a few typos in the developer documentation
  xwma: Remove unused variable
  asfdec: Fix printf format string length modifier

Conflicts:
	doc/developer.texi

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-08 12:34:14 +01:00
Justin Ruggles
074a00d192 lavr: add a public function for setting a custom channel map
This allows reordering, duplication, and silencing of input channels.
2013-01-07 21:49:06 -05:00
Derek Buitenhuis
ac2603be28 doc: Mention memory allocation in the fuzz testing section
It's obviously undesireable to blindly allocate memory based on
a damaged 'size' value, for example.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-01-07 14:55:49 -05:00
Derek Buitenhuis
dc3e12d1cb doc: Mention zzuf in the fuzz testing section
It's pretty much the best tool for the job, and it's what we
all use now anyway.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-01-07 14:55:49 -05:00
Derek Buitenhuis
6042a12174 doc: Extend commit message section
If a bug exists on the tracker, its ID should always be included
in fix messages.

Also, any relevant bug fixes should be CC'd to libav-stable, so
we can actually track what needs to be backported, instead of
just randomly combing the git history and old CVEs.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-01-07 14:55:49 -05:00
Derek Buitenhuis
b5f9b9ac36 doc: Merge disjointed bits about emailing patches
We obviously prefer git-send-email(1), and the disjointed nature
of the two statements was misleading.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-01-07 14:55:48 -05:00
Derek Buitenhuis
9a00374cb4 doc: Fix a few typos in the developer documentation
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-01-07 14:55:48 -05:00
Michael Niedermayer
f6ef62eb7f doc/ffmpeg-resampler: Try to document async
Improvements welcome!

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-06 17:47:49 +01:00
Diego Biurrun
a0c5917f86 Drop Snow codec
Snow is a toy codec with no real-world use and horrible code.
2013-01-06 16:30:02 +01:00
Peter Ross
3d0994be2f Megalux Frame demuxer 2013-01-06 13:58:15 +11:00
Michael Niedermayer
2163c8828d Merge commit 'b14e89b3c5e6d7f6401a2ff1e3d198fa902e988a'
* commit 'b14e89b3c5e6d7f6401a2ff1e3d198fa902e988a':
  Prepare for 9 Release.
  Update release notes for the 9 release.
  avprobe: also output dar/par if only defined in stream

Conflicts:
	RELEASE
	avprobe.c
	doc/RELEASE_NOTES

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-05 13:27:59 +01:00
Stefano Sabatini
0140566359 lavfi: add histeq filter
This is a port of virtual dub's histogram equalization filter by Donald
A. Graft. Based on the work by Jérémy Tran <tran.jeremy.av@gmail.com>,
done for SOCIS 2012.
2013-01-05 10:25:32 +01:00
Stefano Sabatini
172505b8bc lavfi: add kerndeint filter
This is a port of the kerndeint filter (libmpcodecs/vf_kerndeint) by
Donal A. Graft (original avisynth plugin author), and is based on the
work by Jérémy Tran <tran.jeremy.av@gmail.com> done for SOCIS 2012.
2013-01-05 10:25:32 +01:00
Anton Khirnov
a5d8c9243a Update release notes for the 9 release.
Add a paragraph about MSVC and mention 24-bit FLAC encoding.
2013-01-04 17:50:34 +01:00
Alexander Strasser
ac25b31ede lswr: Improve default resampler's default parameters
After making some blind tests on a small collection of music
samples for home usage. It turned out that the default cutoff
was too low.

The impact of filter_size was not clearly distinguishable (the
results were on the edge) with the music samples but turned out
to be clearly audible in some synthetic samples.

Thanks to Daniel for helping out with the listening tests.

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
2013-01-04 16:47:57 +01:00
Stefano Sabatini
cb8d3965fd lavfi/yadif: add support to named constants 2013-01-04 11:48:54 +01:00
Stefano Sabatini
f7dc6aa6b1 lavfi/yadif: add support to named options and options introspection
Also rename the "enable_auto" field to "deint", to match the name of the
option.
2013-01-04 11:48:54 +01:00
Lou Logan
091ce6bcb2 doc/faq: add -start_number example
Also add example showing cat piping images to ffmpeg.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2013-01-02 23:52:35 +01:00
Nicolas George
e4f14c32b9 examples/muxing: improve error messages.
Illustrate the use of return values, av_err2str and
avcodec_get_name.
2013-01-02 17:42:00 +01:00
Stefano Sabatini
82deb0c42e doc/muxers: adopt new -codec:SPEC syntax in segment example 2013-01-02 16:30:11 +01:00
Stefano Sabatini
8bbe9d90fa doc/muxers: add a dedicated section for segment examples 2013-01-02 16:29:58 +01:00
Stefano Sabatini
fd44dfb29d doc/muxers: fix typos in the segment chapter 2013-01-02 16:29:42 +01:00
Nicolas George
ecda1d3cbe lavf: add data: URI scheme. 2013-01-01 19:29:04 +01:00
Clément Bœsch
c1abfcd7d6 doc/resampler: remove .html from link text. 2013-01-01 10:59:51 +01:00
Paul B Mahol
9a74282644 Sony Wave64 muxer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-12-31 07:10:57 +00:00
Clément Bœsch
faa94061dd Add SubViewer v1 subtitles demuxer and decoder. 2012-12-31 00:01:58 +01:00
Clément Bœsch
7b43402724 Add PJS subtitles demuxer and decoder. 2012-12-30 23:55:28 +01:00
Clément Bœsch
a1e4e352a6 Add AQTitle subtitles demuxer. 2012-12-30 23:37:14 +01:00
Clément Bœsch
725d6c615c Add MPlayer subtitles demuxer. 2012-12-30 23:09:49 +01:00
Clément Bœsch
5c68aae908 Add VPlayer subtitles demuxer and decoder.
Note that the linebreaks text codec option (but not the feature) has
been removed; its main goal was to allow demuxers to configure the text
decoder (and not meant to be used by users), but the AVOption are not a
viable solution. This is solved differently in this commit.
2012-12-30 22:46:42 +01:00
Clément Bœsch
5f02844c8d Add MPL2 subtitles demuxer and decoder. 2012-12-30 22:37:25 +01:00
Mark Himsley
8997a0fa79 lavfi/tinterlace: add low-pass-filter for top/bottom interleave modes
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-12-30 15:19:23 +01:00