[FFmpeg-devel] [PATCH] Fig bug when incrementing initial_prog_date_time when
From 8b7499f6ddb32bd1f9ee5f2413bf30664af58799 Mon Sep 17 00:00:00 2001 From: Jesper Ek Date: Wed, 7 Dec 2016 15:56:33 +0100 Subject: [PATCH] Fig bug when incrementing initial_prog_date_time when removing segments initial_prog_date_time shouldn't be adjusted when deleting segments from disk, but rather when segments are removed from the playlist. --- libavformat/hlsenc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c index acf3a30..d03cf02 100644 --- a/libavformat/hlsenc.c +++ b/libavformat/hlsenc.c @@ -185,7 +185,6 @@ static int hls_delete_old_segments(HLSContext *hls) { segment = hls->old_segments; while (segment) { playlist_duration -= segment->duration; -hls->initial_prog_date_time += segment->duration; previous_segment = segment; segment = previous_segment->next; if (playlist_duration <= -previous_segment->duration) { @@ -414,6 +413,7 @@ static int hls_append_segment(struct AVFormatContext *s, HLSContext *hls, double if (hls->max_nb_segments && hls->nb_entries >= hls->max_nb_segments) { en = hls->segments; +hls->initial_prog_date_time += en->duration; hls->segments = en->next; if (en && hls->flags & HLS_DELETE_SEGMENTS && !(hls->flags & HLS_SINGLE_FILE || hls->wrap)) { -- 2.10.0 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH] avutil: Added selftest for libavutil/audio_fifo.c
Signed-off-by: Thomas Turner --- libavutil/Makefile | 1 + libavutil/tests/audio_fifo.c | 196 + tests/fate/libavutil.mak | 4 + tests/ref/fate/audio_fifo| 228 +++ 4 files changed, 429 insertions(+) create mode 100644 libavutil/tests/audio_fifo.c create mode 100644 tests/ref/fate/audio_fifo diff --git a/libavutil/Makefile b/libavutil/Makefile index 9841645..2dd91b8 100644 --- a/libavutil/Makefile +++ b/libavutil/Makefile @@ -182,6 +182,7 @@ SKIPHEADERS-$(CONFIG_OPENCL) += opencl.h TESTPROGS = adler32 \ aes \ atomic \ +audio_fifo \ avstring\ base64 \ blowfish\ diff --git a/libavutil/tests/audio_fifo.c b/libavutil/tests/audio_fifo.c new file mode 100644 index 000..6dffe85 --- /dev/null +++ b/libavutil/tests/audio_fifo.c @@ -0,0 +1,196 @@ +/* + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include +#include +#include "libavutil/audio_fifo.c" +#include "libavutil/audio_fifo.h" +#include "libavutil/error.h" + +#define MAX_CHANNELS32 + +#define ERROR(str)\ +fprintf(stderr, "%s\n", str); \ +exit(1); + +typedef struct TestStruct { +const enum AVSampleFormat format; +const int nb_ch; +void const *data_planes[MAX_CHANNELS]; +int nb_samples_pch; +} TestStruct; + +static const uint8_t data_U8 [] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }; +static const int16_t data_S16[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }; +static const float data_FLT[] = {0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0}; + + +static const TestStruct test_struct[] = { +{.format = AV_SAMPLE_FMT_U8 , .nb_ch = 1, .data_planes = {data_U8 , }, .nb_samples_pch = 12}, +{.format = AV_SAMPLE_FMT_U8P , .nb_ch = 2, .data_planes = {data_U8 , data_U8 +6, }, .nb_samples_pch = 6 }, +{.format = AV_SAMPLE_FMT_S16 , .nb_ch = 1, .data_planes = {data_S16, }, .nb_samples_pch = 12}, +{.format = AV_SAMPLE_FMT_S16P , .nb_ch = 2, .data_planes = {data_S16, data_S16+6, }, .nb_samples_pch = 6 }, +{.format = AV_SAMPLE_FMT_FLT , .nb_ch = 1, .data_planes = {data_FLT, }, .nb_samples_pch = 12}, +{.format = AV_SAMPLE_FMT_FLTP , .nb_ch = 2, .data_planes = {data_FLT, data_FLT+6, }, .nb_samples_pch = 6 } +}; + +static void* allocate_memory(size_t size) +{ +void *ptr = malloc(size); +if (ptr == NULL){ +fprintf(stderr, "failed to allocate memory!\n"); +exit(1); +} +return ptr; +} + +static void print_audio_bytes(const TestStruct *test_sample, void **data_planes, int nb_samples) +{ +int p, b, f; +int byte_offset = av_get_bytes_per_sample(test_sample->format); +int buffers = av_sample_fmt_is_planar(test_sample->format) + ? test_sample->nb_ch : 1; +int line_size= (buffers > 1) ? nb_samples * byte_offset + : nb_samples * byte_offset * test_sample->nb_ch; +for (p = 0; p < buffers; ++p){ +for(b = 0; b < line_size; b+=byte_offset){ +for (f = 0; f < byte_offset; f++){ +int order = !HAVE_BIGENDIAN ? (byte_offset - f - 1) : f; +printf("%02x", *((uint8_t*)data_planes[p] + b + order)); +} +putchar(' '); +} +putchar('\n'); +} +} + +static int read_samples_from_audio_fifo(AVAudioFifo* afifo, void ***output, int nb_samples) +{ +int i, planes; +int samples= FFMIN(nb_samples, afifo->nb_samples); +int tot_elements = !(planes = av_sample_fmt_is_planar(afifo->sample_fmt)) + ? samples : afifo->channels * samples; +void **data_planes = allocate_mem
[FFmpeg-devel] [PATCH] avutil: Improved test coverage for avstring.c
Signed-off-by: Thomas Turner --- libavutil/tests/avstring.c | 25 - 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/libavutil/tests/avstring.c b/libavutil/tests/avstring.c index 1242b3f..1e22b4f 100644 --- a/libavutil/tests/avstring.c +++ b/libavutil/tests/avstring.c @@ -25,7 +25,7 @@ int main(void) { int i; -char *fullpath; +char *fullpath, *ptr; static const char * const strings[] = { "''", "", @@ -54,6 +54,8 @@ int main(void) "'\\fo\\o:': blahblah", "\\'fo\\o\\:': foo ' :blahblah" }; +const char *haystack = "Education consists mainly in what we have unlearned."; +const char * const needle[] = {"learned.", "unlearned.", "Unlearned"}; printf("Testing av_get_token()\n"); for (i = 0; i < FF_ARRAY_ELEMS(strings); i++) { @@ -79,5 +81,26 @@ int main(void) TEST_APPEND_PATH_COMPONENT("path", "/comp", "path/comp"); TEST_APPEND_PATH_COMPONENT("path/", "/comp", "path/comp"); TEST_APPEND_PATH_COMPONENT("path/path2/", "/comp/comp2", "path/path2/comp/comp2"); + +/*Testing av_strnstr()*/ +#define TEST_STRNSTR(haystack, needle, hay_length, expected) \ +ptr = av_strnstr(haystack, needle, hay_length); \ +if (ptr != expected){ \ +printf("%s should equal: %s\n", ptr, expected); \ +} +TEST_STRNSTR(haystack, needle [0], strlen(haystack), haystack+44); +TEST_STRNSTR(haystack, needle [1], strlen(haystack), haystack+42); +TEST_STRNSTR(haystack, needle [2], strlen(haystack), NULL ); +TEST_STRNSTR(haystack, strings[1], strlen(haystack), haystack ); + +/*Testing av_d2str()*/ +#define TEST_D2STR(value, expected) \ +ptr = av_d2str(value); \ +if(strcmp(ptr, expected) != 0){ \ +printf("av_d2str failed to convert: %lf to string: %s", (double)value, expected); \ +} +TEST_D2STR(0 , "0.00"); +TEST_D2STR(-1.2333234, "-1.233323"); +TEST_D2STR(-1.2333237, "-1.233324"); return 0; } -- 1.9.1 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH 1/1] libavcodec/movtextdec.c: fixing decoding for UTF-8 (ticket 6021)
On Sat, Dec 17, 2016 at 03:39:02AM +, Erik Bråthen Solem wrote: [...] > @@ -491,7 +501,8 @@ static int mov_text_decode_frame(AVCodecContext *avctx, > > for (size_t i = 0; i < box_count; i++) { > if (tsmb_type == box_types[i].type) { > -if (m->tracksize + m->size_var + box_types[i].base_size > > avpkt->size) > +if (m->tracksize + m->size_var + > +ox_types[i].base_size > avpkt->size) do you mean box_types, theres no ox_types identifer (at least not in git master) [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB I know you won't believe me, but the highest form of Human Excellence is to question oneself and others. -- Socrates signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH 2/5] libautil: add support for AV_HWDEVICE_TYPE_D3D11VA
On Fri, 16 Dec 2016 19:04:33 +0100 Hendrik Leppkes wrote: > > IMHO this mutex should just generally go away, as you can simply lock > externally if you need to, it feels rather ugly and hackish to add it > here. Add to that Antons work to make hwaccel with threads fully > synchronized to the calling thread, and everything can be achieved > with external locking if you want multiple threads using the same > device. Where is the thread-safety or unsafety of these things defined? MIO it's completely insane not to let at least some AVHWFramesContext functions be thread-safe. ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] avutil: Improved test coverage for avstring.c
On Sat, Dec 17, 2016 at 03:23:05AM -0800, Thomas Turner wrote: > Signed-off-by: Thomas Turner > --- > libavutil/tests/avstring.c | 25 - > 1 file changed, 24 insertions(+), 1 deletion(-) > > diff --git a/libavutil/tests/avstring.c b/libavutil/tests/avstring.c > index 1242b3f..1e22b4f 100644 > --- a/libavutil/tests/avstring.c > +++ b/libavutil/tests/avstring.c > @@ -25,7 +25,7 @@ > int main(void) > { > int i; > -char *fullpath; > +char *fullpath, *ptr; > static const char * const strings[] = { > "''", > "", > @@ -54,6 +54,8 @@ int main(void) > "'\\fo\\o:': blahblah", > "\\'fo\\o\\:': foo ' :blahblah" > }; > +const char *haystack = "Education consists mainly in what we have > unlearned."; > +const char * const needle[] = {"learned.", "unlearned.", "Unlearned"}; > > printf("Testing av_get_token()\n"); > for (i = 0; i < FF_ARRAY_ELEMS(strings); i++) { > @@ -79,5 +81,26 @@ int main(void) > TEST_APPEND_PATH_COMPONENT("path", "/comp", "path/comp"); > TEST_APPEND_PATH_COMPONENT("path/", "/comp", "path/comp"); > TEST_APPEND_PATH_COMPONENT("path/path2/", "/comp/comp2", > "path/path2/comp/comp2"); > + > +/*Testing av_strnstr()*/ > +#define TEST_STRNSTR(haystack, needle, hay_length, expected) \ > +ptr = av_strnstr(haystack, needle, hay_length); \ > +if (ptr != expected){ \ > +printf("%s should equal: %s\n", ptr, expected); \ > +} > +TEST_STRNSTR(haystack, needle [0], strlen(haystack), haystack+44); > +TEST_STRNSTR(haystack, needle [1], strlen(haystack), haystack+42); > +TEST_STRNSTR(haystack, needle [2], strlen(haystack), NULL ); > +TEST_STRNSTR(haystack, strings[1], strlen(haystack), haystack ); this produces 2 warnings libavutil/tests/avstring.c:93:5: warning: reading through null pointer (argument 3) [-Wformat] libavutil/tests/avstring.c:93:5: warning: format ‘%s’ expects argument of type ‘char *’, but argument 3 has type ‘void *’ [-Wformat] > + > +/*Testing av_d2str()*/ > +#define TEST_D2STR(value, expected) \ > +ptr = av_d2str(value); \ > +if(strcmp(ptr, expected) != 0){ \ > +printf("av_d2str failed to convert: %lf to string: %s", > (double)value, expected); \ ^^ %lf is the same as %f which is for double already. float gets converted to double for functions like printf(). I imagine lf might result in different formating but we dont use %lf in a print function anywhere else i would suggest to avoid adding "print %lf" as it doesnt test anything we use [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB If a bugfix only changes things apparently unrelated to the bug with no further explanation, that is a good sign that the bugfix is wrong. signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH] doc/examples/decoder_targeted: Limit max pixels for fuzzing
Signed-off-by: Michael Niedermayer --- doc/examples/decoder_targeted.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/doc/examples/decoder_targeted.c b/doc/examples/decoder_targeted.c index f254f603ee..e7e02b027e 100644 --- a/doc/examples/decoder_targeted.c +++ b/doc/examples/decoder_targeted.c @@ -147,6 +147,9 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { AVCodecContext* ctx = avcodec_alloc_context3(NULL); if (!ctx) error("Failed memory allocation"); + +ctx->max_pixels = 4096 * 4096; //To reduce false positive OOM and hangs + int res = avcodec_open2(ctx, c, NULL); if (res < 0) return res; -- 2.11.0 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] avutil: Added selftest for libavutil/audio_fifo.c
On Sat, Dec 17, 2016 at 03:16:30AM -0800, Thomas Turner wrote: > Signed-off-by: Thomas Turner > --- > libavutil/Makefile | 1 + > libavutil/tests/audio_fifo.c | 196 + > tests/fate/libavutil.mak | 4 + > tests/ref/fate/audio_fifo| 228 > +++ > 4 files changed, 429 insertions(+) > create mode 100644 libavutil/tests/audio_fifo.c > create mode 100644 tests/ref/fate/audio_fifo > > diff --git a/libavutil/Makefile b/libavutil/Makefile > index 9841645..2dd91b8 100644 > --- a/libavutil/Makefile > +++ b/libavutil/Makefile > @@ -182,6 +182,7 @@ SKIPHEADERS-$(CONFIG_OPENCL) += opencl.h > TESTPROGS = adler32 \ > aes \ > atomic \ > +audio_fifo \ > avstring\ > base64 \ > blowfish\ > diff --git a/libavutil/tests/audio_fifo.c b/libavutil/tests/audio_fifo.c > new file mode 100644 > index 000..6dffe85 > --- /dev/null > +++ b/libavutil/tests/audio_fifo.c > @@ -0,0 +1,196 @@ > +/* > + * This file is part of FFmpeg. > + * > + * FFmpeg is free software; you can redistribute it and/or > + * modify it under the terms of the GNU Lesser General Public > + * License as published by the Free Software Foundation; either > + * version 2.1 of the License, or (at your option) any later version. > + * > + * FFmpeg is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > + * Lesser General Public License for more details. > + * > + * You should have received a copy of the GNU Lesser General Public > + * License along with FFmpeg; if not, write to the Free Software > + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 > USA > + */ > + > +#include > +#include > +#include "libavutil/audio_fifo.c" > +#include "libavutil/audio_fifo.h" > +#include "libavutil/error.h" > + > +#define MAX_CHANNELS32 > + > +#define ERROR(str)\ > +fprintf(stderr, "%s\n", str); \ > +exit(1); this should be wraped in do{...}while(0) so that code like if (...) ERROR(str); works as expectec [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Opposition brings concord. Out of discord comes the fairest harmony. -- Heraclitus signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH 7/7] avcodec/mips: version 1 of vc1dsp optimizations for loongson mmi
On Mon, Oct 10, 2016 at 04:11:37PM +0800, 周晓勇 wrote: > From 1fd9812dbd80fc4d8d856378b718189f50a68a6f Mon Sep 17 00:00:00 2001 > From: Zhou Xiaoyong > Date: Mon, 10 Oct 2016 15:43:49 +0800 > Subject: [PATCH 7/7] avcodec/mips: version 1 of vc1dsp optimizations for > loongson mmi > > > --- > libavcodec/mips/Makefile |2 + > libavcodec/mips/constants.c|4 + > libavcodec/mips/constants.h|4 + > libavcodec/mips/vc1dsp_init_mips.c | 108 ++ > libavcodec/mips/vc1dsp_mips.h | 194 > libavcodec/mips/vc1dsp_mmi.c | 2081 > > libavcodec/vc1dsp.c|2 + > libavcodec/vc1dsp.h|1 + > 8 files changed, 2396 insertions(+) > create mode 100644 libavcodec/mips/vc1dsp_init_mips.c > create mode 100644 libavcodec/mips/vc1dsp_mips.h > create mode 100644 libavcodec/mips/vc1dsp_mmi.c applied thx [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Why not whip the teacher when the pupil misbehaves? -- Diogenes of Sinope signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] lavc: Fix ticket 6024, truncated mode decoding
On Thu, Dec 15, 2016 at 10:19:23AM -0700, pkoshe...@gmail.com wrote: > From: Pavel Koshevoy > > The assumption that avcodec_send_packet makes regarding decoders > consuming the entire packet is not true if the codec supports > truncated decoding mode and the truncated flag is turned on. > > Steps to reproduce: > ./ffmpeg_g -flags truncated \ > -i "http://samples.ffmpeg.org/MPEG2/test-ebu-422.4.pakets.ts"; \ > -c:v ffv1 -c:a copy -y /tmp/truncated.nut > --- > libavcodec/utils.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) applied thx PS: do you want to add a fate test for this ? [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Observe your enemies, for they first find out your faults. -- Antisthenes signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH v3 00/25] Add timed metadata tracks, track references, channel layout
On Mon, Sep 19, 2016 at 04:25:23PM +0300, Erkki Seppälä wrote: > Hello again! > > Here is the patch set version 3 with the goal of adding the following > features to the ISO base media file format support of FFmpeg (also > available at > https://github.com/nokiatech/FFmpeg/tree/timed-metadata-v3): whats the status of this ? some patches have been reviewed and need changes others are blocked by them ... [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Into a blind darkness they enter who follow after the Ignorance, they as if into a greater darkness enter who devote themselves to the Knowledge alone. -- Isha Upanishad signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH v3 19/25] avcodec/avcodec, avformat/movenc: support embedding channel layout to stream side data
On Mon, Sep 19, 2016 at 04:25:42PM +0300, Erkki Seppälä wrote: > Added support for passing complex channel layout configuration as side > packet data (AV_PKT_DATA_AUDIO_TRACK_CHANNEL_LAYOUT) to ISO media files > as specified by ISO/IEC 14496-12. AVAudioTrackChannelLayout has the > fields to setting both predefined audio layouts, completely configuring > the azimuth and elevation of each speaker as well as describing the > number of audio objects in the scene. > > This information isn't integrated into the existing channel layout > system though, which is much more restricted compared to what the > standard permits. However, the side packet data is structured so that it > does not require too much ISO base media file format knowledge in client > code. In addition, it should be possible to extend the enumeration and > the record to allow for using the same side data for a more native > solution. > > The names of the channels and layouts are available in > channel_layout_isoiec23001_8.h with slightly obtuse names such as > AV_SPEAKER_POSITION_ISOIEC230081_8_L and > AV_CH_LAYOUT_ISOIEC230081_8_1_0_0 to encourage path forward to a more > native solution for FFmpeg. > > This channel layout information ends up to a chnl box in the written > file in an isom track. > > Signed-off-by: Erkki Seppälä > Signed-off-by: OZOPlayer > --- > libavcodec/avcodec.h | 71 +++ > libavformat/movenc.c | 87 +++- > libavutil/channel_layout_isoiec23001_8.h | 97 > > 3 files changed, 254 insertions(+), 1 deletion(-) > create mode 100644 libavutil/channel_layout_isoiec23001_8.h (non cosmetic) patches should not span across libs > > diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h > index 0079d22..7b52975 100644 > --- a/libavcodec/avcodec.h > +++ b/libavcodec/avcodec.h > @@ -39,6 +39,7 @@ > #include "libavutil/log.h" > #include "libavutil/pixfmt.h" > #include "libavutil/rational.h" > +#include "libavutil/channel_layout_isoiec23001_8.h" including a private header from a public one is not possible (it is private in this patch even if subsequently that changes) [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB The worst form of inequality is to try to make unequal things equal. -- Aristotle signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH v3 22/25] avutil: added channel_layout_isoiec23001_8.h to HEADERS
On Mon, Sep 19, 2016 at 04:25:45PM +0300, Erkki Seppälä wrote: > --- > libavutil/Makefile | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/libavutil/Makefile b/libavutil/Makefile > index 1e06176..731b852 100644 > --- a/libavutil/Makefile > +++ b/libavutil/Makefile > @@ -18,6 +18,7 @@ HEADERS = adler32.h > \ >cast5.h \ >camellia.h\ >channel_layout.h \ > + channel_layout_isoiec23001_8.h\ >common.h \ >cpu.h \ >crc.h \ there should be an explanation in the commit message why the header is made public [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Asymptotically faster algorithms should always be preferred if you have asymptotical amounts of data signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH v3 06/25] avcodec/avcodec, avformat/movenc: introduced AV_PKT_DATA_TRACK_ALTERNATE_GROUP side data for expressing alternate groups
On Mon, Sep 19, 2016 at 04:25:29PM +0300, Erkki Seppälä wrote: > Alternate groups previously always generated for ISO media files. With > this addition client code can define track groups arbitrarily. > > Signed-off-by: Erkki Seppälä > Signed-off-by: OZOPlayer > --- > libavcodec/avcodec.h | 11 +++ > libavformat/movenc.c | 9 + > 2 files changed, 20 insertions(+) patches/commits should only touch oen lib at a time > > diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h > index 56bb9b0..3be54d4 100644 > --- a/libavcodec/avcodec.h > +++ b/libavcodec/avcodec.h > @@ -1543,6 +1543,17 @@ enum AVPacketSideDataType { > * indicated by the key's length. > */ > AV_PKT_DATA_TRACK_REFERENCES, > + > +/** > + * Assign alternate groups for tracks. An example of alternate > + * groups would be audio tracks (or video tracks) that are > + * alternative to each other. Each alternative track shares the > + * same non-zero alternate group. > + * > + * The content is: > + * uint: The alternate group of this track > + */ > +AV_PKT_DATA_TRACK_ALTERNATE_GROUP, > }; this requires version bump and APIChanges update [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB No great genius has ever existed without some touch of madness. -- Aristotle signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] avformat/tls: add tls url_get_file_handle
On Sun, Oct 16, 2016 at 10:28:21AM -0400, jayri...@gmail.com wrote: > From: Jay Ridgeway > > Support url_get_file_handle on TLS streams. > --- > libavformat/tls_gnutls.c | 7 +++ > libavformat/tls_openssl.c | 7 +++ > libavformat/tls_schannel.c| 7 +++ > libavformat/tls_securetransport.c | 7 +++ > 4 files changed, 28 insertions(+) applied thx [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Its not that you shouldnt use gotos but rather that you should write readable code and code with gotos often but not always is less readable signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] avfilter/af_silenceremove: add optional tone when silence is removed
On Mon, Oct 31, 2016 at 11:13:28AM -0400, Greg Rowe wrote: > On 2016-10-18 2:20 PM, Michael Niedermayer wrote: > >On Tue, Oct 18, 2016 at 12:46:56PM -0400, Greg Rowe wrote: > >>>see > >>>libavfilter/asrc_sine.c > >>>this code should probably be reused / factored > >>>(note, any code moving/factoring of existing code should be in a > >>>seperate patch) > >> > >>Since silenceremove works only on AV_SAMPLE_FMT_DBL is it OK to use > >>floating point for the generated tone or is it recommended to create > >>the tone and then convert it to double samples or some other > >>approach? > > > >can you write a fate test for the filter which is portable accross > >platforms ? > > > >every filter should ideally have a fate test. > >If you can write a working an portable fate test with float sine > >then i have no objections to it > > Do you have ideas on how I could implement this feature while > avoiding floating point (or at least to implemented the feature in a > portable manner)? I agree that it would be better but I'm not sure > how to do it. > > I could change the entire silence remove filter to avoid floating > point ops but that would be a big change and I don't think that's a > good idea. > > Would it work if I created the tone using asrc_since.c and then > converted that to double samples within the filter? (rather than my > existing approach which generates the tone as doubles using sin()). fate supports comparing things to a reference file using a short 1sec file at low sampling rate should also be neglible in file size, so float can be used if you prefer. still it should only be used where it makes sense (sine) not for anything timestamp related [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Old school: Use the lowest level language in which you can solve the problem conveniently. New school: Use the highest level language in which the latest supercomputer can solve the problem without the user falling asleep waiting. signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] avcodec: add jpeg2000_parser
On Fri, Mar 25, 2016 at 02:07:22AM +0100, Michael Niedermayer wrote: > On Fri, Mar 25, 2016 at 12:44:49AM +0100, Paul B Mahol wrote: > > On 3/24/16, Paul B Mahol wrote: > > > Hi, > > > > > > patch attached. > > > > > > > Fixed version attached. > > confirmed it seems this wasnt applied any reason why ? [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB It is what and why we do it that matters, not just one of them. signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH] Add fate test for ticket 6024, truncated decoding mode
From: Pavel Koshevoy --- tests/fate/video.mak| 3 +++ tests/ref/fate/mpeg2-ticket6024 | 27 +++ 2 files changed, 30 insertions(+) create mode 100644 tests/ref/fate/mpeg2-ticket6024 diff --git a/tests/fate/video.mak b/tests/fate/video.mak index f893688..b939185 100644 --- a/tests/fate/video.mak +++ b/tests/fate/video.mak @@ -239,6 +239,9 @@ FATE_VIDEO-$(call DEMDEC, MPEGTS, MPEG2VIDEO) += fate-mpeg2-field-enc fate-mpeg2 fate-mpeg2-field-enc: CMD = framecrc -flags +bitexact -idct simple -i $(TARGET_SAMPLES)/mpeg2/mpeg2_field_encoding.ts -an -vframes 30 fate-mpeg2-ticket186: CMD = framecrc -flags +bitexact -idct simple -i $(TARGET_SAMPLES)/mpeg2/t.mpg -an +FATE_VIDEO-$(call DEMDEC, MPEGPS, MPEG2VIDEO) += fate-mpeg2-ticket6024 +fate-mpeg2-ticket6024: CMD = framecrc -flags truncated -i $(TARGET_SAMPLES)/mpeg2/matrixbench_mpeg2.lq1.mpg -an + FATE_VIDEO-$(call DEMDEC, MV, MVC1) += fate-mv-mvc1 fate-mv-mvc1: CMD = framecrc -i $(TARGET_SAMPLES)/mv/posture.mv -an -frames 25 -pix_fmt rgb555le diff --git a/tests/ref/fate/mpeg2-ticket6024 b/tests/ref/fate/mpeg2-ticket6024 new file mode 100644 index 000..bd41624 --- /dev/null +++ b/tests/ref/fate/mpeg2-ticket6024 @@ -0,0 +1,27 @@ +#tb 0: 1/25 +#media_type 0: video +#codec_id 0: rawvideo +#dimensions 0: 716x236 +#sar 0: 1/1 +0, 2, 2,1, 253464, 0xc51a46f9 +0, 4, 4,1, 253464, 0xd0661651 +0, 5, 5,1, 253464, 0x38a213b3 +0, 6, 6,1, 253464, 0x038a5118 +0, 7, 7,1, 253464, 0xebd8de64 +0, 8, 8,1, 253464, 0x0b319ee0 +0, 9, 9,1, 253464, 0x37b03a45 +0, 10, 10,1, 253464, 0x5f9c89ae +0, 11, 11,1, 253464, 0x88ad9c08 +0, 12, 12,1, 253464, 0x387198bc +0, 13, 13,1, 253464, 0xf3933eb6 +0, 14, 14,1, 253464, 0x9bd27b98 +0, 15, 15,1, 253464, 0x9442c538 +0, 16, 16,1, 253464, 0x330be2a4 +0, 17, 17,1, 253464, 0xb4b8c1df +0, 18, 18,1, 253464, 0xc97ded34 +0, 19, 19,1, 253464, 0xcad936e0 +0, 20, 20,1, 253464, 0x11a2850d +0, 21, 21,1, 253464, 0x2545ad23 +0, 22, 22,1, 253464, 0xa5e17c47 +0, 23, 23,1, 253464, 0x39452689 +0, 24, 24,1, 253464, 0x1daefd72 -- 2.6.6 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] libavf: Auto-detect mjpeg 2000 in mpeg-ts
On Fri, Oct 14, 2016 at 01:31:12AM +0200, Michael Niedermayer wrote: > On Thu, Oct 13, 2016 at 04:41:00PM +0200, Ståle Kristoffersen wrote: > > On 2016-10-12 at 13:57, Carl Eugen Hoyos wrote: > > > 2016-10-11 16:27 GMT+02:00 Michael Niedermayer : > > > > > > > also the img2 demuxer for mjpeg2000 from img2dec.c does not work > > > > for this ? > > > > > > We separated the jpg from the mjpeg probe, jpg makes sure that the > > > sample starts like a jpg image and contains an end marker and can > > > be decoded, mjpeg probe is less strict but requires more than one > > > frame. > > > Same could be argued for j2k or was our reasoning bad? > > > > Since nobody chimed in on this, I have created two new patches, one > > containing a separate mjpeg 2000 probe > > (0001-libavf-Auto-detect-mjpeg-2000-in-mpeg-ts2.patch), and one that > > incorporates it into the img2dec jpeg 2000 probe > > (0001-libavf-Make-jpeg-2000-probe-work-for-mjpeg-2000.patch). > > > > > I think it is best to have them separated, as that matches the mjpeg > > behaviour. > > have you tested the demuxer ? > i dont think it works outside probing for mpegts > i think for j2k codestream support a jpeg2000 parser is needed first > same as we have for mjpeg theres actually a j2k parser patch on the ML so applied this one here thx [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Everything should be made as simple as possible, but not simpler. -- Albert Einstein signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH] lavfi/atempo: Avoid false triggering an assertion failure
From: Pavel Koshevoy Steps to reproduce: ./ffmpeg_g -f s16be -i /dev/null -af atempo=0.5 -y /tmp/atempo.wav --- libavfilter/af_atempo.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavfilter/af_atempo.c b/libavfilter/af_atempo.c index 59b08ec..a487882 100644 --- a/libavfilter/af_atempo.c +++ b/libavfilter/af_atempo.c @@ -914,8 +914,8 @@ static int yae_flush(ATempoContext *atempo, atempo->state = YAE_FLUSH_OUTPUT; -if (atempo->position[0] == frag->position[0] + frag->nsamples && -atempo->position[1] == frag->position[1] + frag->nsamples) { +if (atempo->position[0] >= frag->position[0] + frag->nsamples && +atempo->position[1] >= frag->position[1] + frag->nsamples) { // the current fragment is already flushed: return 0; } -- 2.6.6 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] avfilter/af_atempo: fix assertion failure on empty input
On Thu, Dec 15, 2016 at 3:31 AM, Marton Balint wrote: > > > On Wed, 14 Dec 2016, Pavel Koshevoy wrote: > >> On Wed, Dec 14, 2016 at 7:27 PM, Marton Balint wrote: >>> >>> Signed-off-by: Marton Balint >>> --- >>> libavfilter/af_atempo.c | 10 +++--- >>> 1 file changed, 7 insertions(+), 3 deletions(-) >>> >> >> >> I'd like to understand these changes a little better ... how can I >> reproduce the problem this is trying to fix? >> > > Basically it happens on empty input: > > ffmpeg -f s16be -i /dev/null -af atempo output.wav I've posted a smaller alternative fix -- http://ffmpeg.org/pipermail/ffmpeg-devel/2016-December/204591.html Pavel. ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] Add fate test for ticket 6024, truncated decoding mode
On Sat, Dec 17, 2016 at 04:02:12PM -0700, pkoshe...@gmail.com wrote: > From: Pavel Koshevoy > > --- > tests/fate/video.mak| 3 +++ > tests/ref/fate/mpeg2-ticket6024 | 27 +++ > 2 files changed, 30 insertions(+) > create mode 100644 tests/ref/fate/mpeg2-ticket6024 fails on arm qemu make sure that you use all the bitexact stuff, bitexact (i)dct ... --- tests/ref/fate/mpeg2-ticket6024 2016-12-18 00:18:23.712563634 +0100 +++ tests/data/fate/mpeg2-ticket60242016-12-18 02:09:57.152704645 +0100 @@ -3,25 +3,25 @@ #codec_id 0: rawvideo #dimensions 0: 716x236 #sar 0: 1/1 -0, 2, 2,1, 253464, 0xc51a46f9 -0, 4, 4,1, 253464, 0xd0661651 -0, 5, 5,1, 253464, 0x38a213b3 -0, 6, 6,1, 253464, 0x038a5118 -0, 7, 7,1, 253464, 0xebd8de64 -0, 8, 8,1, 253464, 0x0b319ee0 -0, 9, 9,1, 253464, 0x37b03a45 -0, 10, 10,1, 253464, 0x5f9c89ae -0, 11, 11,1, 253464, 0x88ad9c08 -0, 12, 12,1, 253464, 0x387198bc -0, 13, 13,1, 253464, 0xf3933eb6 -0, 14, 14,1, 253464, 0x9bd27b98 -0, 15, 15,1, 253464, 0x9442c538 -0, 16, 16,1, 253464, 0x330be2a4 -0, 17, 17,1, 253464, 0xb4b8c1df -0, 18, 18,1, 253464, 0xc97ded34 -0, 19, 19,1, 253464, 0xcad936e0 -0, 20, 20,1, 253464, 0x11a2850d -0, 21, 21,1, 253464, 0x2545ad23 -0, 22, 22,1, 253464, 0xa5e17c47 -0, 23, 23,1, 253464, 0x39452689 -0, 24, 24,1, 253464, 0x1daefd72 +0, 2, 2,1, 253464, 0xdb0246f3 +0, 4, 4,1, 253464, 0x342f1641 +0, 5, 5,1, 253464, 0x2d5413a4 +0, 6, 6,1, 253464, 0x48da510b +0, 7, 7,1, 253464, 0xdb10de4b +0, 8, 8,1, 253464, 0x5ffb9ecf +0, 9, 9,1, 253464, 0xa6dc3a37 +0, 10, 10,1, 253464, 0x6deb899d +0, 11, 11,1, 253464, 0x117a9bff +0, 12, 12,1, 253464, 0x1eeb98b2 +0, 13, 13,1, 253464, 0xbd8f3eb1 +0, 14, 14,1, 253464, 0x094d7b95 +0, 15, 15,1, 253464, 0x7a99c534 +0, 16, 16,1, 253464, 0x25c6e29e +0, 17, 17,1, 253464, 0x262dc1da +0, 18, 18,1, 253464, 0x3af2ed2f +0, 19, 19,1, 253464, 0xb13036dc +0, 20, 20,1, 253464, 0xfab78509 +0, 21, 21,1, 253464, 0x96ecad20 +0, 22, 22,1, 253464, 0x028f7c44 +0, 23, 23,1, 253464, 0x95e52686 +0, 24, 24,1, 253464, 0x7a4efd6f Test mpeg2-ticket6024 failed. Look at tests/data/fate/mpeg2-ticket6024.err for details. make: *** [fate-mpeg2-ticket6024] Error 1 [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Asymptotically faster algorithms should always be preferred if you have asymptotical amounts of data signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] Add initial program date time option (hls_init_prog_time)
2016-12-17 15:58 GMT+08:00 Robert Nagy : > From 14da4c9610ac0cf257b2c28f21899e854592e646 Mon Sep 17 00:00:00 2001 > From: Jesper Ek > Date: Wed, 7 Dec 2016 16:01:08 +0100 > Subject: [PATCH] Add initial program date time option (hls_init_prog_time) > > It is often useful to specify the initial program date time, rather > than relying on the current system time. This commit adds an argument > option to specify the number of seconds since epoch. > --- > libavformat/hlsenc.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c > index d03cf02..a0c8cfc 100644 > --- a/libavformat/hlsenc.c > +++ b/libavformat/hlsenc.c > @@ -791,7 +791,7 @@ static int hls_write_header(AVFormatContext *s) > hls->recording_time = (hls->init_time ? hls->init_time : hls->time) * > AV_TIME_BASE; > hls->start_pts = AV_NOPTS_VALUE; > > -if (hls->flags & HLS_PROGRAM_DATE_TIME) { > +if (hls->flags & HLS_PROGRAM_DATE_TIME && hls->initial_prog_date_time > == 0) { > This maybe can more simple. > time_t now0; > time(&now0); > hls->initial_prog_date_time = now0; > @@ -1101,6 +1101,7 @@ static const AVOption options[] = { > {"start_number", "set first number in the sequence", > OFFSET(start_sequence),AV_OPT_TYPE_INT64, {.i64 = 0}, 0, INT64_MAX, > E}, > {"hls_time", "set segment length in seconds", > OFFSET(time),AV_OPT_TYPE_FLOAT, {.dbl = 2}, 0, FLT_MAX, E}, > {"hls_init_time", "set segment length in seconds at init list", > OFFSET(init_time),AV_OPT_TYPE_FLOAT, {.dbl = 0}, 0, FLT_MAX, > E}, > +{"hls_init_prog_time", "set initial program date time in seconds since > epoch", OFFSET(initial_prog_date_time),AV_OPT_TYPE_DOUBLE, {.dbl = > 0}, > 0, DBL_MAX, E}, > {"hls_list_size", "set maximum number of playlist entries", > OFFSET(max_nb_segments),AV_OPT_TYPE_INT,{.i64 = 5}, 0, > INT_MAX, E}, > {"hls_ts_options","set hls mpegts list of options for the container > format used for hls", OFFSET(format_options_str), AV_OPT_TYPE_STRING, {.str > = NULL}, 0, 0,E}, > {"hls_vtt_options","set hls vtt list of options for the container > format used for hls", OFFSET(vtt_format_options_str), AV_OPT_TYPE_STRING, > {.str = NULL}, 0, 0,E}, > -- > 2.10.0 > ___ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > http://ffmpeg.org/mailman/listinfo/ffmpeg-devel > ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH] Add fate test for ticket 6024, truncated decoding mode (v2)
From: Pavel Koshevoy --- tests/fate/video.mak| 3 +++ tests/ref/fate/mpeg2-ticket6024 | 27 +++ 2 files changed, 30 insertions(+) create mode 100644 tests/ref/fate/mpeg2-ticket6024 diff --git a/tests/fate/video.mak b/tests/fate/video.mak index f893688..7636ab2 100644 --- a/tests/fate/video.mak +++ b/tests/fate/video.mak @@ -239,6 +239,9 @@ FATE_VIDEO-$(call DEMDEC, MPEGTS, MPEG2VIDEO) += fate-mpeg2-field-enc fate-mpeg2 fate-mpeg2-field-enc: CMD = framecrc -flags +bitexact -idct simple -i $(TARGET_SAMPLES)/mpeg2/mpeg2_field_encoding.ts -an -vframes 30 fate-mpeg2-ticket186: CMD = framecrc -flags +bitexact -idct simple -i $(TARGET_SAMPLES)/mpeg2/t.mpg -an +FATE_VIDEO-$(call DEMDEC, MPEGPS, MPEG2VIDEO) += fate-mpeg2-ticket6024 +fate-mpeg2-ticket6024: CMD = framecrc -flags +bitexact -idct simple -flags +truncated -i $(TARGET_SAMPLES)/mpeg2/matrixbench_mpeg2.lq1.mpg -an + FATE_VIDEO-$(call DEMDEC, MV, MVC1) += fate-mv-mvc1 fate-mv-mvc1: CMD = framecrc -i $(TARGET_SAMPLES)/mv/posture.mv -an -frames 25 -pix_fmt rgb555le diff --git a/tests/ref/fate/mpeg2-ticket6024 b/tests/ref/fate/mpeg2-ticket6024 new file mode 100644 index 000..bd41624 --- /dev/null +++ b/tests/ref/fate/mpeg2-ticket6024 @@ -0,0 +1,27 @@ +#tb 0: 1/25 +#media_type 0: video +#codec_id 0: rawvideo +#dimensions 0: 716x236 +#sar 0: 1/1 +0, 2, 2,1, 253464, 0xc51a46f9 +0, 4, 4,1, 253464, 0xd0661651 +0, 5, 5,1, 253464, 0x38a213b3 +0, 6, 6,1, 253464, 0x038a5118 +0, 7, 7,1, 253464, 0xebd8de64 +0, 8, 8,1, 253464, 0x0b319ee0 +0, 9, 9,1, 253464, 0x37b03a45 +0, 10, 10,1, 253464, 0x5f9c89ae +0, 11, 11,1, 253464, 0x88ad9c08 +0, 12, 12,1, 253464, 0x387198bc +0, 13, 13,1, 253464, 0xf3933eb6 +0, 14, 14,1, 253464, 0x9bd27b98 +0, 15, 15,1, 253464, 0x9442c538 +0, 16, 16,1, 253464, 0x330be2a4 +0, 17, 17,1, 253464, 0xb4b8c1df +0, 18, 18,1, 253464, 0xc97ded34 +0, 19, 19,1, 253464, 0xcad936e0 +0, 20, 20,1, 253464, 0x11a2850d +0, 21, 21,1, 253464, 0x2545ad23 +0, 22, 22,1, 253464, 0xa5e17c47 +0, 23, 23,1, 253464, 0x39452689 +0, 24, 24,1, 253464, 0x1daefd72 -- 2.6.6 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] Add fate test for ticket 6024, truncated decoding mode
On Sat, Dec 17, 2016 at 6:13 PM, Michael Niedermayer wrote: > On Sat, Dec 17, 2016 at 04:02:12PM -0700, pkoshe...@gmail.com wrote: >> From: Pavel Koshevoy >> >> --- >> tests/fate/video.mak| 3 +++ >> tests/ref/fate/mpeg2-ticket6024 | 27 +++ >> 2 files changed, 30 insertions(+) >> create mode 100644 tests/ref/fate/mpeg2-ticket6024 > > fails on arm qemu > make sure that you use all the bitexact stuff, bitexact (i)dct ... I don't have an arm qemu devenv, so I can't verify these changes. I'll post another version of the patch, but I am just guessing on the changes that you are suggesting I should make. Pavel ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH] af_hdcd: more FATE tests
Additional/Modified FATE tests improve code coverage from 63.7% to 98.1%. Changed fate-suite sample files: * filter/hdcd-encoding-errors.flac (1.3M) replaced by filter/hdcd-encoding-errors2.flac (140K) * filter/hdcd-mix.flac (2.2M) added * filter/hdcd-fake20bit.flac (168K) added * filter/hdcd.flac (910K) removed, although it was a nice tune and the samples that replace it are terrible sounds. Net change +290K. Signed-off-by: Burt P --- tests/fate/filter-audio.mak | 86 ++--- 1 file changed, 74 insertions(+), 12 deletions(-) diff --git a/tests/fate/filter-audio.mak b/tests/fate/filter-audio.mak index 9c6f7cd..a55e3c9 100644 --- a/tests/fate/filter-audio.mak +++ b/tests/fate/filter-audio.mak @@ -255,17 +255,55 @@ fate-filter-volume: CMD = md5 -i $(SRC) -af aperms=random,volume=precision=fixed fate-filter-volume: CMP = oneline fate-filter-volume: REF = 4d6ba75ef3e32d305d066b9bc771d6f4 -FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd -fate-filter-hdcd: SRC = $(TARGET_SAMPLES)/filter/hdcd.flac -fate-filter-hdcd: CMD = md5 -i $(SRC) -af hdcd -f s24le -fate-filter-hdcd: CMP = oneline -fate-filter-hdcd: REF = 5db465a58d2fd0d06ca944b883b33476 - -FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-analyze -fate-filter-hdcd-analyze: SRC = $(TARGET_SAMPLES)/filter/hdcd.flac -fate-filter-hdcd-analyze: CMD = md5 -i $(SRC) -af hdcd=analyze_mode=pe -f s24le -fate-filter-hdcd-analyze: CMP = oneline -fate-filter-hdcd-analyze: REF = 6e39dc4629c1e84321c0d8bc069b42f6 +# hdcd-mix.flac is a mix of three different sources which are interesting for various reasons: +# first 5 seconds uses packet format A and max LLE of -7.0db +# second 5 seconds uses packet format B and has a gain mismatch between channels +# last 10 seconds is not HDCD but has a coincidental HDCD packet, it needs to be 10 seconds because it also tests the cdt expiration +FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-mix +fate-filter-hdcd-mix: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac +fate-filter-hdcd-mix: CMD = md5 -i $(SRC) -af hdcd -f s24le +fate-filter-hdcd-mix: CMP = oneline +fate-filter-hdcd-mix: REF = 6a3cf7f920f419477ada264cc63b40da + +# output will be different because of the gain mismatch in the second and third parts +FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-mix-psoff +fate-filter-hdcd-mix-psoff: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac +fate-filter-hdcd-mix-psoff: CMD = md5 -i $(SRC) -af hdcd=process_stereo=false -f s24le +fate-filter-hdcd-mix-psoff: CMP = oneline +fate-filter-hdcd-mix-psoff: REF = b841866d5730852256ca57564c55e0ef + +# test the different analyze modes +FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-analyze-pe +fate-filter-hdcd-analyze-pe: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac +fate-filter-hdcd-analyze-pe: CMD = md5 -i $(SRC) -af hdcd=analyze_mode=pe -f s24le +fate-filter-hdcd-analyze-pe: CMP = oneline +fate-filter-hdcd-analyze-pe: REF = 9ddd10dfea756160456e25dd96a752b8 +FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-analyze-lle +fate-filter-hdcd-analyze-lle: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac +fate-filter-hdcd-analyze-lle: CMD = md5 -i $(SRC) -af hdcd=analyze_mode=lle -f s24le +fate-filter-hdcd-analyze-lle: CMP = oneline +fate-filter-hdcd-analyze-lle: REF = be353f79d3e653d658a6e6e99d7655c8 +FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-analyze-cdt +fate-filter-hdcd-analyze-cdt: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac +fate-filter-hdcd-analyze-cdt: CMD = md5 -i $(SRC) -af hdcd=analyze_mode=cdt -f s24le +fate-filter-hdcd-analyze-cdt: CMP = oneline +fate-filter-hdcd-analyze-cdt: REF = d828abe932e0d2bfc914eaa23c15b7f6 +FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-analyze-tgm +fate-filter-hdcd-analyze-tgm: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac +fate-filter-hdcd-analyze-tgm: CMD = md5 -i $(SRC) -af hdcd=analyze_mode=tgm -f s24le +fate-filter-hdcd-analyze-tgm: CMP = oneline +fate-filter-hdcd-analyze-tgm: REF = 407ed0dc8c6fd17cc8c0b53a8b2b0e34 +# the two additional analyze modes from libhdcd +FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMUX, HDCD, FLAC, FLAC, PCM_S24LE, PCM_S24LE) += fate-filter-hdcd-analyze-ltgm +fate-filter-hdcd-analyze-ltgm: SRC = $(TARGET_SAMPLES)/filter/hdcd-mix.flac +fate-filter-hdcd-analyze-ltgm: CMD = md5 -i $(SRC) -af hdcd=analyze_mode=lle:process_stereo=false -f s24le +fate-filter-hdcd-analyze-ltgm: CMP = oneline +fate-filter-hdcd-analyze-ltgm: REF = 276a354519a15d1c83c5ca394fe5dffc +FATE_AFILTER_SAMPLES-$(call FILTERDEMDECENCMU