Commit Graph

48 Commits

Author SHA1 Message Date
Anton Khirnov
5e8d2e337e lavf: deprecate AVStream.quality.
AVStream is no place for it and it's unused outside of ffmpeg anyway.
2011-07-06 20:10:41 +02:00
Michael Niedermayer
0af8a71d66 swscale: fix JPEG-range YUV scaling artifacts.
YUV planes were marked as uint16_t, but they contained signed data.
Fixes issue 1108 and 675.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-06-14 09:46:49 -04:00
Baptiste Coudurier
7e19a6e868 movenc: always write esds descriptor length using 4 bytes.
ipod shuffle doesn't support anything else.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-13 07:38:54 +02:00
Vitor Sessak
ecc297308f lavf/utils: fix ff_interleave_compare_dts corner case.
This should fix behavior introduced by commit
96573c0d76. Av_rescale_rnd() is not
lossless so if two timestamps are equal after being rescaled they are
not always actually identical. This patch use av_compare_ts() to get
always a correct result.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-10 07:53:19 -04:00
Anton Khirnov
f8fec05052 mpegtsenc: make PMT PID really start on pmt_start_pid 2011-04-28 07:26:40 +02:00
Justin Ruggles
79ee8977c2 ac3enc: correct the flipped sign in the ac3_fixed encoder 2011-04-26 17:19:37 -04:00
Diego Biurrun
fd0c3403f6 Update regtest checksums after revision 6001dad.
The string "FFmpeg" was replaced by "Libav" in metadata that
got encoded in file headers.
2011-04-17 22:46:42 +02:00
Vitor Sessak
96573c0d76 lavf/utils.c: Order packets with identical PTS by stream index.
This allows for more reproducible results when using multi-threading.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-12 19:06:26 -04:00
Justin Ruggles
e05a3ac713 ac3enc: select bandwidth based on bit rate, sample rate, and number of
full-bandwidth channels.

This reduces high-frequency artifacts and improves the quality of the lower
frequency audio at low bit rates.
2011-04-03 20:59:14 -04:00
Mans Rullgard
79997def65 ac3enc: use generic fixed-point mdct
This makes the AC3 encoder use the shared fixed-point MDCT rather
than its own implementation.  The checksum changes are due to
different rounding in the MDCT.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-04-03 19:01:53 +01:00
Justin Ruggles
e6e9823488 Add apply_window_int16() to DSPContext with x86-optimized versions and use it
in the ac3_fixed encoder.
2011-03-22 21:08:30 -04:00
Justin
323e6fead0 ac3enc: do not right-shift fixed-point coefficients in the final MDCT stage.
This increases the accuracy of coefficients, leading to improved quality.
Rescaling of the coefficients to full 25-bit accuracy is done rather than
offsetting the exponent values. This requires coefficient scaling to be done
before determining the rematrixing strategy. Also, the rematrixing strategy
calculation must use 64-bit math to prevent overflow due to the higher
precision coefficients.
2011-03-14 08:45:26 -04:00
Justin Ruggles
50d7140441 ac3enc: change default floor code to 7.
This is to match the value in every (E-)AC-3 file from commercial sources.
It has a negligible effect on audio quality.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-15 21:40:42 +00:00
Justin Ruggles
c3beafa0f1 ac3enc: Change EXP_DIFF_THRESHOLD to 500.
This patch changes the exponent difference threshold in the exponent
strategy decision function of the AC-3 encoder.  I tested lowering in
increments of 100.  From 1000 down to 500 generally increased in quality
with each step, but 400 was generally much worse.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-02 20:00:43 +00:00
Mans Rullgard
79dca23dc2 Update mpegts test reference
The output was changed by a7827a17c6.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-28 17:02:54 +00:00
Georgi Chorbadzhiyski
535638b55f mpegtsenc: set reserved bits to 1 in PCR field
The reserved bits between PCR base and extension fields must be
set to 1.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-26 00:02:42 +00:00
Justin Ruggles
a4f5af13fb Add regression test for stereo s16le in voc.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-19 12:51:42 +00:00
Justin Ruggles
ec44dd5fc2 Change the default dB-per-bit code from 2 to 3.
This gives slightly better quality in PEAQ tests.
Code 3 gives a dBpb value of 2816 = -132dB (128 psd units = -6dB), which
corresponds to 22 bits. Since the exponents have an offset applied, the
16-bit source looks like 24-bit source to the bit allocation routine.
So using dBpb code=3 is a closer match to the exponent range.

Regression test refs updated for acodec-ac3, lavf-rm, and seek-ac3_rm.

Originally committed as revision 26144 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-29 19:17:22 +00:00
Justin Ruggles
295ab2af6e Change FIX15() back to clipping to -32767..32767.
This avoids a 16-bit overflow in mdct512() due to a -32768 value in costab.
References updated for acodec-ac3, lavf-rm, and seek-ac3_rm tests.
Thanks to Måns Rullgård for finding the bug.

Originally committed as revision 26071 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-21 21:18:58 +00:00
Justin Ruggles
8c634b707b Update the test references for lavf-rm and seek-ac3_rm.
The references changed due to r25956.

Originally committed as revision 26004 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-14 16:14:52 +00:00
Michael Niedermayer
94bdb1f80c Avoid negative SCR in mpeg ps muxer.
Fixes a scr issue reported with dvdauthor ([FFmpeg-user] FFMPEG encoded MPEG-2 video causes error in DVDAuthor)

Originally committed as revision 25512 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-16 21:31:31 +00:00
Baptiste Coudurier
a7ba165a0c Update gxf regression tests because of r25399
Originally committed as revision 25400 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-07 19:37:37 +00:00
Reuben Martin
ad4c3c6840 In gxf muxer, fix flt entry offset, patch by Reuben Martin, reuben dot m at gmail dot com
Originally committed as revision 25395 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-07 19:15:35 +00:00
Michael Niedermayer
9b272e3274 Init SCR in mpeg muxer based on first DTS.
This fixes issues if the first DTS is far away from 0.

Originally committed as revision 25383 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-07 00:32:22 +00:00
Vitor Sessak
6b85316bd2 Test decoding in fate-lavf-gif
Originally committed as revision 25012 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-31 17:55:31 +00:00
Vitor Sessak
f5d4fc43bb PNG image regression testing
Originally committed as revision 25011 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-31 17:53:48 +00:00
Thierry Foucu
591db22dff gxfenc: Fix ES name in the UMF media description, by using strlen instead of sizeof
Patch by Thierry Foucu, tfoucu at gmail

Originally committed as revision 24379 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-21 07:46:02 +00:00
Baptiste Coudurier
29054fdd0a In mxf muxer, fix last b frame temporal offset
Originally committed as revision 23967 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 08:35:47 +00:00
David Conrad
e7ddafd515 matroskaenc: Don't write a second seekhead for the clusters; mkvalidate agrees
with me that it's unnecessary.

Originally committed as revision 23478 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 22:41:11 +00:00
James Zern
ac9baa716b matroskaenc: Mux clusters better
Start them on keyframes when reasonable, and delay writing audio packets
to help ensure that there's audio samples available for the first frame in
clusters.

Patch by James Zern <jzern at google>

Originally committed as revision 23473 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 22:40:50 +00:00
David Conrad
7bb83d8ddf matroskaenc: Write codec time base as default duration for video tracks.
This isn't exactly semantically equivalent, but the field has already been
long abused to mean this, and writing it helps in determining a decent cfr
time base when transcoding from a mkv where the video codec stores none (VP8).

Originally committed as revision 23284 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-24 08:58:19 +00:00
David Conrad
85e86b6810 Update regression tests after removing track timecode scale from mkvenc
Originally committed as revision 23248 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-22 02:13:01 +00:00
Baptiste Coudurier
95ca3b1e20 In ogg muxer, pack multiple frames into one page, much lower overhead
Originally committed as revision 23231 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-21 21:38:54 +00:00
Michael Niedermayer
008593be52 Change default for bidir_refine to 1.
Originally committed as revision 22778 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-02 14:08:51 +00:00
Baptiste Coudurier
ab379c671f 10l, update ref value for ffm since default flags changed and are stored in the file
Originally committed as revision 22673 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-25 20:45:26 +00:00
Michael Niedermayer
bd57cae86f use mpeg2 quantization bias for mjpeg.
this seems to improve RD performance.

Originally committed as revision 22550 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-15 16:37:02 +00:00
Baptiste Coudurier
7082ea56c8 mpegts vbr muxing, activated when muxing rate is not supplied by the
user.

Originally committed as revision 22352 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 23:46:19 +00:00
Baptiste Coudurier
677a1144b0 Start continuity counter at 0 for pmt as well
Originally committed as revision 22350 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 22:44:03 +00:00
Baptiste Coudurier
d73a458f27 Start continuity counter at 0 for streams
Originally committed as revision 22344 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 20:59:00 +00:00
Baptiste Coudurier
9169174fd6 10l typo, fix ts total bit rate computation
Originally committed as revision 22343 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 20:57:42 +00:00
Måns Rullgård
d211b29e05 regtest: place image sequence outputs in separate directories
Originally committed as revision 22282 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-07 19:25:58 +00:00
Måns Rullgård
1dd9ff871a Place regtest-pixfmt output files in separate dir
This test generates many output files, and keeping them separate
is convenient.

Originally committed as revision 22157 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-02 21:59:02 +00:00
Måns Rullgård
cc3e2472f3 Place regression test output files in subdirs per family
Originally committed as revision 22155 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-02 21:41:52 +00:00
Yann Coupin
8d819221db Correctly increment continuity_counter in PCR packets.
Patch by Yann Coupin, yann.coupin+ffmpeg gmail

Originally committed as revision 22020 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-24 10:56:13 +00:00
Michael Niedermayer
f575f08ccb Correct opts calulation in ffmpeg.c.
This correct the stop point for demuxing with -vcodec copy and -t as well as
packet interleaving. (we already diddrop packets but kept demuxing them
for too long due to opts being wrong)
the change to ffm is due to 2 packets with timestamp 0 being stored
in different order.

Originally committed as revision 21626 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-03 15:09:04 +00:00
Michael Niedermayer
f8ccf72005 Check pkt.pts against the recording time.
This fixes at least ogg encoding with -t where the file was slightly too long.

Originally committed as revision 21598 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-01 22:08:45 +00:00
David Conrad
ac1e18cb78 Update regression tests after r21372
Originally committed as revision 21374 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-21 23:35:26 +00:00
Måns Rullgård
eca478c317 regtest: split reference files allowing tests to run individually
With this change, the output is checked immediately after each test
has run.  This means commands like "make regtest-mpeg2" can now be
used to run a single test and get meaningful results.

By default, make will abort if any test fails.  To run all tests
regardless, use make -k.

Originally committed as revision 21254 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 20:18:13 +00:00