Re: [FFmpeg-devel] [PATCH] nut: Add PAL8 support
On 02/09/2016 07:27 PM, Michael Niedermayer wrote: Signed-off-by: Michael Niedermayer--- libavcodec/raw.c|1 + libavformat/nut.c |2 ++ tests/ref/fate/filter-pixfmts-copy |2 +- tests/ref/fate/filter-pixfmts-crop |2 +- tests/ref/fate/filter-pixfmts-field |2 +- tests/ref/fate/filter-pixfmts-hflip |2 +- tests/ref/fate/filter-pixfmts-null |2 +- tests/ref/fate/filter-pixfmts-scale |2 +- tests/ref/fate/filter-pixfmts-vflip |2 +- 9 files changed, 10 insertions(+), 7 deletions(-) diff --git a/libavcodec/raw.c b/libavcodec/raw.c index 4f7417a..bfa2537 100644 --- a/libavcodec/raw.c +++ b/libavcodec/raw.c @@ -154,6 +154,7 @@ const PixelFormatTag ff_raw_pix_fmt_tags[] = { { AV_PIX_FMT_YUVA422P,MKTAG('Y', '4', 10 , 8 ) }, { AV_PIX_FMT_YUVA444P,MKTAG('Y', '4', 0 , 8 ) }, { AV_PIX_FMT_YA8, MKTAG('Y', '2', 0 , 8 ) }, +{ AV_PIX_FMT_PAL8,MKTAG('P', 'A', 'L', 8 ) }, { AV_PIX_FMT_YUVA420P9LE, MKTAG('Y', '4', 11 , 9 ) }, { AV_PIX_FMT_YUVA420P9BE, MKTAG( 9 , 11 , '4', 'Y') }, diff --git a/libavformat/nut.c b/libavformat/nut.c index 7d5f1ba..f4901e6 100644 --- a/libavformat/nut.c +++ b/libavformat/nut.c @@ -168,6 +168,8 @@ const AVCodecTag ff_nut_video_tags[] = { { AV_CODEC_ID_RAWVIDEO, MKTAG('X', 'Y', 'Z' , 36 ) }, { AV_CODEC_ID_RAWVIDEO, MKTAG(36 , 'Z' , 'Y', 'X') }, +{ AV_CODEC_ID_RAWVIDEO, MKTAG('P', 'A', 'L', 8 ) }, + { AV_CODEC_ID_RAWVIDEO, MKTAG(0xBA, 'B', 'G', 8 ) }, { AV_CODEC_ID_RAWVIDEO, MKTAG(0xBA, 'B', 'G', 16 ) }, { AV_CODEC_ID_RAWVIDEO, MKTAG(16 , 'G', 'B', 0xBA) }, diff --git a/tests/ref/fate/filter-pixfmts-copy b/tests/ref/fate/filter-pixfmts-copy index ead7290..7bab4b8 100644 --- a/tests/ref/fate/filter-pixfmts-copy +++ b/tests/ref/fate/filter-pixfmts-copy @@ -35,7 +35,7 @@ monob a6869bab4f6e64fe13dcab13b41775b3 monow 0404328f1838a6503371478a559ca20d nv128e24feb2c544dc26a20047a71e4c27aa nv21335d85c9af6110f26ae9e187a82ed2cf -pal8d9a58fa1964ba9a3b902797b0b1af0ab +pal8ff5929f5b42075793b2c34cb441bede5 rgb00de71e5a1f97f81fb51397a0435bfa72 rgb24 f4438057d046e6d98ade4e45294b21be rgb444be115e5259b91f4a416546b09570347633 diff --git a/tests/ref/fate/filter-pixfmts-crop b/tests/ref/fate/filter-pixfmts-crop index a930323..0b54641 100644 --- a/tests/ref/fate/filter-pixfmts-crop +++ b/tests/ref/fate/filter-pixfmts-crop @@ -33,7 +33,7 @@ gray16be38f599da990224de86e3dc7a543121a9 gray16le9ff7c866bd98def4e6c91542c1c45f80 nv1292cda427f794374731ec0321ee00caac nv211bcfc197f4fb95de85ba58182d8d2f69 -pal8c89abc9660914b2e6c2e6f8c29e86503 +pal81f2cdc8e718f95c875dbc1034a688bfb rgb0736646b70dd9a0be22b8da8041e35035 rgb24 c5fbbf816bb2000f4d2914e335698ef5 rgb444be44a33306889f7fa1a71ec831b860fd0a diff --git a/tests/ref/fate/filter-pixfmts-field b/tests/ref/fate/filter-pixfmts-field index e3df496..e599571 100644 --- a/tests/ref/fate/filter-pixfmts-field +++ b/tests/ref/fate/filter-pixfmts-field @@ -35,7 +35,7 @@ monob 599b938a6207de81bd96c902c2511676 monow 8486b94cd7c498b0effd33cb7e8e63df nv1216f7a46708ef25ebd0b72e47920cc11e nv217294574037cc7f9373ef5695d8ebe809 -pal8379b8c80f4422a353ad286f7120f2fb6 +pal80658c18dcd8d052d59dfbe23f5b368d9 rgb0ca3fa6e865b91b3511c7f2bf62830059 rgb24 25ab271e26a5785be169578d99da5dd0 rgb444bea05fabc91e485ec02461be900cd72ef3 diff --git a/tests/ref/fate/filter-pixfmts-hflip b/tests/ref/fate/filter-pixfmts-hflip index bd1481a..98c165b 100644 --- a/tests/ref/fate/filter-pixfmts-hflip +++ b/tests/ref/fate/filter-pixfmts-hflip @@ -33,7 +33,7 @@ gray16becf7294d9aa23e1b838692ec01ade587b gray16led91ce41e304419bcf32ac792f01bd64f nv12801e58f1be5fd0b5bc4bf007c604b0b4 nv219f10dfff8963dc327d3395af21f0554f -pal8cfe90d91bea5172babd97c3828270ea5 +pal85b7c77d99817b4f52339742a47de7797 rgb00092452f37d73da20193265ace0b7d57 rgb24 21571104e6091a689feabb7867e513dd rgb444be38d6d0e9aa15ce95f3fffcde8437632d diff --git a/tests/ref/fate/filter-pixfmts-null b/tests/ref/fate/filter-pixfmts-null index ead7290..7bab4b8 100644 --- a/tests/ref/fate/filter-pixfmts-null +++ b/tests/ref/fate/filter-pixfmts-null @@ -35,7 +35,7 @@ monob a6869bab4f6e64fe13dcab13b41775b3 monow 0404328f1838a6503371478a559ca20d nv128e24feb2c544dc26a20047a71e4c27aa nv21
Re: [FFmpeg-devel] [PATCH] nut: Add PAL8 support
On 02/09/2016 08:35 PM, Mats Peterson wrote: On 02/09/2016 08:23 PM, Mats Peterson wrote: Wonderful, Michael. Mats But there is no provision for storing the proper palette yet, as far as I can see. Correct me if I'm wrong. And as far as I know, neither writing AVI or QuickTime will include the palette. That has to be fixed at some point as well Mats ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] nut: Add PAL8 support
On Tue, Feb 09, 2016 at 08:35:07PM +0100, Mats Peterson wrote: > On 02/09/2016 08:23 PM, Mats Peterson wrote: > > >Wonderful, Michael. > > > >Mats > > But there is no provision for storing the proper palette yet, as far > as I can see. Correct me if I'm wrong. ive tried both converting to pal8 nut from yuv420p as well as storing rawvideo nut pal8 from a actual pal8 source, both worked [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB I have never wished to cater to the crowd; for what I know they do not approve, and what they approve I do not know. -- Epicurus signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] nut: Add PAL8 support
On 02/09/2016 09:01 PM, Michael Niedermayer wrote: On Tue, Feb 09, 2016 at 08:35:07PM +0100, Mats Peterson wrote: On 02/09/2016 08:23 PM, Mats Peterson wrote: Wonderful, Michael. Mats But there is no provision for storing the proper palette yet, as far as I can see. Correct me if I'm wrong. ive tried both converting to pal8 nut from yuv420p as well as storing rawvideo nut pal8 from a actual pal8 source, both worked I'm currently compiling here, so I can't tell yet... Anyway, AVI stores the palette in the output file, but only when using "-vcodec copy". QuickTime doesn't store any palette whatsoever. Just a parenthesis. Mats ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] nut: Add PAL8 support
On 02/09/2016 09:06 PM, Mats Peterson wrote: On 02/09/2016 09:03 PM, Mats Peterson wrote: I'm currently compiling here, so I can't tell yet... Anyway, AVI stores the palette in the output file, but only when using "-vcodec copy". QuickTime doesn't store any palette whatsoever. Just a parenthesis. Yes, Michael, nut works just fine, and it includes the palette alright. I'll update my little patch at one place to use 'P','A','L',8 rather than 'P','A','L','8'. No, it doesn't work after all. At first I used "ffmpeg -i in.avi out.nut", that is of course not enough to use rawvideo. When using "ffmpeg -i in.avi -vcodec rawvideo out.nut", the palette won't be included. Mats ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] nut: Add PAL8 support
On 02/09/2016 09:03 PM, Mats Peterson wrote: I'm currently compiling here, so I can't tell yet... Anyway, AVI stores the palette in the output file, but only when using "-vcodec copy". QuickTime doesn't store any palette whatsoever. Just a parenthesis. Yes, Michael, nut works just fine, and it includes the palette alright. I'll update my little patch at one place to use 'P','A','L',8 rather than 'P','A','L','8'. Mats ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] rtpdec: support for VC-2 HQ RTP payload format (draft v1)
On Wed, Feb 03, 2016 at 10:21:19AM +0100, si...@gmx.net wrote: > From: Thomas Volkert> > --- > Changelog| 1 + > libavformat/Makefile | 1 + > libavformat/rtpdec.c | 1 + > libavformat/rtpdec_formats.h | 1 + > libavformat/rtpdec_vc2hq.c | 225 > +++ > libavformat/version.h| 4 +- > 6 files changed, 231 insertions(+), 2 deletions(-) > create mode 100644 libavformat/rtpdec_vc2hq.c should be ok thx [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB There will always be a question for which you do not know the correct answer. signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH] avfilter/vf_nnedi: Fix memleak
Fixes CID1351359 Signed-off-by: Michael Niedermayer--- libavfilter/vf_nnedi.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavfilter/vf_nnedi.c b/libavfilter/vf_nnedi.c index a1f2952..9a98ec2 100644 --- a/libavfilter/vf_nnedi.c +++ b/libavfilter/vf_nnedi.c @@ -1154,7 +1154,7 @@ static av_cold int init(AVFilterContext *ctx) s->fdsp = avpriv_float_dsp_alloc(0); if (!s->fdsp) -return AVERROR(ENOMEM); +ret = AVERROR(ENOMEM); fail: av_free(bdata); -- 1.7.9.5 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] avfilter/vf_nnedi: Fix memleak
On 2/9/16, Michael Niedermayerwrote: > Fixes CID1351359 > > Signed-off-by: Michael Niedermayer > --- > libavfilter/vf_nnedi.c |2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/libavfilter/vf_nnedi.c b/libavfilter/vf_nnedi.c > index a1f2952..9a98ec2 100644 > --- a/libavfilter/vf_nnedi.c > +++ b/libavfilter/vf_nnedi.c > @@ -1154,7 +1154,7 @@ static av_cold int init(AVFilterContext *ctx) > > s->fdsp = avpriv_float_dsp_alloc(0); > if (!s->fdsp) > -return AVERROR(ENOMEM); > +ret = AVERROR(ENOMEM); > ok ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] avfilter: add metadata filters
On 2/6/16, Paul B Maholwrote: > On 2/6/16, Paul B Mahol wrote: >> Hi, >> >> patch attached. >> > > Improved version attached. > Gonna push this soon. ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH 1/2] x86/vf_blend: Move multiplying to a macro
--- libavfilter/x86/vf_blend.asm | 16 ++-- 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/libavfilter/x86/vf_blend.asm b/libavfilter/x86/vf_blend.asm index 9388a74..50b5f8a 100644 --- a/libavfilter/x86/vf_blend.asm +++ b/libavfilter/x86/vf_blend.asm @@ -102,6 +102,15 @@ BLEND_INIT difference128, 4 jl .loop BLEND_END +%macro MULTIPLY 3 ; a, b, pw_1 +pmullw %1, %2 ; a * b +paddw %1, %3 +mova%2, %1 +psrlw %2, 8 +paddw %1, %2 +psrlw %1, 8; 00xx00xx a * b / 255 +%endmacro + BLEND_INIT multiply, 4 pxor m2, m2 mova m3, [pw_1] @@ -116,12 +125,7 @@ BLEND_INIT multiply, 4 punpcklbw m0, m2 ; 00xx00xx punpcklbw m1, m2 -pmullw m0, m1 ; a * b -paddw m0, m3 -movam1, m0 -psrlw m1, 8 -paddw m0, m1 -psrlw m0, 8; 00xx00xx a * b / 255 +MULTIPLYm0, m1, m3 packuswbm0, m0 ; movh [dstq + xq], m0 -- 1.9.1 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH 2/2] x86/vf_blend: Add SSE2 optimization for screen
--- libavfilter/x86/vf_blend.asm| 29 + libavfilter/x86/vf_blend_init.c | 2 ++ 2 files changed, 31 insertions(+) diff --git a/libavfilter/x86/vf_blend.asm b/libavfilter/x86/vf_blend.asm index 50b5f8a..a5ea74c 100644 --- a/libavfilter/x86/vf_blend.asm +++ b/libavfilter/x86/vf_blend.asm @@ -111,6 +111,13 @@ BLEND_END psrlw %1, 8; 00xx00xx a * b / 255 %endmacro +%macro SCREEN 4 ; a, b, pw_1, pw_255 +pxor%1, %4 ; 00xx00xx 255 - a +pxor%2, %4 +MULTIPLY%1, %2, %3 +pxor%1, %4 ; 00xx00xx 255 - x / 255 +%endmacro + BLEND_INIT multiply, 4 pxor m2, m2 mova m3, [pw_1] @@ -134,6 +141,28 @@ BLEND_INIT multiply, 4 jl .loop BLEND_END +BLEND_INIT screen, 5 +pxor m2, m2 +mova m3, [pw_1] +mova m4, [pw_255] +.nextrow: +movxq, widthq + +.loop: +movhm0, [topq + xq] ; +movhm1, [bottomq + xq] +punpcklbw m0, m2 ; 00xx00xx +punpcklbw m1, m2 + +SCREEN m0, m1, m3, m4 + +packuswbm0, m0 ; +movh [dstq + xq], m0 +add xq, mmsize / 2 + +jl .loop +BLEND_END + BLEND_INIT average, 3 pxor m2, m2 .nextrow: diff --git a/libavfilter/x86/vf_blend_init.c b/libavfilter/x86/vf_blend_init.c index 8ac526a..a6baf94 100644 --- a/libavfilter/x86/vf_blend_init.c +++ b/libavfilter/x86/vf_blend_init.c @@ -37,6 +37,7 @@ BLEND_FUNC(and, sse2) BLEND_FUNC(darken, sse2) BLEND_FUNC(difference128, sse2) BLEND_FUNC(multiply, sse2) +BLEND_FUNC(screen, sse2) BLEND_FUNC(hardmix, sse2) BLEND_FUNC(lighten, sse2) BLEND_FUNC(or, sse2) @@ -65,6 +66,7 @@ av_cold void ff_blend_init_x86(FilterParams *param, int is_16bit) case BLEND_MULTIPLY: param->blend = ff_blend_multiply_sse2; break; case BLEND_OR: param->blend = ff_blend_or_sse2; break; case BLEND_PHOENIX: param->blend = ff_blend_phoenix_sse2; break; +case BLEND_SCREEN: param->blend = ff_blend_screen_sse2; break; case BLEND_SUBTRACT: param->blend = ff_blend_subtract_sse2; break; case BLEND_XOR: param->blend = ff_blend_xor_sse2; break; case BLEND_DIFFERENCE: param->blend = ff_blend_difference_sse2; break; -- 1.9.1 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] nut: Add PAL8 support
On Tue, Feb 09, 2016 at 09:09:18PM +0100, Mats Peterson wrote: > On 02/09/2016 09:06 PM, Mats Peterson wrote: > >On 02/09/2016 09:03 PM, Mats Peterson wrote: > >>I'm currently compiling here, so I can't tell yet... Anyway, AVI stores > >>the palette in the output file, but only when using "-vcodec copy". > >>QuickTime doesn't store any palette whatsoever. Just a parenthesis. > >> > > > >Yes, Michael, nut works just fine, and it includes the palette alright. > >I'll update my little patch at one place to use 'P','A','L',8 rather > >than 'P','A','L','8'. > > > > No, it doesn't work after all. At first I used "ffmpeg -i in.avi > out.nut", that is of course not enough to use rawvideo. When using > "ffmpeg -i in.avi -vcodec rawvideo out.nut", the palette won't be > included. avi -> nut works here too ./ffmpeg -i fate-suite/zmbv/wc2_001-partial.avi -vcodec rawvideo test.nut [...] -- 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] nut: Add PAL8 support
On 02/09/2016 08:23 PM, Mats Peterson wrote: Wonderful, Michael. Mats But there is no provision for storing the proper palette yet, as far as I can see. Correct me if I'm wrong. Mats ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] vf_overlay: Add `timebase` option to set the time base source for the output video.
On 1/20/16, Vittorio Gambaletta (VittGam)wrote: > With this commit it is possible to use vf_overlay to center a video over > a black background, without having to know the video framerate in advance > and set it as parameter to lavfi. > > Signed-off-by: Vittorio Gambaletta > --- > doc/filters.texi | 14 ++ > libavfilter/vf_overlay.c | 14 +- > 2 files changed, 23 insertions(+), 5 deletions(-) > Pardon me, could you give command example where this is useful but currently does not work, but does work with this patch applied? ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH] nut: Add PAL8 support
Signed-off-by: Michael Niedermayer--- libavcodec/raw.c|1 + libavformat/nut.c |2 ++ tests/ref/fate/filter-pixfmts-copy |2 +- tests/ref/fate/filter-pixfmts-crop |2 +- tests/ref/fate/filter-pixfmts-field |2 +- tests/ref/fate/filter-pixfmts-hflip |2 +- tests/ref/fate/filter-pixfmts-null |2 +- tests/ref/fate/filter-pixfmts-scale |2 +- tests/ref/fate/filter-pixfmts-vflip |2 +- 9 files changed, 10 insertions(+), 7 deletions(-) diff --git a/libavcodec/raw.c b/libavcodec/raw.c index 4f7417a..bfa2537 100644 --- a/libavcodec/raw.c +++ b/libavcodec/raw.c @@ -154,6 +154,7 @@ const PixelFormatTag ff_raw_pix_fmt_tags[] = { { AV_PIX_FMT_YUVA422P,MKTAG('Y', '4', 10 , 8 ) }, { AV_PIX_FMT_YUVA444P,MKTAG('Y', '4', 0 , 8 ) }, { AV_PIX_FMT_YA8, MKTAG('Y', '2', 0 , 8 ) }, +{ AV_PIX_FMT_PAL8,MKTAG('P', 'A', 'L', 8 ) }, { AV_PIX_FMT_YUVA420P9LE, MKTAG('Y', '4', 11 , 9 ) }, { AV_PIX_FMT_YUVA420P9BE, MKTAG( 9 , 11 , '4', 'Y') }, diff --git a/libavformat/nut.c b/libavformat/nut.c index 7d5f1ba..f4901e6 100644 --- a/libavformat/nut.c +++ b/libavformat/nut.c @@ -168,6 +168,8 @@ const AVCodecTag ff_nut_video_tags[] = { { AV_CODEC_ID_RAWVIDEO, MKTAG('X', 'Y', 'Z' , 36 ) }, { AV_CODEC_ID_RAWVIDEO, MKTAG(36 , 'Z' , 'Y', 'X') }, +{ AV_CODEC_ID_RAWVIDEO, MKTAG('P', 'A', 'L', 8 ) }, + { AV_CODEC_ID_RAWVIDEO, MKTAG(0xBA, 'B', 'G', 8 ) }, { AV_CODEC_ID_RAWVIDEO, MKTAG(0xBA, 'B', 'G', 16 ) }, { AV_CODEC_ID_RAWVIDEO, MKTAG(16 , 'G', 'B', 0xBA) }, diff --git a/tests/ref/fate/filter-pixfmts-copy b/tests/ref/fate/filter-pixfmts-copy index ead7290..7bab4b8 100644 --- a/tests/ref/fate/filter-pixfmts-copy +++ b/tests/ref/fate/filter-pixfmts-copy @@ -35,7 +35,7 @@ monob a6869bab4f6e64fe13dcab13b41775b3 monow 0404328f1838a6503371478a559ca20d nv128e24feb2c544dc26a20047a71e4c27aa nv21335d85c9af6110f26ae9e187a82ed2cf -pal8d9a58fa1964ba9a3b902797b0b1af0ab +pal8ff5929f5b42075793b2c34cb441bede5 rgb00de71e5a1f97f81fb51397a0435bfa72 rgb24 f4438057d046e6d98ade4e45294b21be rgb444be115e5259b91f4a416546b09570347633 diff --git a/tests/ref/fate/filter-pixfmts-crop b/tests/ref/fate/filter-pixfmts-crop index a930323..0b54641 100644 --- a/tests/ref/fate/filter-pixfmts-crop +++ b/tests/ref/fate/filter-pixfmts-crop @@ -33,7 +33,7 @@ gray16be38f599da990224de86e3dc7a543121a9 gray16le9ff7c866bd98def4e6c91542c1c45f80 nv1292cda427f794374731ec0321ee00caac nv211bcfc197f4fb95de85ba58182d8d2f69 -pal8c89abc9660914b2e6c2e6f8c29e86503 +pal81f2cdc8e718f95c875dbc1034a688bfb rgb0736646b70dd9a0be22b8da8041e35035 rgb24 c5fbbf816bb2000f4d2914e335698ef5 rgb444be44a33306889f7fa1a71ec831b860fd0a diff --git a/tests/ref/fate/filter-pixfmts-field b/tests/ref/fate/filter-pixfmts-field index e3df496..e599571 100644 --- a/tests/ref/fate/filter-pixfmts-field +++ b/tests/ref/fate/filter-pixfmts-field @@ -35,7 +35,7 @@ monob 599b938a6207de81bd96c902c2511676 monow 8486b94cd7c498b0effd33cb7e8e63df nv1216f7a46708ef25ebd0b72e47920cc11e nv217294574037cc7f9373ef5695d8ebe809 -pal8379b8c80f4422a353ad286f7120f2fb6 +pal80658c18dcd8d052d59dfbe23f5b368d9 rgb0ca3fa6e865b91b3511c7f2bf62830059 rgb24 25ab271e26a5785be169578d99da5dd0 rgb444bea05fabc91e485ec02461be900cd72ef3 diff --git a/tests/ref/fate/filter-pixfmts-hflip b/tests/ref/fate/filter-pixfmts-hflip index bd1481a..98c165b 100644 --- a/tests/ref/fate/filter-pixfmts-hflip +++ b/tests/ref/fate/filter-pixfmts-hflip @@ -33,7 +33,7 @@ gray16becf7294d9aa23e1b838692ec01ade587b gray16led91ce41e304419bcf32ac792f01bd64f nv12801e58f1be5fd0b5bc4bf007c604b0b4 nv219f10dfff8963dc327d3395af21f0554f -pal8cfe90d91bea5172babd97c3828270ea5 +pal85b7c77d99817b4f52339742a47de7797 rgb00092452f37d73da20193265ace0b7d57 rgb24 21571104e6091a689feabb7867e513dd rgb444be38d6d0e9aa15ce95f3fffcde8437632d diff --git a/tests/ref/fate/filter-pixfmts-null b/tests/ref/fate/filter-pixfmts-null index ead7290..7bab4b8 100644 --- a/tests/ref/fate/filter-pixfmts-null +++ b/tests/ref/fate/filter-pixfmts-null @@ -35,7 +35,7 @@ monob a6869bab4f6e64fe13dcab13b41775b3 monow 0404328f1838a6503371478a559ca20d nv128e24feb2c544dc26a20047a71e4c27aa nv21335d85c9af6110f26ae9e187a82ed2cf -pal8d9a58fa1964ba9a3b902797b0b1af0ab +pal8
Re: [FFmpeg-devel] [PATCH] nut: Add PAL8 support
On 02/09/2016 09:01 PM, Michael Niedermayer wrote: ive tried both converting to pal8 nut from yuv420p as well as storing rawvideo nut pal8 from a actual pal8 source, both worked Yes, it works fine. My bad. It seems nut is storing the palette at the end of the packet data rather than using a side data packet. When I'm aligning the frame, I have to copy the palette from the packet to the frame. A new patch is on the way don't bother about the previous ones. Mats ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] fix seek_timestamp flag
> This seems wrong, the original codes intent was not to handle the > seek_timestamp but the start time, which you just replace? I'm sorry I got the problem. But, why aren't we handling o->seek_timestamp anywhere in the code ? ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] fix seek_timestamp flag
On Tue, Feb 9, 2016 at 11:56 PM, Umair Khanwrote: > Signed-off-by: Umair Khan > --- > ffmpeg_opt.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/ffmpeg_opt.c b/ffmpeg_opt.c > index 669976b..011a10b 100644 > --- a/ffmpeg_opt.c > +++ b/ffmpeg_opt.c > @@ -164,6 +164,7 @@ static void init_options(OptionsContext *o) > o->mux_max_delay = 0.7; > o->start_time = AV_NOPTS_VALUE; > o->start_time_eof = AV_NOPTS_VALUE; > +o->seek_timestamp = AV_NOPTS_VALUE; > o->recording_time = INT64_MAX; > o->limit_filesize = UINT64_MAX; > o->chapters_input_file = INT_MAX; > @@ -984,8 +985,8 @@ static int open_input_file(OptionsContext *o, const char > *filename) > } > timestamp = (o->start_time == AV_NOPTS_VALUE) ? 0 : o->start_time; > /* add the stream start time */ > -if (!o->seek_timestamp && ic->start_time != AV_NOPTS_VALUE) > -timestamp += ic->start_time; > +if (o->seek_timestamp != AV_NOPTS_VALUE) > +timestamp += ic->seek_timestamp; This seems wrong, the original codes intent was not to handle the seek_timestamp but the start time, which you just replace? ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] avfilter/vf_nnedi: Fix memleak
On Tue, Feb 09, 2016 at 01:53:22PM +0100, Paul B Mahol wrote: > On 2/9/16, Michael Niedermayerwrote: > > Fixes CID1351359 > > > > Signed-off-by: Michael Niedermayer > > --- > > libavfilter/vf_nnedi.c |2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/libavfilter/vf_nnedi.c b/libavfilter/vf_nnedi.c > > index a1f2952..9a98ec2 100644 > > --- a/libavfilter/vf_nnedi.c > > +++ b/libavfilter/vf_nnedi.c > > @@ -1154,7 +1154,7 @@ static av_cold int init(AVFilterContext *ctx) > > > > s->fdsp = avpriv_float_dsp_alloc(0); > > if (!s->fdsp) > > -return AVERROR(ENOMEM); > > +ret = AVERROR(ENOMEM); > > > > ok applied thanks [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB While the State exists there can be no freedom; when there is freedom there will be no State. -- Vladimir Lenin signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] fix seek_timestamp flag
I didn't test the original code if it was actually creating issue or not, but this looks better to me. ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH] fix seek_timestamp flag
Signed-off-by: Umair Khan--- ffmpeg_opt.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ffmpeg_opt.c b/ffmpeg_opt.c index 669976b..011a10b 100644 --- a/ffmpeg_opt.c +++ b/ffmpeg_opt.c @@ -164,6 +164,7 @@ static void init_options(OptionsContext *o) o->mux_max_delay = 0.7; o->start_time = AV_NOPTS_VALUE; o->start_time_eof = AV_NOPTS_VALUE; +o->seek_timestamp = AV_NOPTS_VALUE; o->recording_time = INT64_MAX; o->limit_filesize = UINT64_MAX; o->chapters_input_file = INT_MAX; @@ -984,8 +985,8 @@ static int open_input_file(OptionsContext *o, const char *filename) } timestamp = (o->start_time == AV_NOPTS_VALUE) ? 0 : o->start_time; /* add the stream start time */ -if (!o->seek_timestamp && ic->start_time != AV_NOPTS_VALUE) -timestamp += ic->start_time; +if (o->seek_timestamp != AV_NOPTS_VALUE) +timestamp += ic->seek_timestamp; /* if seeking requested, we execute it */ if (o->start_time != AV_NOPTS_VALUE) { -- 2.5.0 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH v4] lavc/rawdec: Remove monowhite switching code for 1 bpp AVI without a palette
Fixed the stride for odd widths. This patch should be applied after your recent PAL8 changes for nut, Michael. Description follows: This patch removes the monowhite switching code for 1 bpp raw AVI without a palette. I don't see any reason to keep it, since it's semantically incorrect to use monowhite for palettized data in my book, it adds unnecessary noise to the code, and it's inconsistent with the rest of the code in FFmpeg. For black & white AVI or QuickTime files, in order to produce a monochrome nut file, force the pixel format with "-pix_fmt monow" or "-pix_fmt monob". Unfortunately, there seems to be some dithering going on when converting from pal8 to monow. A better way is to use "ffmpeg -i 1bpp.avi -vcodec copy -vtag B1W0 1bpp.nut". The "-vtag" option is currently needed, otherwise FFmpeg will use a RGB[15] codec tag for some reason. I have also updated the 1 bpp FATE test files (once again). Mats >From fa9ae2355de3d7f5c7622a650f6a2a8223b1b13d Mon Sep 17 00:00:00 2001 From: Mats PetersonDate: Wed, 10 Feb 2016 02:38:16 +0100 Subject: [PATCH v4] lavc/rawdec: Remove monowhite switching code for 1 bpp AVI without a palette --- libavcodec/rawdec.c | 34 ++ tests/ref/vsynth/vsynth1-bpp1 |4 ++-- tests/ref/vsynth/vsynth2-bpp1 |4 ++-- tests/ref/vsynth/vsynth3-bpp1 |4 ++-- tests/ref/vsynth/vsynth_lena-bpp1 |4 ++-- 5 files changed, 14 insertions(+), 36 deletions(-) diff --git a/libavcodec/rawdec.c b/libavcodec/rawdec.c index b7ce2b6..384c65d 100644 --- a/libavcodec/rawdec.c +++ b/libavcodec/rawdec.c @@ -100,7 +100,7 @@ static av_cold int raw_init_decoder(AVCodecContext *avctx) avpriv_set_systematic_pal2((uint32_t*)context->palette->data, avctx->pix_fmt); else { memset(context->palette->data, 0, AVPALETTE_SIZE); -if (avctx->bits_per_coded_sample <= 1) +if (avctx->bits_per_coded_sample == 1) memset(context->palette->data, 0xff, 4); } } @@ -121,17 +121,13 @@ static av_cold int raw_init_decoder(AVCodecContext *avctx) if (avctx->codec_tag == MKTAG('B','1','W','0') || avctx->codec_tag == MKTAG('B','0','W','1')) context->is_nut_mono = 1; -else if (avctx->codec_tag == MKTAG('P','A','L','8')) +else if (avctx->codec_tag == MKTAG('P','A','L',8)) context->is_nut_pal8 = 1; if (avctx->codec_tag == AV_RL32("yuv2") && avctx->pix_fmt == AV_PIX_FMT_YUYV422) context->is_yuv2 = 1; -/* Temporary solution until PAL8 is implemented in nut */ -if (context->is_pal8 && avctx->bits_per_coded_sample == 1) -avctx->pix_fmt = AV_PIX_FMT_NONE; - return 0; } @@ -192,33 +188,13 @@ static int raw_decode(AVCodecContext *avctx, void *data, int *got_frame, return AVERROR_INVALIDDATA; } -if (context->is_nut_mono) -stride = avctx->width / 8 + (avctx->width & 7 ? 1 : 0); -else if (context->is_nut_pal8) -stride = avctx->width; -else -stride = avpkt->size / avctx->height; - +stride = (avpkt->size - (context->is_nut_pal8 ? AVPALETTE_SIZE : 0)) / avctx->height; + if (stride == 0 || avpkt->size < stride * avctx->height) { av_log(avctx, AV_LOG_ERROR, "Packet too small (%d)\n", avpkt->size); return AVERROR_INVALIDDATA; } -/* Temporary solution until PAL8 is implemented in nut */ -if (avctx->pix_fmt == AV_PIX_FMT_NONE && -avctx->bits_per_coded_sample == 1 && -avctx->frame_number == 0 && -context->palette && -AV_RB64(context->palette->data) == 0x -) { -const uint8_t *pal = av_packet_get_side_data(avpkt, AV_PKT_DATA_PALETTE, NULL); -if (!pal) { -avctx->pix_fmt = AV_PIX_FMT_MONOWHITE; -context->is_pal8 = 0; -context->is_mono = 1; -} else -avctx->pix_fmt = AV_PIX_FMT_PAL8; -} desc = av_pix_fmt_desc_get(avctx->pix_fmt); if ((avctx->bits_per_coded_sample == 8 || avctx->bits_per_coded_sample == 4 @@ -417,6 +393,8 @@ static int raw_decode(AVCodecContext *avctx, void *data, int *got_frame, if ((avctx->pix_fmt == AV_PIX_FMT_PAL8 && buf_size < context->frame_size) || (desc->flags & AV_PIX_FMT_FLAG_PSEUDOPAL)) { +if (context->is_nut_pal8) +memcpy(context->palette->data, avpkt->data + avpkt->size - AVPALETTE_SIZE, AVPALETTE_SIZE); frame->buf[1] = av_buffer_ref(context->palette); if (!frame->buf[1]) { av_buffer_unref(>buf[0]); diff --git a/tests/ref/vsynth/vsynth1-bpp1 b/tests/ref/vsynth/vsynth1-bpp1 index 32dab11..378f990 100644 --- a/tests/ref/vsynth/vsynth1-bpp1 +++ b/tests/ref/vsynth/vsynth1-bpp1 @@ -1,4 +1,4 @@ 3e5e0f4afb3a0350440e86b1ea56cec9 *tests/data/fate/vsynth1-bpp1.avi 640452 tests/data/fate/vsynth1-bpp1.avi -ccef5f5d5b0392f1d01c200499dac657
[FFmpeg-devel] [PATCH v5] lavc/rawdec: Remove monowhite switching code for 1 bpp AVI without a palette
Fixed trailing whitespace. This patch should be applied after your recent PAL8 changes for nut, Michael. Description follows: This patch removes the monowhite switching code for 1 bpp raw AVI without a palette. I don't see any reason to keep it, since it's semantically incorrect to use monowhite for palettized data in my book, it adds unnecessary noise to the code, and it's inconsistent with the rest of the code in FFmpeg. For black & white AVI or QuickTime files, in order to produce a monochrome nut file, force the pixel format with "-pix_fmt monow" or "-pix_fmt monob". Unfortunately, there seems to be some dithering going on when converting from pal8 to monow. A better way is to use "ffmpeg -i 1bpp.avi -vcodec copy -vtag B1W0 1bpp.nut". The "-vtag" option is currently needed, otherwise FFmpeg will use a RGB[15] codec tag for some reason. I have also updated the 1 bpp FATE test files (once again). Mats >From fb5e1ddde3f9ec9a7ad376e169c76a59f51e380a Mon Sep 17 00:00:00 2001 From: Mats PetersonDate: Wed, 10 Feb 2016 02:44:58 +0100 Subject: [PATCH v5] lavc/rawdec: Remove monowhite switching code for 1 bpp AVI without a palette --- libavcodec/rawdec.c | 32 +--- tests/ref/vsynth/vsynth1-bpp1 |4 ++-- tests/ref/vsynth/vsynth2-bpp1 |4 ++-- tests/ref/vsynth/vsynth3-bpp1 |4 ++-- tests/ref/vsynth/vsynth_lena-bpp1 |4 ++-- 5 files changed, 13 insertions(+), 35 deletions(-) diff --git a/libavcodec/rawdec.c b/libavcodec/rawdec.c index b7ce2b6..22b1228 100644 --- a/libavcodec/rawdec.c +++ b/libavcodec/rawdec.c @@ -100,7 +100,7 @@ static av_cold int raw_init_decoder(AVCodecContext *avctx) avpriv_set_systematic_pal2((uint32_t*)context->palette->data, avctx->pix_fmt); else { memset(context->palette->data, 0, AVPALETTE_SIZE); -if (avctx->bits_per_coded_sample <= 1) +if (avctx->bits_per_coded_sample == 1) memset(context->palette->data, 0xff, 4); } } @@ -121,17 +121,13 @@ static av_cold int raw_init_decoder(AVCodecContext *avctx) if (avctx->codec_tag == MKTAG('B','1','W','0') || avctx->codec_tag == MKTAG('B','0','W','1')) context->is_nut_mono = 1; -else if (avctx->codec_tag == MKTAG('P','A','L','8')) +else if (avctx->codec_tag == MKTAG('P','A','L',8)) context->is_nut_pal8 = 1; if (avctx->codec_tag == AV_RL32("yuv2") && avctx->pix_fmt == AV_PIX_FMT_YUYV422) context->is_yuv2 = 1; -/* Temporary solution until PAL8 is implemented in nut */ -if (context->is_pal8 && avctx->bits_per_coded_sample == 1) -avctx->pix_fmt = AV_PIX_FMT_NONE; - return 0; } @@ -192,33 +188,13 @@ static int raw_decode(AVCodecContext *avctx, void *data, int *got_frame, return AVERROR_INVALIDDATA; } -if (context->is_nut_mono) -stride = avctx->width / 8 + (avctx->width & 7 ? 1 : 0); -else if (context->is_nut_pal8) -stride = avctx->width; -else -stride = avpkt->size / avctx->height; +stride = (avpkt->size - (context->is_nut_pal8 ? AVPALETTE_SIZE : 0)) / avctx->height; if (stride == 0 || avpkt->size < stride * avctx->height) { av_log(avctx, AV_LOG_ERROR, "Packet too small (%d)\n", avpkt->size); return AVERROR_INVALIDDATA; } -/* Temporary solution until PAL8 is implemented in nut */ -if (avctx->pix_fmt == AV_PIX_FMT_NONE && -avctx->bits_per_coded_sample == 1 && -avctx->frame_number == 0 && -context->palette && -AV_RB64(context->palette->data) == 0x -) { -const uint8_t *pal = av_packet_get_side_data(avpkt, AV_PKT_DATA_PALETTE, NULL); -if (!pal) { -avctx->pix_fmt = AV_PIX_FMT_MONOWHITE; -context->is_pal8 = 0; -context->is_mono = 1; -} else -avctx->pix_fmt = AV_PIX_FMT_PAL8; -} desc = av_pix_fmt_desc_get(avctx->pix_fmt); if ((avctx->bits_per_coded_sample == 8 || avctx->bits_per_coded_sample == 4 @@ -417,6 +393,8 @@ static int raw_decode(AVCodecContext *avctx, void *data, int *got_frame, if ((avctx->pix_fmt == AV_PIX_FMT_PAL8 && buf_size < context->frame_size) || (desc->flags & AV_PIX_FMT_FLAG_PSEUDOPAL)) { +if (context->is_nut_pal8) +memcpy(context->palette->data, avpkt->data + avpkt->size - AVPALETTE_SIZE, AVPALETTE_SIZE); frame->buf[1] = av_buffer_ref(context->palette); if (!frame->buf[1]) { av_buffer_unref(>buf[0]); diff --git a/tests/ref/vsynth/vsynth1-bpp1 b/tests/ref/vsynth/vsynth1-bpp1 index 32dab11..378f990 100644 --- a/tests/ref/vsynth/vsynth1-bpp1 +++ b/tests/ref/vsynth/vsynth1-bpp1 @@ -1,4 +1,4 @@ 3e5e0f4afb3a0350440e86b1ea56cec9 *tests/data/fate/vsynth1-bpp1.avi 640452 tests/data/fate/vsynth1-bpp1.avi -ccef5f5d5b0392f1d01c200499dac657
Re: [FFmpeg-devel] FFmpeg in Outreachy Round 12
Hi, Glad FFmpeg will participate in this round! Thank you for making a decision to allocate the funds for Outreachy! We can credit all three of you as coordinators. Please be sure to coordinate among yourselves on making decisions and/or having each one of you empowered to make decisions. What should the updated description be, given the project ideas you have this round? Last year, it was "FFmpeg is the universal multimedia toolkit: a complete, cross-platform solution to record, convert, filter and stream audio and video. Available projects like FFv1 codecs frame support and postprocessing optimization involve coding in C." Please note that if you would like to pay the mentor, it will need to come from funds in addition to the $6,500 that covers one Outreachy intern. Also, if you have multiple strong applicants, we might be able to cover an additional intern from Outreachy general funds, but we would not cover the mentor stipend. So if FFmpeg would like to pay mentor(s), it would need to allocate money for the stipend(s) separately. Thanks! Marina - Original Message - From: "Sarah A Sharp"To: "Michael Niedermayer" Cc: "FFmpeg development discussions and patches" , o...@ffmpeg.org, "outreachy-admins" Sent: Tuesday, February 9, 2016 3:47:37 PM Subject: Re: [FFmpeg-devel] FFmpeg in Outreachy Round 12 Great! I will add you as an org to the wiki asap. We do need one coordinator as the main contact, and then additional mentors who work one on one with a student during the three month internship. Who will be the main coordinator and who will be mentors? Sarah Sharp On Feb 9, 2016 12:34 PM, "Michael Niedermayer" wrote: > Hi Outreachy admins > > just wanted to make sure this isnt missed (as it was sent to > outreachy-list and not outreachy-admins as described at > > https://mail.gnome.org/mailman/private/opw-announce-list/2016-January/msg0.html > ) > > Kieran, Lou and myself volunteer as coordinators/admins or what it > was called for FFmpeg > > FFmpeg has 6500 USD available: > http://permalink.gmane.org/gmane.comp.video.ffmpeg.devel/208789 > > > On Tue, Feb 09, 2016 at 12:08:57AM +, Kieran Kunhya wrote: > > Hello, > > > > I have volunteered to be the co-ordinator for FFmpeg in Outreachy 2016. I > > was a mentor for Outreachy in 2015 and look forward to working with > > Outreachy to attract a more diverse base of contributors to FFmpeg. > > > > Over the next few hours you should start seeing our project page start to > > fill up: > > https://trac.ffmpeg.org/wiki/SponsoringPrograms/Outreachy/2016-05 > > [...] > > Thanks > > -- > Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB > > Everything should be made as simple as possible, but not simpler. > -- Albert Einstein > ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] FFmpeg in Outreachy Round 12
Great! I will add you as an org to the wiki asap. We do need one coordinator as the main contact, and then additional mentors who work one on one with a student during the three month internship. Who will be the main coordinator and who will be mentors? Sarah Sharp On Feb 9, 2016 12:34 PM, "Michael Niedermayer"wrote: > Hi Outreachy admins > > just wanted to make sure this isnt missed (as it was sent to > outreachy-list and not outreachy-admins as described at > > https://mail.gnome.org/mailman/private/opw-announce-list/2016-January/msg0.html > ) > > Kieran, Lou and myself volunteer as coordinators/admins or what it > was called for FFmpeg > > FFmpeg has 6500 USD available: > http://permalink.gmane.org/gmane.comp.video.ffmpeg.devel/208789 > > > On Tue, Feb 09, 2016 at 12:08:57AM +, Kieran Kunhya wrote: > > Hello, > > > > I have volunteered to be the co-ordinator for FFmpeg in Outreachy 2016. I > > was a mentor for Outreachy in 2015 and look forward to working with > > Outreachy to attract a more diverse base of contributors to FFmpeg. > > > > Over the next few hours you should start seeing our project page start to > > fill up: > > https://trac.ffmpeg.org/wiki/SponsoringPrograms/Outreachy/2016-05 > > [...] > > Thanks > > -- > Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB > > Everything should be made as simple as possible, but not simpler. > -- Albert Einstein > ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH] avfilter/dualinput: use pts provided from framesync
Hi, patch attached. From b62b85d03ab21c8c6103b8c6038070c60bb87878 Mon Sep 17 00:00:00 2001 From: Paul B MaholDate: Tue, 9 Feb 2016 18:32:54 +0100 Subject: [PATCH] avfilter/dualinput: use pts provided by framesync This fixes stalled output pts when main stream ends. Signed-off-by: Paul B Mahol --- libavfilter/dualinput.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavfilter/dualinput.c b/libavfilter/dualinput.c index ea2007f..1a078a2 100644 --- a/libavfilter/dualinput.c +++ b/libavfilter/dualinput.c @@ -32,7 +32,7 @@ static int process_frame(FFFrameSync *fs) return ret; } av_assert0(mainpic); -mainpic->pts = av_rescale_q(mainpic->pts, s->fs.time_base, ctx->outputs[0]->time_base); +mainpic->pts = av_rescale_q(s->fs.pts, s->fs.time_base, ctx->outputs[0]->time_base); if (secondpic && !ctx->is_disabled) mainpic = s->process(ctx, mainpic, secondpic); ret = ff_filter_frame(ctx->outputs[0], mainpic); -- 1.9.1 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel