Re: [FFmpeg-devel] IRC meeting on Saturday 2015-09-12, UTC 15:00

2015-09-12 Thread Yayoi Ukai
On Thu, Sep 10, 2015 at 10:46 AM, Michael Niedermayer  wrote:
> On Mon, Sep 07, 2015 at 11:37:47AM +0200, Stefano Sabatini wrote:
>> Hi,
>>
>> I propose to have an official IRC meeting on the next Saturday, and I
>> propose the tentative time of 15:00 UTC, but feel free to propose a
>> different time if this can't suit you.
>>
>> The IRC meeting channel will be public and the log will be published
>> at the end of the meeting.
>>
>> This meeting is also meant as a preparation for the real-life meeting
>> that will be held in Paris at the next VDD
>> (http://www.videolan.org/videolan/events/vdd15/) for the FFmpeg
>> developers who will attend it.
>>
>> I propose these topics of the day (suggested by ubitux on IRC):
>> 1. ABI compatibility policy
>
>> 2. general policy decision process
>
> heres a suggestion, maybe useful as input for discussions on
> Saturday ...
>
> FFmpeg used and uses "unanimous consent" in patch reviews
> any person could make a suggestion
> to improve a patch and it has to be taken care of one way or another
> before the patch is ok. This system worked quite well almost all the
> time. So i would suggest to use the same / a similar system for
> policy decisions
>
> * Everyone should be able to comment and propose options/choices
> * There should be enough time to understand, discuss and amend
>   proposals
> * People should try to understand the other people and avoid strawman
>   arguments and other non constructive discussion tactics, people/the
>   commuity should step in if discussions become non constructive and
>   hostile and try to get people back toward constructive discussion.
> * People should be able to declare reservations to a proposal without
>   blocking the proposal and as a seperate choice veto it in a blocking
>   fashion. A veto should be public with full name of the developer,
>   reason why it is bad for the community/project and ideally a
>   alternative proposal. Also developers vetoing a proposal must be
>   willing and able to work on finding an better solution.

So you can add a deadline for the alternate proposal. For example,
if the person who vetoed doesn't come up with an alternate proposal
within 30 days,
the original proposal must be passed.

> * The authors of proposals should try to amend proposals based on
>   raised issues & reservations and restart the process if changes
>   where made. There could be a maximum number of such restarts after
>   which only vetos would block
>
> If this doesnt work due to too many vetos then it could be adjusted
> to require 2 or more vetos to reject a proposal, but IMHO i dont think
> this would be needed. Simply having ones full name in public with a
> veto should result in people using the veto right wisely.
>
> A "unanimous consent" system also should push toward cooperation
> and discussions intended to find compromises and understanding the
> others. Because simply trying to be loud and push and troll are
> unlikely effective means to find an agreement. also such a system, if
> it works, would ensure noones oppinion or suggestion is just pushed
> aside
>
> [...]
> --
> Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
>
> There will always be a question for which you do not know the correct answer.
>
> ___
> 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


Re: [FFmpeg-devel] IRC meeting on Saturday 2015-09-12, UTC 15:00

2015-09-12 Thread Yayoi Ukai
FYI: Here is my experience with Python.org

Step 1: If it the decision is not so important (simple patch etc.) and
if 3 reviewers say yes, it will be merged.
Also, it seems there are no maintainers for specific parts of the
code, but instead they have "reviewers" and only
reviewers can review the patch. And once they approved the patch, the
patch will be submitted automated system
and "reviewers" do not merge the patch by themselves.

Step 2:
If it is decided that the patch or change is worthy of escalation, it
will be reviewed by more people. (I recall 6 but I am not sure)
and they vote. (I am not sure which condition justify escalation.)

Then, they will repeat the voting and escalation process and the final
decision is made by a vote
of  the "committee" (majority rules, I am also not sure how they
choose the committee etc.
the python.org person might have told me but I don't remember..)



I got really confused when I first came to FFmpeg. I thought it would
be very similar to Python,
and I didn't know that an Open Source Free Software Project could be
run so dramatically different..
but it made sense though.
and I see a lot of good things about the existing FFmpeg system too..



I think deciding point would be.. (I am just summarizing what is
discussed so far.)

- Deciding what events or arguments can causes/trigger the escalation.
(I guess it means when do you need more than arguing over the email?)

- Once it is decided to be escalated/vote, how the vote leads to the
decisions. (majority rules or veto rules?)
(and who qualifies to vote for after escalation?) (Well, basically
current patch review is
everyone votes right?)

- Well, you can always try one and you can come back later to see how
well it is working.
(you need to test any system so...and there will be one problem in one
system and the other (oh democracy..).. so..
You can see how happy you are and come back next year..or next time.
now your guys are leaderless by the leader's own decision and your
guys are pretty okay.. so i think
you are fine. :)  )

-- 

--


On Fri, Sep 11, 2015 at 6:11 AM, Ronald S. Bultje  wrote:
> Hi,
>
> On Fri, Sep 11, 2015 at 8:46 AM, Nicolas George  wrote:
>
>> Le quintidi 25 fructidor, an CCXXIII, Michael Niedermayer a écrit :
>> > I have a few problems with using the UN security council as
>> > comparission
>>
> [..]
>
>> The project needs a way of making a decision when people do not agree.
>
>
> +1, that's exactly what I meant.
>
> (Thank you for putting it into words.)
>
> Ronald
> ___
> 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] "configure" breaks on MSYS2 MINGW64

2015-09-12 Thread Peter Belkner

Hi,

building current FFmpeg breaks on MSYS2 MINGW64 
(http://sourceforge.net/projects/msys2/) with error "Unknown OS 
'mingw64_nt-6.0'." from "configure".


Probably "mingw64_nt-6.0" results from "uname -s" on MSYS2 MINGW64:

   $ uname -s
   MINGW64_NT-6.0

The attached patch seems to fix it.

Regards, Peter

diff -rc ./a/ffmpeg/configure ./b/ffmpeg/configure
*** ./a/ffmpeg/configureFri Sep 11 19:20:03 2015
--- ./b/ffmpeg/configureSat Sep 12 10:16:52 2015
***
*** 3297,3303 
  
  exesuf() {
  case $1 in
! mingw32*|win32|win64|cygwin*|*-dos|freedos|opendos|os/2*|symbian) 
echo .exe ;;
  esac
  }
  
--- 3297,3303 
  
  exesuf() {
  case $1 in
! 
mingw32*|mingw64*|win32|win64|cygwin*|*-dos|freedos|opendos|os/2*|symbian) echo 
.exe ;;
  esac
  }
  
***
*** 4342,4348 
  enabled_any pic shared x86_64 ||
  { check_cflags -mdynamic-no-pic && add_asflags -mdynamic-no-pic; }
  ;;
! mingw32*)
  if test $target_os = "mingw32ce"; then
  disable network
  else
--- 4342,4348 
  enabled_any pic shared x86_64 ||
  { check_cflags -mdynamic-no-pic && add_asflags -mdynamic-no-pic; }
  ;;
! mingw32*|mingw64*)
  if test $target_os = "mingw32ce"; then
  disable network
  else
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] "configure" breaks on MSYS2 MINGW64

2015-09-12 Thread Geek.Song
On Sat, Sep 12, 2015 at 5:06 PM, Peter Belkner  wrote:
> Hi,
>
> building current FFmpeg breaks on MSYS2 MINGW64
> (http://sourceforge.net/projects/msys2/) with error "Unknown OS
> 'mingw64_nt-6.0'." from "configure".
>
> Probably "mingw64_nt-6.0" results from "uname -s" on MSYS2 MINGW64:
>
>$ uname -s
>MINGW64_NT-6.0
>
> The attached patch seems to fix it.
>

`diff -u ` will prefer.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] "configure" breaks on MSYS2 MINGW64

2015-09-12 Thread Peter Belkner

On 12.09.2015 11:15, Geek.Song wrote:

diff -u


--- ./a/ffmpeg/configure2015-09-11 19:20:03.0 +0200
+++ ./b/ffmpeg/configure2015-09-12 11:36:32.78060 +0200
@@ -3297,7 +3297,7 @@
 
 exesuf() {
 case $1 in
-mingw32*|win32|win64|cygwin*|*-dos|freedos|opendos|os/2*|symbian) echo 
.exe ;;
+
mingw32*|mingw64*|win32|win64|cygwin*|*-dos|freedos|opendos|os/2*|symbian) echo 
.exe ;;
 esac
 }
 
@@ -4342,7 +4342,7 @@
 enabled_any pic shared x86_64 ||
 { check_cflags -mdynamic-no-pic && add_asflags -mdynamic-no-pic; }
 ;;
-mingw32*)
+mingw32*|mingw64*)
 if test $target_os = "mingw32ce"; then
 disable network
 else
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] IRC meeting on Saturday 2015-09-12, UTC 15:00

2015-09-12 Thread Ronald S. Bultje
Hi,

On Sat, Sep 12, 2015 at 4:21 AM, Yayoi Ukai  wrote:

> On Thu, Sep 10, 2015 at 10:46 AM, Michael Niedermayer 
> wrote:
> > On Mon, Sep 07, 2015 at 11:37:47AM +0200, Stefano Sabatini wrote:
> >> Hi,
> >>
> >> I propose to have an official IRC meeting on the next Saturday, and I
> >> propose the tentative time of 15:00 UTC, but feel free to propose a
> >> different time if this can't suit you.
> >>
> >> The IRC meeting channel will be public and the log will be published
> >> at the end of the meeting.
> >>
> >> This meeting is also meant as a preparation for the real-life meeting
> >> that will be held in Paris at the next VDD
> >> (http://www.videolan.org/videolan/events/vdd15/) for the FFmpeg
> >> developers who will attend it.
> >>
> >> I propose these topics of the day (suggested by ubitux on IRC):
> >> 1. ABI compatibility policy
> >
> >> 2. general policy decision process
> >
> > heres a suggestion, maybe useful as input for discussions on
> > Saturday ...
> >
> > FFmpeg used and uses "unanimous consent" in patch reviews
> > any person could make a suggestion
> > to improve a patch and it has to be taken care of one way or another
> > before the patch is ok. This system worked quite well almost all the
> > time. So i would suggest to use the same / a similar system for
> > policy decisions
> >
> > * Everyone should be able to comment and propose options/choices
> > * There should be enough time to understand, discuss and amend
> >   proposals
> > * People should try to understand the other people and avoid strawman
> >   arguments and other non constructive discussion tactics, people/the
> >   commuity should step in if discussions become non constructive and
> >   hostile and try to get people back toward constructive discussion.
> > * People should be able to declare reservations to a proposal without
> >   blocking the proposal and as a seperate choice veto it in a blocking
> >   fashion. A veto should be public with full name of the developer,
> >   reason why it is bad for the community/project and ideally a
> >   alternative proposal. Also developers vetoing a proposal must be
> >   willing and able to work on finding an better solution.
>
> So you can add a deadline for the alternate proposal. For example,
> if the person who vetoed doesn't come up with an alternate proposal
> within 30 days,
> the original proposal must be passed.


It means everyone can slow a proposal by 30 days.

Why do we need vetos?

Ronald
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH v2] avformat/avienc: add muxer option "write_channel_mask"

2015-09-12 Thread Michael Niedermayer
On Thu, Sep 10, 2015 at 04:43:42PM +0200, Tobias Rapp wrote:
> On 10.09.2015 15:28, Tobias Rapp wrote:
> >On 10.09.2015 14:57, Derek Buitenhuis wrote:
> >>On 9/10/2015 1:25 PM, Tobias Rapp wrote:
> >>>My use-case is handling recorded AVI files which have an
> >>>unknown/empty/unsupported channel layout. Instead of writing the guessed
> >>>channel layout into the output file, using "-write_channel_mask off"
> >>>allows to write an empty channel mask instead.
> >>
> >>Are such files even valid?
> >
> >I guess so as the docs at [1] say in chapter "Details about dwChannelMask":
> >
> >"If, for example in a multi-channel audio authoring application, no
> >speaker location is desired on any of the mono streams, the
> >dwChannelMask should explicitly be set to 0."
> >
> >BTW: I just noticed that FATE is failing after applying the patch so
> >I'll need to take a closer look and update the patch before it can be
> >applied.
> 
> Forgot to add a reference to AVClass in AVIContext. Attached an
> updated version of the patch.
> 
> /Tobias

>  avienc.c  |   23 +--
>  riff.h|5 +
>  riffenc.c |5 +++--
>  3 files changed, 29 insertions(+), 4 deletions(-)
> 0965d232568ffd0c4ac8156de8efd547eb963cd7  
> 0001-avformat-avienc-add-muxer-option-write_channel_mask.patch
> From 6b2c3feb43870398005ea307d6d9ee4736dd2d11 Mon Sep 17 00:00:00 2001
> From: Tobias Rapp 
> Date: Thu, 10 Sep 2015 14:04:18 +0200
> Subject: [PATCH] avformat/avienc: add muxer option "write_channel_mask"

applied

thanks

[...]

-- 
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] "configure" breaks on MSYS2 MINGW64

2015-09-12 Thread Matt Oliver
On 12 September 2015 at 19:40, Peter Belkner  wrote:

> On 12.09.2015 11:15, Geek.Song wrote:
>
>> diff -u
>
>
LGTM.
I had an identical patch ready to fix the same problem so this one is fine.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] "configure" breaks on MSYS2 MINGW64

2015-09-12 Thread Hendrik Leppkes
On Sat, Sep 12, 2015 at 2:57 PM, Matt Oliver  wrote:
> On 12 September 2015 at 19:40, Peter Belkner  wrote:
>
>> On 12.09.2015 11:15, Geek.Song wrote:
>>
>>> diff -u
>>
>>
> LGTM.
> I had an identical patch ready to fix the same problem so this one is fine.

LGTM too, applied.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] IRC meeting on Saturday 2015-09-12, UTC 15:00

2015-09-12 Thread Michael Niedermayer
On Sat, Sep 12, 2015 at 06:50:50AM -0400, Ronald S. Bultje wrote:
> Hi,
> 
> On Sat, Sep 12, 2015 at 4:21 AM, Yayoi Ukai  wrote:
> 
> > On Thu, Sep 10, 2015 at 10:46 AM, Michael Niedermayer 
> > wrote:
> > > On Mon, Sep 07, 2015 at 11:37:47AM +0200, Stefano Sabatini wrote:
> > >> Hi,
> > >>
> > >> I propose to have an official IRC meeting on the next Saturday, and I
> > >> propose the tentative time of 15:00 UTC, but feel free to propose a
> > >> different time if this can't suit you.
> > >>
> > >> The IRC meeting channel will be public and the log will be published
> > >> at the end of the meeting.
> > >>
> > >> This meeting is also meant as a preparation for the real-life meeting
> > >> that will be held in Paris at the next VDD
> > >> (http://www.videolan.org/videolan/events/vdd15/) for the FFmpeg
> > >> developers who will attend it.
> > >>
> > >> I propose these topics of the day (suggested by ubitux on IRC):
> > >> 1. ABI compatibility policy
> > >
> > >> 2. general policy decision process
> > >
> > > heres a suggestion, maybe useful as input for discussions on
> > > Saturday ...
> > >
> > > FFmpeg used and uses "unanimous consent" in patch reviews
> > > any person could make a suggestion
> > > to improve a patch and it has to be taken care of one way or another
> > > before the patch is ok. This system worked quite well almost all the
> > > time. So i would suggest to use the same / a similar system for
> > > policy decisions
> > >
> > > * Everyone should be able to comment and propose options/choices
> > > * There should be enough time to understand, discuss and amend
> > >   proposals
> > > * People should try to understand the other people and avoid strawman
> > >   arguments and other non constructive discussion tactics, people/the
> > >   commuity should step in if discussions become non constructive and
> > >   hostile and try to get people back toward constructive discussion.
> > > * People should be able to declare reservations to a proposal without
> > >   blocking the proposal and as a seperate choice veto it in a blocking
> > >   fashion. A veto should be public with full name of the developer,
> > >   reason why it is bad for the community/project and ideally a
> > >   alternative proposal. Also developers vetoing a proposal must be
> > >   willing and able to work on finding an better solution.
> >
> > So you can add a deadline for the alternate proposal. For example,
> > if the person who vetoed doesn't come up with an alternate proposal
> > within 30 days,
> > the original proposal must be passed.
> 
> 
> It means everyone can slow a proposal by 30 days.
> 

> Why do we need vetos?

let me awnser a different question first
Why do we need developers/contributors?
to write and maintain code amongth many other reasons

If we depend on these developers/contributors then IMO we should take
their oppinons and objections serious and if one of them is willing
to risk her/his good name to oppose a proposal in public and maybe also
plans to put signifiant time into creating a better compromise proposal
then i belive this is something that should not just be brushed away
easily, and especially not "quick quick" while
everyones minds are maybe heated about some debate

vetos would be one way to achive this
iam not saying that we absolutely need vetos but i think that we
should not pass proposals that would cause any one developer to leave
the project or to make people be seriously unhappy.
People contribute for fun, for social reasons and because they have to
(like because they are paied for it)

a proposal that makes contributions less fun is a bad proposal as it
will result in fewer contributions.

[...]
-- 
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] IRC meeting on Saturday 2015-09-12, UTC 15:00

2015-09-12 Thread Hendrik Leppkes
On Sat, Sep 12, 2015 at 3:24 PM, Michael Niedermayer  wrote:
> On Sat, Sep 12, 2015 at 06:50:50AM -0400, Ronald S. Bultje wrote:
>> Hi,
>>
>> On Sat, Sep 12, 2015 at 4:21 AM, Yayoi Ukai  wrote:
>>
>> > On Thu, Sep 10, 2015 at 10:46 AM, Michael Niedermayer 
>> > wrote:
>> > > On Mon, Sep 07, 2015 at 11:37:47AM +0200, Stefano Sabatini wrote:
>> > >> Hi,
>> > >>
>> > >> I propose to have an official IRC meeting on the next Saturday, and I
>> > >> propose the tentative time of 15:00 UTC, but feel free to propose a
>> > >> different time if this can't suit you.
>> > >>
>> > >> The IRC meeting channel will be public and the log will be published
>> > >> at the end of the meeting.
>> > >>
>> > >> This meeting is also meant as a preparation for the real-life meeting
>> > >> that will be held in Paris at the next VDD
>> > >> (http://www.videolan.org/videolan/events/vdd15/) for the FFmpeg
>> > >> developers who will attend it.
>> > >>
>> > >> I propose these topics of the day (suggested by ubitux on IRC):
>> > >> 1. ABI compatibility policy
>> > >
>> > >> 2. general policy decision process
>> > >
>> > > heres a suggestion, maybe useful as input for discussions on
>> > > Saturday ...
>> > >
>> > > FFmpeg used and uses "unanimous consent" in patch reviews
>> > > any person could make a suggestion
>> > > to improve a patch and it has to be taken care of one way or another
>> > > before the patch is ok. This system worked quite well almost all the
>> > > time. So i would suggest to use the same / a similar system for
>> > > policy decisions
>> > >
>> > > * Everyone should be able to comment and propose options/choices
>> > > * There should be enough time to understand, discuss and amend
>> > >   proposals
>> > > * People should try to understand the other people and avoid strawman
>> > >   arguments and other non constructive discussion tactics, people/the
>> > >   commuity should step in if discussions become non constructive and
>> > >   hostile and try to get people back toward constructive discussion.
>> > > * People should be able to declare reservations to a proposal without
>> > >   blocking the proposal and as a seperate choice veto it in a blocking
>> > >   fashion. A veto should be public with full name of the developer,
>> > >   reason why it is bad for the community/project and ideally a
>> > >   alternative proposal. Also developers vetoing a proposal must be
>> > >   willing and able to work on finding an better solution.
>> >
>> > So you can add a deadline for the alternate proposal. For example,
>> > if the person who vetoed doesn't come up with an alternate proposal
>> > within 30 days,
>> > the original proposal must be passed.
>>
>>
>> It means everyone can slow a proposal by 30 days.
>>
>
>> Why do we need vetos?
>
> let me awnser a different question first
> Why do we need developers/contributors?
> to write and maintain code amongth many other reasons
>
> If we depend on these developers/contributors then IMO we should take
> their oppinons and objections serious and if one of them is willing
> to risk her/his good name to oppose a proposal in public and maybe also
> plans to put signifiant time into creating a better compromise proposal
> then i belive this is something that should not just be brushed away
> easily, and especially not "quick quick" while
> everyones minds are maybe heated about some debate
>
> vetos would be one way to achive this
> iam not saying that we absolutely need vetos but i think that we
> should not pass proposals that would cause any one developer to leave
> the project or to make people be seriously unhappy.
> People contribute for fun, for social reasons and because they have to
> (like because they are paied for it)

What if these "objections" make everyone else unhappy and have no fun
anymore, because there is no good technical reason behind them, just
personal preference (in an area where the objecting developer is not a
maintainer)?
We have had such cases before, endless arguments on the ML and in the
end the majority of developers was just annoyed and eventually dropped
it because it was too much effort (and the objecting party also not
constructively providing an alternative)

Unless there is a clear and documented technical reason for an
objection (in which case one would hope the issue solves itself
anyway), a majority should be able to move forward, and not just get
annoyed and frustrated when submitting improvements.

>
> a proposal that makes contributions less fun is a bad proposal as it
> will result in fewer contributions.
>
> [...]
> --
> Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
>
> Opposition brings concord. Out of discord comes the fairest harmony.
> -- Heraclitus
>
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http:

Re: [FFmpeg-devel] IRC meeting on Saturday 2015-09-12, UTC 15:00

2015-09-12 Thread Ronald S. Bultje
Hi,

On Sat, Sep 12, 2015 at 9:39 AM, Hendrik Leppkes 
wrote:

> On Sat, Sep 12, 2015 at 3:24 PM, Michael Niedermayer 
> wrote:
> > On Sat, Sep 12, 2015 at 06:50:50AM -0400, Ronald S. Bultje wrote:
> >> Hi,
> >>
> >> On Sat, Sep 12, 2015 at 4:21 AM, Yayoi Ukai 
> wrote:
> >>
> >> > On Thu, Sep 10, 2015 at 10:46 AM, Michael Niedermayer <
> michae...@gmx.at>
> >> > wrote:
> >> > > On Mon, Sep 07, 2015 at 11:37:47AM +0200, Stefano Sabatini wrote:
> >> > >> Hi,
> >> > >>
> >> > >> I propose to have an official IRC meeting on the next Saturday,
> and I
> >> > >> propose the tentative time of 15:00 UTC, but feel free to propose a
> >> > >> different time if this can't suit you.
> >> > >>
> >> > >> The IRC meeting channel will be public and the log will be
> published
> >> > >> at the end of the meeting.
> >> > >>
> >> > >> This meeting is also meant as a preparation for the real-life
> meeting
> >> > >> that will be held in Paris at the next VDD
> >> > >> (http://www.videolan.org/videolan/events/vdd15/) for the FFmpeg
> >> > >> developers who will attend it.
> >> > >>
> >> > >> I propose these topics of the day (suggested by ubitux on IRC):
> >> > >> 1. ABI compatibility policy
> >> > >
> >> > >> 2. general policy decision process
> >> > >
> >> > > heres a suggestion, maybe useful as input for discussions on
> >> > > Saturday ...
> >> > >
> >> > > FFmpeg used and uses "unanimous consent" in patch reviews
> >> > > any person could make a suggestion
> >> > > to improve a patch and it has to be taken care of one way or another
> >> > > before the patch is ok. This system worked quite well almost all the
> >> > > time. So i would suggest to use the same / a similar system for
> >> > > policy decisions
> >> > >
> >> > > * Everyone should be able to comment and propose options/choices
> >> > > * There should be enough time to understand, discuss and amend
> >> > >   proposals
> >> > > * People should try to understand the other people and avoid
> strawman
> >> > >   arguments and other non constructive discussion tactics,
> people/the
> >> > >   commuity should step in if discussions become non constructive and
> >> > >   hostile and try to get people back toward constructive discussion.
> >> > > * People should be able to declare reservations to a proposal
> without
> >> > >   blocking the proposal and as a seperate choice veto it in a
> blocking
> >> > >   fashion. A veto should be public with full name of the developer,
> >> > >   reason why it is bad for the community/project and ideally a
> >> > >   alternative proposal. Also developers vetoing a proposal must be
> >> > >   willing and able to work on finding an better solution.
> >> >
> >> > So you can add a deadline for the alternate proposal. For example,
> >> > if the person who vetoed doesn't come up with an alternate proposal
> >> > within 30 days,
> >> > the original proposal must be passed.
> >>
> >>
> >> It means everyone can slow a proposal by 30 days.
> >>
> >
> >> Why do we need vetos?
> >
> > let me awnser a different question first
> > Why do we need developers/contributors?
> > to write and maintain code amongth many other reasons
> >
> > If we depend on these developers/contributors then IMO we should take
> > their oppinons and objections serious and if one of them is willing
> > to risk her/his good name to oppose a proposal in public and maybe also
> > plans to put signifiant time into creating a better compromise proposal
> > then i belive this is something that should not just be brushed away
> > easily, and especially not "quick quick" while
> > everyones minds are maybe heated about some debate
> >
> > vetos would be one way to achive this
> > iam not saying that we absolutely need vetos but i think that we
> > should not pass proposals that would cause any one developer to leave
> > the project or to make people be seriously unhappy.
> > People contribute for fun, for social reasons and because they have to
> > (like because they are paied for it)
>
> What if these "objections" make everyone else unhappy and have no fun
> anymore, because there is no good technical reason behind them, just
> personal preference (in an area where the objecting developer is not a
> maintainer)?


I want to give the specific example of the "leadership" vote that happened
just around "The Fork" in early 2011. Suddenly, out of nowhere, a bunch of
mplungarians arose that claimed (and received!) voting rights and helped
"The Fork" arise (I'm sure that was not their intention, but it was the
consequence nonetheless). Now just imagine for a second that in addition to
voting rights, we gave each developer (including mplungarians) veto rights.
This is outrageous.

To solve this problem, veto rights should, if they exist at all, be
restricted to some of the most valuable developers by whatever metric, and
be strictly limited in number (e.g. no more than 2-3 people can have veto
rights at all). Since that will cause unease for #4/#5, the obvious
alternative would be to

Re: [FFmpeg-devel] IRC meeting on Saturday 2015-09-12, UTC 15:00

2015-09-12 Thread Nicolas George
Le sextidi 26 fructidor, an CCXXIII, Michael Niedermayer a écrit :
> If we depend on these developers/contributors then IMO we should take
> their oppinons and objections serious and if one of them is willing
> to risk her/his good name to oppose a proposal in public and maybe also
> plans to put signifiant time into creating a better compromise proposal
> then i belive this is something that should not just be brushed away
> easily, and especially not "quick quick" while
> everyones minds are maybe heated about some debate
> 
> vetos would be one way to achive this

No, vetoes are not a way to achieve this. Quite the opposite, in fact.

Vetoes are weapons. Weapons for diplomacy, but weapons nonetheless. We do
not want weapons in the project.

Contributors should heed objections to their proposal because it is the
correct, polite thing to do. If we can not be polite to each other most of
the time, then the project is doomed, vetoes will not help.

To say it another way: if we work well together, we do not need vetoes, if
we do not work well together, vetoes would make it worse.

Regards,

-- 
  Nicolas George


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH] doc/developer: clarify merge requests

2015-09-12 Thread Michael Niedermayer
From: Michael Niedermayer 

Signed-off-by: Michael Niedermayer 
---
 doc/developer.texi |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/doc/developer.texi b/doc/developer.texi
index b8259e7..a3f2846 100644
--- a/doc/developer.texi
+++ b/doc/developer.texi
@@ -38,7 +38,7 @@ There are 3 ways by which code gets into ffmpeg.
   see @ref{Submitting patches} for details.
 @item Directly committing changes to the main tree.
 @item Committing changes to a git clone, for example on github.com or
-  gitorious.org. And asking us to merge these changes.
+  gitorious.org. And posting a merge request to the ffmpeg-devel mailing 
list.
 @end itemize
 
 Whichever way, changes should be reviewed by the maintainer of the code
-- 
1.7.9.5

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] IRC meeting on Saturday 2015-09-12, UTC 15:00

2015-09-12 Thread Stefano Sabatini
On date Monday 2015-09-07 11:37:47 +0200, Stefano Sabatini encoded:
> Hi,
> 
> I propose to have an official IRC meeting on the next Saturday, and I
> propose the tentative time of 15:00 UTC, but feel free to propose a
> different time if this can't suit you.
> 
> The IRC meeting channel will be public and the log will be published
> at the end of the meeting.
> 
> This meeting is also meant as a preparation for the real-life meeting
> that will be held in Paris at the next VDD
> (http://www.videolan.org/videolan/events/vdd15/) for the FFmpeg
> developers who will attend it.
> 
> I propose these topics of the day (suggested by ubitux on IRC):
> 1. ABI compatibility policy
> 2. general policy decision process
> 3. VDD15
> 4. Any other business

The meeting will start in less than one hour at 15 UTC.

To attend the meeting join the #ffmpeg-meeting channel on freenode.

Updated topics of the day:
1. ABI compatibility policy
2. general policy decision process
3. VDD15
4. Any other business
5. Outreachy funding for the next round (winter 2015)
6. use of Github/Gitorious for pull requests
7. Any other business

*IMPORTANT NOTE*: the meeting channel is public and the log will be
published after the meeting.

See you soon on IRC.
-- 
FFmpeg = Free and Fast Mysterious Programmable Enlightened Geisha
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] doc/developer: clarify merge requests

2015-09-12 Thread Stefano Sabatini
On date Saturday 2015-09-12 15:56:34 +0200, Michael Niedermayer encoded:
> From: Michael Niedermayer 
> 
> Signed-off-by: Michael Niedermayer 
> ---
>  doc/developer.texi |2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/doc/developer.texi b/doc/developer.texi
> index b8259e7..a3f2846 100644
> --- a/doc/developer.texi
> +++ b/doc/developer.texi
> @@ -38,7 +38,7 @@ There are 3 ways by which code gets into ffmpeg.
>see @ref{Submitting patches} for details.
>  @item Directly committing changes to the main tree.
>  @item Committing changes to a git clone, for example on github.com or
> -  gitorious.org. And asking us to merge these changes.
> +  gitorious.org. And posting a merge request to the ffmpeg-devel mailing 
> list.
>  @end itemize

LGTM, thanks.
-- 
FFmpeg = Formidable and Faithless Mythic Peaceful Eager Geisha
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] doc/developer: clarify merge requests

2015-09-12 Thread Nicolas George
Le sextidi 26 fructidor, an CCXXIII, Michael Niedermayer a écrit :
> +  gitorious.org. And posting a merge request to the ffmpeg-devel mailing 
> list.

Please no. The patches themselves need to go to the mailing list. If these
tools can not do that, then they are not usable for this project.

(Also, gitorious is dead.)

Regards,

-- 
  Nicolas George


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] doc/developer: clarify merge requests

2015-09-12 Thread Stefano Sabatini
On date Saturday 2015-09-12 16:27:56 +0200, Nicolas George encoded:
> Le sextidi 26 fructidor, an CCXXIII, Michael Niedermayer a écrit :
> > +  gitorious.org. And posting a merge request to the ffmpeg-devel 
> > mailing list.
> 
> Please no. The patches themselves need to go to the mailing list. If these
> tools can not do that, then they are not usable for this project.
> 
> (Also, gitorious is dead.)

Sorry to split the hair, this is just asking to use the mailing-list
rather than generically "ask" (for example using the github tools).

Wheter we should adopt pull-request or not is a different matter.
-- 
FFmpeg = Fanciful & Formidable Miracolous Ponderous Efficient Gnome
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] doc/developer: clarify merge requests

2015-09-12 Thread Ganesh Ajjanagadde
On Sat, Sep 12, 2015 at 10:50 AM, Stefano Sabatini  wrote:
> On date Saturday 2015-09-12 16:27:56 +0200, Nicolas George encoded:
>> Le sextidi 26 fructidor, an CCXXIII, Michael Niedermayer a écrit :
>> > +  gitorious.org. And posting a merge request to the ffmpeg-devel 
>> > mailing list.
>>
>> Please no. The patches themselves need to go to the mailing list. If these
>> tools can not do that, then they are not usable for this project.
>>
>> (Also, gitorious is dead.)
>
> Sorry to split the hair, this is just asking to use the mailing-list
> rather than generically "ask" (for example using the github tools).
>
> Wheter we should adopt pull-request or not is a different matter.

True enough. However, I think this should be squashed with whatever
other changes or clarifications we have regarding policy on pull
requests/github: together they represent one functional change.

> --
> FFmpeg = Fanciful & Formidable Miracolous Ponderous Efficient Gnome
> ___
> 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


Re: [FFmpeg-devel] [PATCH]lavf/img2dec: Improve jpeg detection

2015-09-12 Thread Carl Eugen Hoyos
Michael Niedermayer  gmx.at> writes:

> >  img2dec.c |   26 --
> >  1 file changed, 20 insertions(+), 6 deletions(-)
> > 322ea95b4166f9aa6a8a2d10366b665c933ab162  patchimg2mjpeg.diff
> > diff --git a/libavformat/img2dec.c b/libavformat/img2dec.c
> 
> LGTM

Patch applied.

Thank you, Carl Eugen

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] avcodec: Switch bitrate to 64bit with the bump

2015-09-12 Thread Carl Eugen Hoyos
Hi!

Attached is a new patch that should be ready to be applied no matter if we 
drop compatibility or not.

Please comment (quickly if possible), Carl Eugen
diff --git a/doc/APIchanges b/doc/APIchanges
index 958035c..415463a 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -15,6 +15,10 @@ libavutil: 2015-08-28
 
 API changes, most recent first:
 
+2015-xx-xx -
+  bit_rate/rc_max_rate/rc_min_rate where changed to 64bit, make sure you update
+  any printf() or other type sensitive code
+
 2015-xx-xx - lavu 55.0.100 / lavu 55.0.0
   xxx - Change type of AVPixFmtDescriptor.flags from uint8_t to uint64_t.
   xxx - Change type of AVComponentDescriptor fields from uint16_t to int
diff --git a/ffserver.c b/ffserver.c
index 8b6e441..e031ec1 100644
--- a/ffserver.c
+++ b/ffserver.c
@@ -1789,7 +1789,7 @@ static inline void print_stream_params(AVIOContext *pb, 
FFServerStream *stream)
 
 avio_printf(pb, "%d%s%d"
 "%s%s\n",
-i, type, st->codec->bit_rate/1000,
+i, type, (int64_t)st->codec->bit_rate/1000,
 codec ? codec->name : "", parameters);
  }
 
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index a5faff5..545f8f4 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -1530,7 +1530,11 @@ typedef struct AVCodecContext {
  * - decoding: Set by user, may be overwritten by libavcodec
  * if this info is available in the stream
  */
+#if AV_HAVE_INCOMPATIBLE_LIBAV_ABI
 int bit_rate;
+#else
+int64_t bit_rate;
+#endif
 
 /**
  * number of bits the bitstream is allowed to diverge from the reference.
@@ -2461,14 +2465,22 @@ typedef struct AVCodecContext {
  * - encoding: Set by user.
  * - decoding: Set by user, may be overwritten by libavcodec.
  */
+#if AV_HAVE_INCOMPATIBLE_LIBAV_ABI
 int rc_max_rate;
+#else
+int64_t rc_max_rate;
+#endif
 
 /**
  * minimum bitrate
  * - encoding: Set by user.
  * - decoding: unused
  */
+#if AV_HAVE_INCOMPATIBLE_LIBAV_ABI
 int rc_min_rate;
+#else
+int64_t rc_min_rate;
+#endif
 
 #if FF_API_MPV_OPT
 /**
diff --git a/libavcodec/dcaenc.c b/libavcodec/dcaenc.c
index 23587a7..79da8f4 100644
--- a/libavcodec/dcaenc.c
+++ b/libavcodec/dcaenc.c
@@ -145,7 +145,7 @@ static int encode_init(AVCodecContext *avctx)
 c->samplerate_index = i;
 
 if (avctx->bit_rate < 32000 || avctx->bit_rate > 384) {
-av_log(avctx, AV_LOG_ERROR, "Bit rate %i not supported.", 
avctx->bit_rate);
+av_log(avctx, AV_LOG_ERROR, "Bit rate %"PRId64" not supported.", 
(int64_t)avctx->bit_rate);
 return AVERROR(EINVAL);
 }
 for (i = 0; ff_dca_bit_rates[i] < avctx->bit_rate; i++)
diff --git a/libavcodec/libfdk-aacenc.c b/libavcodec/libfdk-aacenc.c
index 5df0c90..98a817b 100644
--- a/libavcodec/libfdk-aacenc.c
+++ b/libavcodec/libfdk-aacenc.c
@@ -215,8 +215,8 @@ static av_cold int aac_encode_init(AVCodecContext *avctx)
 }
 if ((err = aacEncoder_SetParam(s->handle, AACENC_BITRATE,
avctx->bit_rate)) != AACENC_OK) {
-av_log(avctx, AV_LOG_ERROR, "Unable to set the bitrate %d: %s\n",
-   avctx->bit_rate, aac_get_error(err));
+av_log(avctx, AV_LOG_ERROR, "Unable to set the bitrate %"PRId64": 
%s\n",
+   (int64_t)avctx->bit_rate, aac_get_error(err));
 goto error;
 }
 }
diff --git a/libavcodec/libgsmenc.c b/libavcodec/libgsmenc.c
index 45fdb8e..69ce439 100644
--- a/libavcodec/libgsmenc.c
+++ b/libavcodec/libgsmenc.c
@@ -62,8 +62,8 @@ static av_cold int libgsm_encode_init(AVCodecContext *avctx) {
 if (avctx->bit_rate != 13000 /* Official */ &&
 avctx->bit_rate != 13200 /* Very common */ &&
 avctx->bit_rate != 0 /* Unknown; a.o. mov does not set bitrate when 
decoding */ ) {
-av_log(avctx, AV_LOG_ERROR, "Bitrate 13000bps required for GSM, got 
%dbps\n",
-   avctx->bit_rate);
+av_log(avctx, AV_LOG_ERROR, "Bitrate 13000bps required for GSM, got 
%"PRId64"bps\n",
+   (int64_t)avctx->bit_rate);
 if (avctx->strict_std_compliance > FF_COMPLIANCE_UNOFFICIAL)
 return -1;
 }
diff --git a/libavcodec/libopusenc.c b/libavcodec/libopusenc.c
index a170b71..8ac02f9 100644
--- a/libavcodec/libopusenc.c
+++ b/libavcodec/libopusenc.c
@@ -180,12 +180,12 @@ static av_cold int libopus_encode_init(AVCodecContext 
*avctx)
 avctx->bit_rate = 64000 * opus->stream_count +
   32000 * coupled_stream_count;
 av_log(avctx, AV_LOG_WARNING,
-   "No bit rate set. Defaulting to %d bps.\n", avctx->bit_rate);
+   "No bit rate set. Defaulting to %"PRId64" bps.\n", 
(int64_t)avctx->bit_rate);
 }
 
 if (avctx->bit_rate < 500 || avctx->bit_rate > 256000 * avctx->channels) {
-av_log(avctx, AV_LOG_ERROR, "The bit rate %d bps is 

Re: [FFmpeg-devel] IRC meeting on Saturday 2015-09-12, UTC 15:00

2015-09-12 Thread Stefano Sabatini
On date Saturday 2015-09-12 16:13:53 +0200, Stefano Sabatini encoded:
> On date Monday 2015-09-07 11:37:47 +0200, Stefano Sabatini encoded:
> > Hi,
> > 
> > I propose to have an official IRC meeting on the next Saturday, and I
> > propose the tentative time of 15:00 UTC, but feel free to propose a
> > different time if this can't suit you.
> > 
> > The IRC meeting channel will be public and the log will be published
> > at the end of the meeting.
> > 
> > This meeting is also meant as a preparation for the real-life meeting
> > that will be held in Paris at the next VDD
> > (http://www.videolan.org/videolan/events/vdd15/) for the FFmpeg
> > developers who will attend it.
[...]
> The meeting will start in less than one hour at 15 UTC.
> 
> To attend the meeting join the #ffmpeg-meeting channel on freenode.
> 
> Updated topics of the day:
> 1. ABI compatibility policy
> 2. general policy decision process
> 3. VDD15
> 4. Any other business
> 5. Outreachy funding for the next round (winter 2015)
> 6. use of Github/Gitorious for pull requests
> 7. Any other business
> 
> *IMPORTANT NOTE*: the meeting channel is public and the log will be
> published after the meeting.

IRC meeting log is in attachment.

Thanks all for attending the meeting.
-- 
FFmpeg = Frenzy and Fierce Multimedia Programmable Elegant Gospel
FFmpeg IRC meeting on Saturday 2015-09-12, 15 UTC

Topics of the day:

1. ABI compatibility policy
2. general policy decision process
3. VDD15
4. Outreachy funding for the next round (winter 2015)
5. use of Github/Gitorious for pull requests
6. Any other business

Sep 12 17:00:59  allright time to go
Sep 12 17:01:18  i summoned this meeting to discuss some relevant topics
Sep 12 17:01:27 *   Shiz (~s...@hydrogenium.shiz.me) has joined 
#ffmpeg-meeting
Sep 12 17:01:49  this is also meant as a sort of preparatory meeting for 
the real-life meeting which will be held in paris the next weekend
Sep 12 17:02:07  you can see in the topics the pastebin containing the 
topics of the day to discuss
Sep 12 17:02:22  http://pastebin.com/e6Q0pY6Z
Sep 12 17:02:29  first topic is
Sep 12 17:02:41  ABI compatibility policy
Sep 12 17:03:25  please note that i just compiled the list of topics but 
i'm not very involved with ffmpeg development, so don't expect me to chat a lot 
about the merit of each topic
Sep 12 17:03:32so are we going to just do a vote on that? or do you 
want to re-discuss it also?
Sep 12 17:03:50  wasn't wm4 the person who proposed it in the 
first place? where is he?
Sep 12 17:03:54  I don't know, maybe someone can spend a few words 
describing the proposed options
Sep 12 17:04:02(there was a long … “discussion” :) … on the 
mailinglist already on the abi compat subject, and it’s fair to say that we 
disagreed)
Sep 12 17:04:13 well the options are pretty simple, do or don't
Sep 12 17:04:23  then we can delay the voting to any other means, not 
necessarily we have to decide/vote right now
Sep 12 17:04:39 nevcairiel: indeed, that is the root 
alternative; there are a few subquestions after this is decided.
Sep 12 17:04:50 atomnuker: wm4 kind of ragequited irc because 
it wasn't going fast enough apparently; try to /invite him
Sep 12 17:05:06 do we spent effort to maintain the ABI compat, 
which in itself is not and cannot really be fully tested due to mis-matching 
behavior, or well, do we simply not
Sep 12 17:05:13  I'll ping him on ffmpeg-devel, that should get 
his attention
Sep 12 17:05:50 we probably need to agree about how we 
"advertise" the policy
Sep 12 17:06:02 be it a news, or a dedicated pages to "current 
goals"
Sep 12 17:06:18 just to ease taking decisions and keeping up 
with them
Sep 12 17:06:23so the discussion was more about how it was advertised 
or “how the patch was concealing its purpose”, right?
Sep 12 17:07:12 *   Easyfab (~chatzi...@ip-62-241-112-16.evc.net) has 
joined #ffmpeg-meeting
Sep 12 17:07:21 *   Easyfab (~chatzi...@ip-62-241-112-16.evc.net) has left 
#ffmpeg-meeting
Sep 12 17:07:23 BBB: from my PoV, right; I have mixed opinions 
on the decision itself.
Sep 12 17:07:31who was actually advocating _for_ keeping the abi 
compat options (as opposed to the discussion around it being concealed)?
Sep 12 17:07:47 I don't think anyone was directly for keeping it
Sep 12 17:07:48 *   Easyfab (~chatzi...@ip-62-241-112-16.evc.net) has 
joined #ffmpeg-meeting
Sep 12 17:08:18 The discussion mostly went in circles around 
the policy issue
Sep 12 17:08:24 *   llogan2 (lou@2600:3c01::f03c:91ff:fe70:2ed2) has joined 
#ffmpeg-meeting
Sep 12 17:08:50right, I’m re-reading it now
Sep 12 17:09:14carl eugen and nicolas george didn’t like us removing 
it without an explicit, dedicated discussion that allows us to decide whether 
we want to change policy on abi compat or not
Sep 12 17:09:17so …
Sep 12 17:09:36cehoyos isn’t here, is he?
Sep 12 17:09:45 dont think so
Sep 12 

[FFmpeg-devel] [PATCH]Bump probesize and analyzeduration to 64bit (again)

2015-09-12 Thread Carl Eugen Hoyos
Hi!

Attached patch implements making probesize and analyzeduration 64bit 
unless api compatibility was requested.

I will add a line to doc/APIchanges and do a minor version bump.

Please review, this cannot wait, Carl Eugen
diff --git a/libavformat/avformat.h b/libavformat/avformat.h
index b7f18c1..26c2464 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
@@ -1391,7 +1391,7 @@ typedef struct AVFormatContext {
 #define AVFMT_FLAG_KEEP_SIDE_DATA 0x4 ///< Don't merge side data but keep 
it separate.
 #define AVFMT_FLAG_FAST_SEEK   0x8 ///< Enable fast, but inaccurate seeks 
for some formats
 
-#if FF_API_PROBESIZE_32
+#if AV_HAVE_INCOMPATIBLE_LIBAV_ABI
 /**
  * @deprecated deprecated in favor of probesize2
  */
@@ -1755,7 +1755,7 @@ typedef struct AVFormatContext {
  * via AVOptions (NO direct access).
  * Can be set to 0 to let avformat choose using a heuristic.
  */
-#if FF_API_PROBESIZE_32
+#if AV_HAVE_INCOMPATIBLE_LIBAV_ABI
 int64_t max_analyze_duration2;
 #else
 int64_t max_analyze_duration;
@@ -1767,7 +1767,7 @@ typedef struct AVFormatContext {
  * Demuxing only, set by the caller before avformat_open_input()
  * via AVOptions (NO direct access).
  */
-#if FF_API_PROBESIZE_32
+#if AV_HAVE_INCOMPATIBLE_LIBAV_ABI
 int64_t probesize2;
 #else
 int64_t probesize;
diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
index ed0a86b..c35cc9d 100644
--- a/libavformat/mpegts.c
+++ b/libavformat/mpegts.c
@@ -2513,7 +2513,7 @@ static int mpegts_read_header(AVFormatContext *s)
 uint8_t buf[8 * 1024] = {0};
 int len;
 int64_t pos, probesize =
-#if FF_API_PROBESIZE_32
+#if AV_HAVE_INCOMPATIBLE_LIBAV_ABI
  s->probesize ? s->probesize : s->probesize2;
 #else
  s->probesize;
diff --git a/libavformat/options_table.h b/libavformat/options_table.h
index 773814a..6e66c27 100644
--- a/libavformat/options_table.h
+++ b/libavformat/options_table.h
@@ -36,7 +36,7 @@
 static const AVOption avformat_options[] = {
 {"avioflags", NULL, OFFSET(avio_flags), AV_OPT_TYPE_FLAGS, {.i64 = DEFAULT }, 
INT_MIN, INT_MAX, D|E, "avioflags"},
 {"direct", "reduce buffering", 0, AV_OPT_TYPE_CONST, {.i64 = AVIO_FLAG_DIRECT 
}, INT_MIN, INT_MAX, D|E, "avioflags"},
-#if FF_API_PROBESIZE_32
+#if AV_HAVE_INCOMPATIBLE_LIBAV_ABI
 {"probesize", "set probing size", OFFSET(probesize2), AV_OPT_TYPE_INT64, {.i64 
= 500 }, 32, INT64_MAX, D},
 #else
 {"probesize", "set probing size", OFFSET(probesize), AV_OPT_TYPE_INT64, {.i64 
= 500 }, 32, INT64_MAX, D},
@@ -58,7 +58,7 @@ static const AVOption avformat_options[] = {
 {"nobuffer", "reduce the latency introduced by optional buffering", 0, 
AV_OPT_TYPE_CONST, {.i64 = AVFMT_FLAG_NOBUFFER }, 0, INT_MAX, D, "fflags"},
 {"seek2any", "allow seeking to non-keyframes on demuxer level when supported", 
OFFSET(seek2any), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 1, D},
 {"bitexact", "do not write random/volatile data", 0, AV_OPT_TYPE_CONST, { .i64 
= AVFMT_FLAG_BITEXACT }, 0, 0, E, "fflags" },
-#if FF_API_PROBESIZE_32
+#if AV_HAVE_INCOMPATIBLE_LIBAV_ABI
 {"analyzeduration", "specify how many microseconds are analyzed to probe the 
input", OFFSET(max_analyze_duration2), AV_OPT_TYPE_INT64, {.i64 = 0 }, 0, 
INT64_MAX, D},
 #else
 {"analyzeduration", "specify how many microseconds are analyzed to probe the 
input", OFFSET(max_analyze_duration), AV_OPT_TYPE_INT64, {.i64 = 0 }, 0, 
INT64_MAX, D},
diff --git a/libavformat/utils.c b/libavformat/utils.c
index db988c0..e5729a7 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -3085,14 +3085,14 @@ int avformat_find_stream_info(AVFormatContext *ic, 
AVDictionary **options)
 // new streams might appear, no options for those
 int orig_nb_streams = ic->nb_streams;
 int flush_codecs;
-#if FF_API_PROBESIZE_32
+#if AV_HAVE_INCOMPATIBLE_LIBAV_ABI
 int64_t max_analyze_duration = ic->max_analyze_duration2;
 #else
 int64_t max_analyze_duration = ic->max_analyze_duration;
 #endif
 int64_t max_stream_analyze_duration;
 int64_t max_subtitle_analyze_duration;
-#if FF_API_PROBESIZE_32
+#if AV_HAVE_INCOMPATIBLE_LIBAV_ABI
 int64_t probesize = ic->probesize2;
 #else
 int64_t probesize = ic->probesize;
diff --git a/libavformat/version.h b/libavformat/version.h
index 18be8b2..1e26f9c 100644
--- a/libavformat/version.h
+++ b/libavformat/version.h
@@ -65,9 +65,6 @@
 #ifndef FF_API_URL_FEOF
 #define FF_API_URL_FEOF (LIBAVFORMAT_VERSION_MAJOR < 58)
 #endif
-#ifndef FF_API_PROBESIZE_32
-#define FF_API_PROBESIZE_32 (LIBAVFORMAT_VERSION_MAJOR < 58)
-#endif
 
 #ifndef FF_API_R_FRAME_RATE
 #define FF_API_R_FRAME_RATE1
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] Proposed patches to mpjpeg demux

2015-09-12 Thread Alex Agranovsky
Michael, thanks!

Is the other change (mpjpegdec.c) still in review, or had it been overlooked 
due to not being included in the amended patch?

-Best.
- Alex

-- 
Alex Agranovsky
Sighthound, Inc
www.sighthound.com  

On September 11, 2015 at 6:43:31 PM, Michael Niedermayer (michae...@gmx.at) 
wrote:

On Thu, Sep 10, 2015 at 05:23:09PM -0400, Alex Agranovsky wrote:  
> Quick update: format.c patch needs to be amended, to include a NULL check.  
>  
>  
>  
> --   
> Alex Agranovsky  
> Sighthound, Inc  
> www.sighthound.com
>  
> On September 10, 2015 at 12:04:55 PM, Alex Agranovsky (a...@sighthound.com) 
> wrote:  
>  
> Please look at the attached patches. They accomplish the following:  
>  

> 1) change to format.c: allows the demux to be matched by Content-Type, even 
> if the incoming Content-Type header contains parameters, such as 
> 'multipart/x-mixed-replace;boundary=ffserver’. Currently the comparison seems 
> to occur verbatim, thus preventing the selection of mpjpegdec demux, even 
> when running against MJPEG served by ffserver.  
> P.S. I’m not sure if parameters are ever needed to be included for this 
> comparison, but considering we’re dealing with probing, seems unlikely  

applied  

thanks  

[...]  

--  
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  

No human being will ever know the Truth, for even if they happen to say it  
by chance, they would not even known they had done so. -- Xenophanes  
___
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


Re: [FFmpeg-devel] [PATCH]Bump probesize and analyzeduration to 64bit (again)

2015-09-12 Thread Michael Niedermayer
On Sat, Sep 12, 2015 at 08:04:34PM +0200, Carl Eugen Hoyos wrote:
> Hi!
> 
> Attached patch implements making probesize and analyzeduration 64bit 
> unless api compatibility was requested.
> 
> I will add a line to doc/APIchanges and do a minor version bump.
> 
> Please review, this cannot wait, Carl Eugen

>  avformat.h  |6 +++---
>  mpegts.c|2 +-
>  options_table.h |4 ++--
>  utils.c |4 ++--
>  version.h   |3 ---
>  5 files changed, 8 insertions(+), 11 deletions(-)
> 6e597c93aee2ba3fe7c804e1a2b1916c302d8ba6  patchprobesize64.diff

should be ok

[...]

-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

The real ebay dictionary, page 3
"Rare item" - "Common item with rare defect or maybe just a lie"
"Professional" - "'Toy' made in china, not functional except as doorstop"
"Experts will know" - "The seller hopes you are not an expert"


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH]Bump probesize and analyzeduration to 64bit (again)

2015-09-12 Thread James Almer
On 9/12/2015 3:04 PM, Carl Eugen Hoyos wrote:
> Hi!
> 
> Attached patch implements making probesize and analyzeduration 64bit 
> unless api compatibility was requested.
> 
> I will add a line to doc/APIchanges and do a minor version bump.
> 
> Please review, this cannot wait, Carl Eugen

You're removing probesize2 and max_analyze_duration2, which supposedly
were added to replace the deprecated probesize and max_analyze_duration
fields, all while undeprecating the latter in the meantime.
The FF_API_PROBESIZE_32 wrapper is faulty as well to begin with. It's
scheduling the removal of probesize2 and max_analyze_duration2, which
are supposedly the non-deprecated replacements.

This all seems like a weird change.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] "configure" breaks on MSYS2 MINGW64

2015-09-12 Thread Michael Niedermayer
On Sat, Sep 12, 2015 at 10:57:37PM +1000, Matt Oliver wrote:
> On 12 September 2015 at 19:40, Peter Belkner  wrote:
> 
> > On 12.09.2015 11:15, Geek.Song wrote:
> >
> >> diff -u
> >
> >
> LGTM.
> I had an identical patch ready to fix the same problem so this one is fine.

i think you dont have git write access ?
if not, then send me your public ssh key

[...]
-- 
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


Re: [FFmpeg-devel] [PATCH]Bump probesize and analyzeduration to 64bit (again)

2015-09-12 Thread Michael Niedermayer
On Sat, Sep 12, 2015 at 03:25:05PM -0300, James Almer wrote:
> On 9/12/2015 3:04 PM, Carl Eugen Hoyos wrote:
> > Hi!
> > 
> > Attached patch implements making probesize and analyzeduration 64bit 
> > unless api compatibility was requested.
> > 
> > I will add a line to doc/APIchanges and do a minor version bump.
> > 
> > Please review, this cannot wait, Carl Eugen
> 
> You're removing probesize2 and max_analyze_duration2, which supposedly
> were added to replace the deprecated probesize and max_analyze_duration
> fields, all while undeprecating the latter in the meantime.
> The FF_API_PROBESIZE_32 wrapper is faulty as well to begin with. It's
> scheduling the removal of probesize2 and max_analyze_duration2, which
> are supposedly the non-deprecated replacements.

probesize2 and max_analyze_duration2 are documented as
"NO direct access"
so API wise these 2 fields should be fine to remove from the struct

[...]
-- 
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


Re: [FFmpeg-devel] [PATCH] ADPCM: Bump THP channel limit to 14

2015-09-12 Thread Paul B Mahol
On 9/11/15, Paul B Mahol  wrote:
> On 9/11/15, Rodger Combs  wrote:
>> ---
>>  libavcodec/adpcm.c | 6 +++---
>>  1 file changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/libavcodec/adpcm.c b/libavcodec/adpcm.c
>> index 52d0d44..ba38041 100644
>> --- a/libavcodec/adpcm.c
>> +++ b/libavcodec/adpcm.c
>> @@ -84,7 +84,7 @@ static const int swf_index_tables[4][16] = {
>>  /* end of tables */
>>
>>  typedef struct ADPCMDecodeContext {
>> -ADPCMChannelStatus status[10];
>> +ADPCMChannelStatus status[14];
>>  int vqa_version;/**< VQA version. Used for
>> ADPCM_IMA_WS
>> */
>>  int has_status;
>>  } ADPCMDecodeContext;
>> @@ -109,7 +109,7 @@ static av_cold int adpcm_decode_init(AVCodecContext *
>> avctx)
>>  break;
>>  case AV_CODEC_ID_ADPCM_THP:
>>  case AV_CODEC_ID_ADPCM_THP_LE:
>> -max_channels = 10;
>> +max_channels = 14;
>>  break;
>>  }
>>  if (avctx->channels < min_channels || avctx->channels > max_channels)
>> {
>> @@ -1431,7 +1431,7 @@ static int adpcm_decode_frame(AVCodecContext
>> *avctx,
>> void *data,
>>  case AV_CODEC_ID_ADPCM_THP:
>>  case AV_CODEC_ID_ADPCM_THP_LE:
>>  {
>> -int table[10][16];
>> +int table[14][16];
>
> Perhaps this should be moved to private context and nb of channels
> raised to 64

Anyway patch should be good as is.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH]Bump probesize and analyzeduration to 64bit (again)

2015-09-12 Thread James Almer
On 9/12/2015 3:28 PM, Michael Niedermayer wrote:
> On Sat, Sep 12, 2015 at 03:25:05PM -0300, James Almer wrote:
>> On 9/12/2015 3:04 PM, Carl Eugen Hoyos wrote:
>>> Hi!
>>>
>>> Attached patch implements making probesize and analyzeduration 64bit 
>>> unless api compatibility was requested.
>>>
>>> I will add a line to doc/APIchanges and do a minor version bump.
>>>
>>> Please review, this cannot wait, Carl Eugen
>>
>> You're removing probesize2 and max_analyze_duration2, which supposedly
>> were added to replace the deprecated probesize and max_analyze_duration
>> fields, all while undeprecating the latter in the meantime.
>> The FF_API_PROBESIZE_32 wrapper is faulty as well to begin with. It's
>> scheduling the removal of probesize2 and max_analyze_duration2, which
>> are supposedly the non-deprecated replacements.
> 
> probesize2 and max_analyze_duration2 are documented as
> "NO direct access"
> so API wise these 2 fields should be fine to remove from the struct

"NO direct access" will now apply to the new max_analyze_duration and
probesize fields when incompatible-libav-abi is not used. Is that intended?
If so then it should be ok.

We could also wait for the final decision about abi compatibility and just
make this change without the AV_HAVE_INCOMPATIBLE_LIBAV_ABI check, but that
can be removed in a different commit as well i guess.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] Proposed patches to mpjpeg demux

2015-09-12 Thread Michael Niedermayer
On Sat, Sep 12, 2015 at 02:06:28PM -0400, Alex Agranovsky wrote:
> Michael, thanks!
> 
> Is the other change (mpjpegdec.c) still in review, or had it been overlooked 
> due to not being included in the amended patch?

i didnt overlook them but they include several changes that could be
argued to be independant so they need to be split into seperate
patches / commits.
can you do that split ?

thanks

> 
> -Best.
> - Alex
> 
> -- 
> Alex Agranovsky
> Sighthound, Inc
> www.sighthound.com
> 
> On September 11, 2015 at 6:43:31 PM, Michael Niedermayer (michae...@gmx.at) 
> wrote:
> 
> On Thu, Sep 10, 2015 at 05:23:09PM -0400, Alex Agranovsky wrote:  
> > Quick update: format.c patch needs to be amended, to include a NULL check.  
> >  
> >  
> >  
> > --   
> > Alex Agranovsky  
> > Sighthound, Inc  
> > www.sighthound.com  
> >  
> > On September 10, 2015 at 12:04:55 PM, Alex Agranovsky (a...@sighthound.com) 
> > wrote:  
> >  
> > Please look at the attached patches. They accomplish the following:  
> >  
> 
> > 1) change to format.c: allows the demux to be matched by Content-Type, even 
> > if the incoming Content-Type header contains parameters, such as 
> > 'multipart/x-mixed-replace;boundary=ffserver’. Currently the comparison 
> > seems to occur verbatim, thus preventing the selection of mpjpegdec demux, 
> > even when running against MJPEG served by ffserver.  
> > P.S. I’m not sure if parameters are ever needed to be included for this 
> > comparison, but considering we’re dealing with probing, seems unlikely  
> 
> applied  
> 
> thanks  
> 
> [...]  
> 
> --  
> Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  
> 
> No human being will ever know the Truth, for even if they happen to say it  
> by chance, they would not even known they had done so. -- Xenophanes  
> ___
> 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

-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

When the tyrant has disposed of foreign enemies by conquest or treaty, and
there is nothing more to fear from them, then he is always stirring up
some war or other, in order that the people may require a leader. -- Plato


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH]Bump probesize and analyzeduration to 64bit (again)

2015-09-12 Thread Michael Niedermayer
On Sat, Sep 12, 2015 at 03:37:08PM -0300, James Almer wrote:
> On 9/12/2015 3:28 PM, Michael Niedermayer wrote:
> > On Sat, Sep 12, 2015 at 03:25:05PM -0300, James Almer wrote:
> >> On 9/12/2015 3:04 PM, Carl Eugen Hoyos wrote:
> >>> Hi!
> >>>
> >>> Attached patch implements making probesize and analyzeduration 64bit 
> >>> unless api compatibility was requested.
> >>>
> >>> I will add a line to doc/APIchanges and do a minor version bump.
> >>>
> >>> Please review, this cannot wait, Carl Eugen
> >>
> >> You're removing probesize2 and max_analyze_duration2, which supposedly
> >> were added to replace the deprecated probesize and max_analyze_duration
> >> fields, all while undeprecating the latter in the meantime.
> >> The FF_API_PROBESIZE_32 wrapper is faulty as well to begin with. It's
> >> scheduling the removal of probesize2 and max_analyze_duration2, which
> >> are supposedly the non-deprecated replacements.
> > 
> > probesize2 and max_analyze_duration2 are documented as
> > "NO direct access"
> > so API wise these 2 fields should be fine to remove from the struct
> 
> "NO direct access" will now apply to the new max_analyze_duration and
> probesize fields when incompatible-libav-abi is not used. Is that intended?
> If so then it should be ok.
> 

> We could also wait for the final decision about abi compatibility and just
> make this change without the AV_HAVE_INCOMPATIBLE_LIBAV_ABI check, but that
> can be removed in a different commit as well i guess.

I think theres consense about "abi compatibility" so i would tend to
suggest to move forward with that in mind.
The open points seemed about details IIUC which IMHO should not hold
things up, especially as the code after the bump isnt exactly ABI
stable atm

[...]
-- 
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] Proposed patches to mpjpeg demux

2015-09-12 Thread Alex Agranovsky
Sure thing — will split and resubmit.

-- 
Alex Agranovsky
Sighthound, Inc
www.sighthound.com  

On September 12, 2015 at 2:37:52 PM, Michael Niedermayer (michae...@gmx.at) 
wrote:

On Sat, Sep 12, 2015 at 02:06:28PM -0400, Alex Agranovsky wrote:  
> Michael, thanks!  
>  
> Is the other change (mpjpegdec.c) still in review, or had it been overlooked 
> due to not being included in the amended patch?  

i didnt overlook them but they include several changes that could be  
argued to be independant so they need to be split into seperate  
patches / commits.  
can you do that split ?  

thanks  

>  
> -Best.  
> - Alex  
>  
> --   
> Alex Agranovsky  
> Sighthound, Inc  
> www.sighthound.com
>  
> On September 11, 2015 at 6:43:31 PM, Michael Niedermayer (michae...@gmx.at) 
> wrote:  
>  
> On Thu, Sep 10, 2015 at 05:23:09PM -0400, Alex Agranovsky wrote:  
> > Quick update: format.c patch needs to be amended, to include a NULL check.  
> >  
> >  
> >  
> > --   
> > Alex Agranovsky  
> > Sighthound, Inc  
> > www.sighthound.com  
> >  
> > On September 10, 2015 at 12:04:55 PM, Alex Agranovsky (a...@sighthound.com) 
> > wrote:  
> >  
> > Please look at the attached patches. They accomplish the following:  
> >  
>  
> > 1) change to format.c: allows the demux to be matched by Content-Type, even 
> > if the incoming Content-Type header contains parameters, such as 
> > 'multipart/x-mixed-replace;boundary=ffserver’. Currently the comparison 
> > seems to occur verbatim, thus preventing the selection of mpjpegdec demux, 
> > even when running against MJPEG served by ffserver.  
> > P.S. I’m not sure if parameters are ever needed to be included for this 
> > comparison, but considering we’re dealing with probing, seems unlikely  
>  
> applied  
>  
> thanks  
>  
> [...]  
>  
> --  
> Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  
>  
> No human being will ever know the Truth, for even if they happen to say it  
> by chance, they would not even known they had done so. -- Xenophanes  
> ___  
> 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  

--  
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  

When the tyrant has disposed of foreign enemies by conquest or treaty, and  
there is nothing more to fear from them, then he is always stirring up  
some war or other, in order that the people may require a leader. -- Plato  
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH]Bump probesize and analyzeduration to 64bit (again)

2015-09-12 Thread James Almer
On 9/12/2015 3:42 PM, Michael Niedermayer wrote:
> I think theres consense about "abi compatibility" so i would tend to
> suggest to move forward with that in mind.

In that case we should go ahead and don't bother with the
AV_HAVE_INCOMPATIBLE_LIBAV_ABI check at all for this change.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH]Bump probesize and analyzeduration to 64bit (again)

2015-09-12 Thread Carl Eugen Hoyos
James Almer  gmail.com> writes:

> "NO direct access" will now apply to the new 
> max_analyze_duration and probesize fields when 
> incompatible-libav-abi is not used. Is that 
> intended?

This is how the patch was ok'ed before.
I am 100% fine with moving the 64 bit fields, 
but it is imo unrelated to this patch.

Carl Eugen

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] ADPCM: Bump THP channel limit to 14

2015-09-12 Thread Michael Niedermayer
On Sat, Sep 12, 2015 at 06:36:33PM +, Paul B Mahol wrote:
> On 9/11/15, Paul B Mahol  wrote:
> > On 9/11/15, Rodger Combs  wrote:
> >> ---
> >>  libavcodec/adpcm.c | 6 +++---
> >>  1 file changed, 3 insertions(+), 3 deletions(-)
> >>
> >> diff --git a/libavcodec/adpcm.c b/libavcodec/adpcm.c
> >> index 52d0d44..ba38041 100644
> >> --- a/libavcodec/adpcm.c
> >> +++ b/libavcodec/adpcm.c
> >> @@ -84,7 +84,7 @@ static const int swf_index_tables[4][16] = {
> >>  /* end of tables */
> >>
> >>  typedef struct ADPCMDecodeContext {
> >> -ADPCMChannelStatus status[10];
> >> +ADPCMChannelStatus status[14];
> >>  int vqa_version;/**< VQA version. Used for
> >> ADPCM_IMA_WS
> >> */
> >>  int has_status;
> >>  } ADPCMDecodeContext;
> >> @@ -109,7 +109,7 @@ static av_cold int adpcm_decode_init(AVCodecContext *
> >> avctx)
> >>  break;
> >>  case AV_CODEC_ID_ADPCM_THP:
> >>  case AV_CODEC_ID_ADPCM_THP_LE:
> >> -max_channels = 10;
> >> +max_channels = 14;
> >>  break;
> >>  }
> >>  if (avctx->channels < min_channels || avctx->channels > max_channels)
> >> {
> >> @@ -1431,7 +1431,7 @@ static int adpcm_decode_frame(AVCodecContext
> >> *avctx,
> >> void *data,
> >>  case AV_CODEC_ID_ADPCM_THP:
> >>  case AV_CODEC_ID_ADPCM_THP_LE:
> >>  {
> >> -int table[10][16];
> >> +int table[14][16];
> >
> > Perhaps this should be moved to private context and nb of channels
> > raised to 64
> 
> Anyway patch should be good as is.

applied

thanks

[...]
-- 
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] Allow mpjpeg headers parsing to succeed upon EOF, if required headers are present

2015-09-12 Thread Alex Agranovsky
 libavformat/mpjpegdec.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c
index b8281fc..8413ae7 100644
--- a/libavformat/mpjpegdec.c
+++ b/libavformat/mpjpegdec.c
@@ -165,7 +165,7 @@ static int parse_multipart_header(AVFormatContext *s)

         ret = get_line(s->pb, line, sizeof(line));
         if (ret < 0)
-            return ret;
+            break;

         if (line[0] == '\0')
             break;

-- 
Alex Agranovsky
Sighthound, Inc
www.sighthound.com  
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] Coverity Scan access

2015-09-12 Thread Lou Logan
Just a reminder if an *active developer* wants access to Coverity Scan
reports just ask. You can get low volume, occasional emails detailing
found defects, and/or access the info via the Coverity Scan site.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH] mpjpeg: CRLF terminating a sequence of MIME headers should not cause an error

2015-09-12 Thread Alex Agranovsky
 libavformat/mpjpegdec.c | 22 ++
 1 file changed, 18 insertions(+), 4 deletions(-)

diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c
index 8413ae7..c1ca508 100644
--- a/libavformat/mpjpegdec.c
+++ b/libavformat/mpjpegdec.c
@@ -43,11 +43,22 @@ static int get_line(AVIOContext *pb, char *line, int 
line_size)
 static int split_tag_value(char **tag, char **value, char *line)
 {
     char *p = line;
+    int  foundData = 0;
 
-    while (*p != '\0' && *p != ':')
+    *tag = NULL;
+    *value = NULL;
+
+
+    while (*p != '\0' && *p != ':') {
+        if (!av_isspace(*p)) {
+            foundData = 1;
+        }
         p++;
-    if (*p != ':')
-        return AVERROR_INVALIDDATA;
+    }
+    if (*p != ':') {
+        /* don't fail the parser if dealing with an empty line */
+        return foundData?AVERROR_INVALIDDATA:0;
+    }
 
     *p   = '\0';
     *tag = line;
@@ -166,12 +177,15 @@ static int parse_multipart_header(AVFormatContext *s)
         ret = get_line(s->pb, line, sizeof(line));
         if (ret < 0)
             break;
+        /* CRLF terminates a sequence of MIME headers */
+        if (value==NULL || tag==NULL)
+            break;
 
         if (line[0] == '\0')
             break;
 
         ret = split_tag_value(&tag, &value, line);
-        if (ret < 0)
+        if (ret < 0 || tag == NULL || value == NULL)
             return ret;
 
         if (!av_strcasecmp(tag, "Content-type")) {


-- 
Alex Agranovsky
Sighthound, Inc
www.sighthound.com  
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH] avfilter: add stereowiden filter

2015-09-12 Thread Paul B Mahol
Signed-off-by: Paul B Mahol 
---
 libavfilter/Makefile |   1 +
 libavfilter/af_stereowiden.c | 167 +++
 libavfilter/allfilters.c |   1 +
 3 files changed, 169 insertions(+)
 create mode 100644 libavfilter/af_stereowiden.c

diff --git a/libavfilter/Makefile b/libavfilter/Makefile
index d3e282f..d3f5595 100644
--- a/libavfilter/Makefile
+++ b/libavfilter/Makefile
@@ -79,6 +79,7 @@ OBJS-$(CONFIG_RESAMPLE_FILTER)   += af_resample.o
 OBJS-$(CONFIG_SIDECHAINCOMPRESS_FILTER)  += af_sidechaincompress.o
 OBJS-$(CONFIG_SILENCEDETECT_FILTER)  += af_silencedetect.o
 OBJS-$(CONFIG_SILENCEREMOVE_FILTER)  += af_silenceremove.o
+OBJS-$(CONFIG_STEREOWIDEN_FILTER)+= af_stereowiden.o
 OBJS-$(CONFIG_TREBLE_FILTER) += af_biquads.o
 OBJS-$(CONFIG_VOLUME_FILTER) += af_volume.o
 OBJS-$(CONFIG_VOLUMEDETECT_FILTER)   += af_volumedetect.o
diff --git a/libavfilter/af_stereowiden.c b/libavfilter/af_stereowiden.c
new file mode 100644
index 000..5ad98c8
--- /dev/null
+++ b/libavfilter/af_stereowiden.c
@@ -0,0 +1,167 @@
+/*
+ * Copyright (C) 2012 VLC authors and VideoLAN
+ * Author : Sukrit Sangwan < sukritsangwan at gmail dot com >
+ *
+ * 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 "libavutil/channel_layout.h"
+#include "libavutil/opt.h"
+#include "avfilter.h"
+#include "audio.h"
+#include "formats.h"
+
+typedef struct StereoWidenContext {
+const AVClass *class;
+
+float delay;
+float feedback;
+float crossfeed;
+float drymix;
+
+float *buffer;
+float *write;
+int length;
+} StereoWidenContext;
+
+#define OFFSET(x) offsetof(StereoWidenContext, x)
+#define A AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM
+
+static const AVOption stereowiden_options[] = {
+{ "delay", "set delay time",OFFSET(delay), AV_OPT_TYPE_FLOAT,  
{.dbl=20}, 0, 9000, A },
+{ "feedback",  "set feedback gain", OFFSET(feedback),  AV_OPT_TYPE_FLOAT,  
{.dbl=.3}, 0,  0.9, A },
+{ "crossfeed", "set cross feed",OFFSET(crossfeed), AV_OPT_TYPE_FLOAT,  
{.dbl=.3}, 0,  0.8, A },
+{ "drymix","set dry-mix",   OFFSET(drymix),AV_OPT_TYPE_FLOAT,  
{.dbl=.8}, 0,  1.0, A },
+{ NULL }
+};
+
+AVFILTER_DEFINE_CLASS(stereowiden);
+
+static int query_formats(AVFilterContext *ctx)
+{
+AVFilterFormats *formats = NULL;
+AVFilterChannelLayouts *layout = NULL;
+
+ff_add_format(&formats, AV_SAMPLE_FMT_FLT);
+ff_set_common_formats(ctx, formats);
+ff_add_channel_layout(&layout, AV_CH_LAYOUT_STEREO);
+ff_set_common_channel_layouts(ctx, layout);
+
+formats = ff_all_samplerates();
+if (!formats)
+return AVERROR(ENOMEM);
+return ff_set_common_samplerates(ctx, formats);
+}
+
+static int config_input(AVFilterLink *inlink)
+{
+AVFilterContext *ctx = inlink->dst;
+StereoWidenContext *s = ctx->priv;
+
+s->length = 2 * s->delay * inlink->sample_rate / 1000;
+s->buffer = av_calloc(s->length, sizeof(s->buffer));
+if (!s->buffer)
+return AVERROR(ENOMEM);
+s->write = s->buffer;
+
+return 0;
+}
+
+static int filter_frame(AVFilterLink *inlink, AVFrame *in)
+{
+AVFilterContext *ctx = inlink->dst;
+AVFilterLink *outlink = ctx->outputs[0];
+StereoWidenContext *s = ctx->priv;
+const float *src = (const float *)in->data[0];
+const float drymix = s->drymix;
+const float crossfeed = s->crossfeed;
+const float feedback = s->feedback;
+AVFrame *out = NULL;
+float *dst;
+int n;
+
+if (av_frame_is_writable(in)) {
+out = in;
+} else {
+AVFrame *out = ff_get_audio_buffer(inlink, in->nb_samples);
+if (!out) {
+av_frame_free(&in);
+return AVERROR(ENOMEM);
+}
+av_frame_copy_props(out, in);
+}
+dst = (float *)out->data[0];
+
+for (n = 0; n < in->nb_samples; n++, src += 2, dst += 2) {
+const float left = src[0], right = src[1];
+float *read = s->write + 2;
+
+if (read > s->buffer + s->length)
+read = s->buffer;
+
+dst[0] = drymix * left - crossfeed * right - feedback * read[1];
+dst[1] = drymix * right - crossfeed * left - feedback 

Re: [FFmpeg-devel] [PATCH] mpjpeg: CRLF terminating a sequence of MIME headers should not cause an error

2015-09-12 Thread Alex Agranovsky
Amended: one of the new blocks ended up in a wrong location.

 libavformat/mpjpegdec.c | 19 +++
 1 file changed, 15 insertions(+), 4 deletions(-)

diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c
index 8413ae7..1661b9d 100644
--- a/libavformat/mpjpegdec.c
+++ b/libavformat/mpjpegdec.c
@@ -43,11 +43,20 @@ static int get_line(AVIOContext *pb, char *line, int 
line_size)
 static int split_tag_value(char **tag, char **value, char *line)
 {
     char *p = line;
+    int  foundData = 0;
 
-    while (*p != '\0' && *p != ':')
+    *tag = NULL;
+    *value = NULL;
+
+
+    while (*p != '\0' && *p != ':') {
+        if (!av_isspace(*p)) {
+            foundData = 1;
+        }
         p++;
+    }
     if (*p != ':')
-        return AVERROR_INVALIDDATA;
+        return foundData?AVERROR_INVALIDDATA:0;
 
     *p   = '\0';
     *tag = line;
@@ -67,7 +76,7 @@ static int check_content_type(char *line)
     char *tag, *value;
     int ret = split_tag_value(&tag, &value, line);
 
-    if (ret < 0)
+    if (ret < 0 || tag == NULL || value == NULL)
         return ret;
 
     if (av_strcasecmp(tag, "Content-type") ||
@@ -173,7 +182,9 @@ static int parse_multipart_header(AVFormatContext *s)
         ret = split_tag_value(&tag, &value, line);
         if (ret < 0)
             return ret;
-
+        if (value==NULL || tag==NULL)
+            break;
+ 
         if (!av_strcasecmp(tag, "Content-type")) {
             if (av_strcasecmp(value, "image/jpeg")) {
                 av_log(s, AV_LOG_ERROR,


-- 
Alex Agranovsky
Sighthound, Inc
www.sighthound.com  

On September 12, 2015 at 4:50:54 PM, Alex Agranovsky (a...@sighthound.com) 
wrote:

 libavformat/mpjpegdec.c | 22 ++
 1 file changed, 18 insertions(+), 4 deletions(-)

diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c
index 8413ae7..c1ca508 100644
--- a/libavformat/mpjpegdec.c
+++ b/libavformat/mpjpegdec.c
@@ -43,11 +43,22 @@ static int get_line(AVIOContext *pb, char *line, int 
line_size)
 static int split_tag_value(char **tag, char **value, char *line)
 {
     char *p = line;
+    int  foundData = 0;
 
-    while (*p != '\0' && *p != ':')
+    *tag = NULL;
+    *value = NULL;
+
+
+    while (*p != '\0' && *p != ':') {
+        if (!av_isspace(*p)) {
+            foundData = 1;
+        }
         p++;
-    if (*p != ':')
-        return AVERROR_INVALIDDATA;
+    }
+    if (*p != ':') {
+        /* don't fail the parser if dealing with an empty line */
+        return foundData?AVERROR_INVALIDDATA:0;
+    }
 
     *p   = '\0';
     *tag = line;
@@ -166,12 +177,15 @@ static int parse_multipart_header(AVFormatContext *s)
         ret = get_line(s->pb, line, sizeof(line));
         if (ret < 0)
             break;
+        /* CRLF terminates a sequence of MIME headers */
+        if (value==NULL || tag==NULL)
+            break;
 
         if (line[0] == '\0')
             break;
 
         ret = split_tag_value(&tag, &value, line);
-        if (ret < 0)
+        if (ret < 0 || tag == NULL || value == NULL)
             return ret;
 
         if (!av_strcasecmp(tag, "Content-type")) {


-- 
Alex Agranovsky
Sighthound, Inc
www.sighthound.com
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH] mpjpeg: trim header name/value of MIME headers while probing

2015-09-12 Thread Alex Agranovsky
 libavformat/mpjpegdec.c | 15 +++
 1 file changed, 15 insertions(+)

diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c
index 1661b9d..009bbaf 100644
--- a/libavformat/mpjpegdec.c
+++ b/libavformat/mpjpegdec.c
@@ -40,6 +40,19 @@ static int get_line(AVIOContext *pb, char *line, int 
line_size)
     return 0;
 }
 
+
+static void trim_right(char* p)
+{
+    char* end;
+    if (!p || !*p)
+        return;
+    end=p+strlen(p)-1;
+    while (end!=p && av_isspace(*end)) {
+        *end='\0';
+        end--;
+    }
+}
+
 static int split_tag_value(char **tag, char **value, char *line)
 {
     char *p = line;
@@ -60,6 +73,7 @@ static int split_tag_value(char **tag, char **value, char 
*line)
 
     *p   = '\0';
     *tag = line;
+    trim_right(*tag);
 
     p++;
 
@@ -67,6 +81,7 @@ static int split_tag_value(char **tag, char **value, char 
*line)
         p++;
 
     *value = p;
+    trim_right(*value);
 
     return 0;
 }


-- 
Alex Agranovsky
Sighthound, Inc
www.sighthound.com  
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] Allow mpjpeg headers parsing to succeed upon EOF, if required headers are present

2015-09-12 Thread Michael Niedermayer
On Sat, Sep 12, 2015 at 04:33:17PM -0400, Alex Agranovsky wrote:
>  libavformat/mpjpegdec.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c
> index b8281fc..8413ae7 100644
> --- a/libavformat/mpjpegdec.c
> +++ b/libavformat/mpjpegdec.c
> @@ -165,7 +165,7 @@ static int parse_multipart_header(AVFormatContext *s)
> 
>          ret = get_line(s->pb, line, sizeof(line));
>          if (ret < 0)
> -            return ret;
> +            break;

Applying: Allow mpjpeg headers parsing to succeed upon EOF, if required headers 
are present
fatal: corrupt patch at line 7

also for strict correctness this should probably only break for AVERROR_EOF

[...]

-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Dictatorship naturally arises out of democracy, and the most aggravated
form of tyranny and slavery out of the most extreme liberty. -- Plato


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] mpjpeg: trim header name/value of MIME headers while probing

2015-09-12 Thread Michael Niedermayer
On Sat, Sep 12, 2015 at 05:10:06PM -0400, Alex Agranovsky wrote:
>  libavformat/mpjpegdec.c | 15 +++
>  1 file changed, 15 insertions(+)

patching file libavformat/mpjpegdec.c
patch:  malformed patch at line 6:      return 0;

it seems the patches have been corrupted somewhere in the mail
processing, can you send the as attachment ?

[...]
-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Concerning the gods, I have no means of knowing whether they exist or not
or of what sort they may be, because of the obscurity of the subject, and
the brevity of human life -- Protagoras


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] mpjpeg: CRLF terminating a sequence of MIME headers should not cause an error

2015-09-12 Thread Michael Niedermayer
On Sat, Sep 12, 2015 at 05:05:04PM -0400, Alex Agranovsky wrote:
> Amended: one of the new blocks ended up in a wrong location.
> 
>  libavformat/mpjpegdec.c | 19 +++
>  1 file changed, 15 insertions(+), 4 deletions(-)
> 
> diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c
> index 8413ae7..1661b9d 100644
> --- a/libavformat/mpjpegdec.c
> +++ b/libavformat/mpjpegdec.c
> @@ -43,11 +43,20 @@ static int get_line(AVIOContext *pb, char *line, int 
> line_size)
>  static int split_tag_value(char **tag, char **value, char *line)
>  {
>      char *p = line;
> +    int  foundData = 0;
>  
> -    while (*p != '\0' && *p != ':')
> +    *tag = NULL;
> +    *value = NULL;
> +
> +
> +    while (*p != '\0' && *p != ':') {
> +        if (!av_isspace(*p)) {
> +            foundData = 1;
> +        }
>          p++;
> +    }
>      if (*p != ':')
> -        return AVERROR_INVALIDDATA;
> +        return foundData?AVERROR_INVALIDDATA:0;
>  
>      *p   = '\0';
>      *tag = line;
> @@ -67,7 +76,7 @@ static int check_content_type(char *line)
>      char *tag, *value;
>      int ret = split_tag_value(&tag, &value, line);
>  
> -    if (ret < 0)
> +    if (ret < 0 || tag == NULL || value == NULL)
>          return ret;

doesnt this result in a probe score of AVPROBE_SCORE_MAX for an
empty line, or am i misreading the code ?


[...]
-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Good people do not need laws to tell them to act responsibly, while bad
people will find a way around the laws. -- Plato


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: Switch bitrate to 64bit with the bump

2015-09-12 Thread Michael Niedermayer
On Sat, Sep 12, 2015 at 07:52:42PM +0200, Carl Eugen Hoyos wrote:
> Hi!
> 
> Attached is a new patch that should be ready to be applied no matter if we 
> drop compatibility or not.
> 
> Please comment (quickly if possible), Carl Eugen

i think there are a few changes missing:

libavcodec/cook.c: In function ‘dump_cook_context’:
libavcodec/cook.c:1031:5: warning: format ‘%d’ expects argument of type ‘int’, 
but argument 5 has type ‘int64_t’ [-Wformat]
libavdevice/fbdev_dec.c: In function ‘fbdev_read_header’:
libavdevice/fbdev_dec.c:143:12: warning: format ‘%d’ expects argument of type 
‘int’, but argument 10 has type ‘int64_t’ [-Wformat]
ffserver.c: In function ‘print_stream_params’:
ffserver.c:1793:21: warning: format ‘%d’ expects argument of type ‘int’, but 
argument 5 has type ‘int64_t’ [-Wformat]

the entries in libavcodec/options_table.h need updating as well

[...]

-- 
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


Re: [FFmpeg-devel] [PATCH] Allow mpjpeg headers parsing to succeed upon EOF, if required headers are present

2015-09-12 Thread Alex Agranovsky
Modified patch is attached.

-- 
Alex Agranovsky
Sighthound, Inc
www.sighthound.com  

On September 12, 2015 at 5:37:51 PM, Michael Niedermayer (michae...@gmx.at) 
wrote:

On Sat, Sep 12, 2015 at 04:33:17PM -0400, Alex Agranovsky wrote:  
>  libavformat/mpjpegdec.c | 2 +-  
>  1 file changed, 1 insertion(+), 1 deletion(-)  
>  
> diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c  
> index b8281fc..8413ae7 100644  
> --- a/libavformat/mpjpegdec.c  
> +++ b/libavformat/mpjpegdec.c  
> @@ -165,7 +165,7 @@ static int parse_multipart_header(AVFormatContext *s)  
>  
>          ret = get_line(s->pb, line, sizeof(line));  
>          if (ret < 0)  
> -            return ret;  
> +            break;  

Applying: Allow mpjpeg headers parsing to succeed upon EOF, if required headers 
are present  
fatal: corrupt patch at line 7  

also for strict correctness this should probably only break for AVERROR_EOF  

[...]  

--  
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  

Dictatorship naturally arises out of democracy, and the most aggravated  
form of tyranny and slavery out of the most extreme liberty. -- Plato  
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


patch1.diff
Description: Binary data
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] mpjpeg: CRLF terminating a sequence of MIME headers should not cause an error

2015-09-12 Thread Alex Agranovsky
You’re correct, sir. New patch is attached.


-- 
Alex Agranovsky
Sighthound, Inc
www.sighthound.com  

On September 12, 2015 at 5:54:23 PM, Michael Niedermayer (michae...@gmx.at) 
wrote:

On Sat, Sep 12, 2015 at 05:05:04PM -0400, Alex Agranovsky wrote:  
> Amended: one of the new blocks ended up in a wrong location.  
>  
>  libavformat/mpjpegdec.c | 19 +++  
>  1 file changed, 15 insertions(+), 4 deletions(-)  
>  
> diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c  
> index 8413ae7..1661b9d 100644  
> --- a/libavformat/mpjpegdec.c  
> +++ b/libavformat/mpjpegdec.c  
> @@ -43,11 +43,20 @@ static int get_line(AVIOContext *pb, char *line, int 
> line_size)  
>  static int split_tag_value(char **tag, char **value, char *line)  
>  {  
>      char *p = line;  
> +    int  foundData = 0;  
>    
> -    while (*p != '\0' && *p != ':')  
> +    *tag = NULL;  
> +    *value = NULL;  
> +  
> +  
> +    while (*p != '\0' && *p != ':') {  
> +        if (!av_isspace(*p)) {  
> +            foundData = 1;  
> +        }  
>          p++;  
> +    }  
>      if (*p != ':')  
> -        return AVERROR_INVALIDDATA;  
> +        return foundData?AVERROR_INVALIDDATA:0;  
>    
>      *p   = '\0';  
>      *tag = line;  
> @@ -67,7 +76,7 @@ static int check_content_type(char *line)  
>      char *tag, *value;  
>      int ret = split_tag_value(&tag, &value, line);  
>    
> -    if (ret < 0)  
> +    if (ret < 0 || tag == NULL || value == NULL)  
>          return ret;  

doesnt this result in a probe score of AVPROBE_SCORE_MAX for an  
empty line, or am i misreading the code ?  


[...]  
--  
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  

Good people do not need laws to tell them to act responsibly, while bad  
people will find a way around the laws. -- Plato  
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


patch2b.diff
Description: Binary data
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] Allow mpjpeg headers parsing to succeed upon EOF, if required headers are present

2015-09-12 Thread Michael Niedermayer
On Sat, Sep 12, 2015 at 06:49:41PM -0400, Alex Agranovsky wrote:
> Modified patch is attached.
> 
> -- 
> Alex Agranovsky
> Sighthound, Inc
> www.sighthound.com
> 
> On September 12, 2015 at 5:37:51 PM, Michael Niedermayer (michae...@gmx.at) 
> wrote:
> 
> On Sat, Sep 12, 2015 at 04:33:17PM -0400, Alex Agranovsky wrote:  
> >  libavformat/mpjpegdec.c | 2 +-  
> >  1 file changed, 1 insertion(+), 1 deletion(-)  
> >  
> > diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c  
> > index b8281fc..8413ae7 100644  
> > --- a/libavformat/mpjpegdec.c  
> > +++ b/libavformat/mpjpegdec.c  
> > @@ -165,7 +165,7 @@ static int parse_multipart_header(AVFormatContext *s)  
> >  
> >          ret = get_line(s->pb, line, sizeof(line));  
> >          if (ret < 0)  
> > -            return ret;  
> > +            break;  
> 
> Applying: Allow mpjpeg headers parsing to succeed upon EOF, if required 
> headers are present  
> fatal: corrupt patch at line 7  
> 
> also for strict correctness this should probably only break for AVERROR_EOF  
> 
> [...]  
> 
> --  
> Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  
> 
> Dictatorship naturally arises out of democracy, and the most aggravated  
> form of tyranny and slavery out of the most extreme liberty. -- Plato  
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

>  mpjpegdec.c |5 -
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 95570908ce1b8c6a97e45954d4f5a801a525d22c  patch1.diff
> diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c
> index b8281fc..e4d76f3 100644
> --- a/libavformat/mpjpegdec.c
> +++ b/libavformat/mpjpegdec.c
> @@ -154,8 +154,11 @@ static int parse_multipart_header(AVFormatContext *s)
>  int ret, size = -1;
>  
>  ret = get_line(s->pb, line, sizeof(line));
> -if (ret < 0)
> +if (ret < 0) {
> +if (ret==AVERROR_EOF)
> +break;
>  return ret;
> +}

this is a different hunk and it fails to build:
ffmpeg/libavformat/mpjpegdec.c: In function ‘parse_multipart_header’:
ffmpeg/libavformat/mpjpegdec.c:159:13: error: break statement not within loop 
or switch

[...]

-- 
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] mpjpeg: trim header name/value of MIME headers while probing

2015-09-12 Thread Alex Agranovsky
Attached.

-- 
Alex Agranovsky
Sighthound, Inc
www.sighthound.com  

On September 12, 2015 at 5:41:56 PM, Michael Niedermayer (michae...@gmx.at) 
wrote:

On Sat, Sep 12, 2015 at 05:10:06PM -0400, Alex Agranovsky wrote:  
>  libavformat/mpjpegdec.c | 15 +++  
>  1 file changed, 15 insertions(+)  

patching file libavformat/mpjpegdec.c  
patch:  malformed patch at line 6:      return 0;  

it seems the patches have been corrupted somewhere in the mail  
processing, can you send the as attachment ?  

[...]  
--  
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  

Concerning the gods, I have no means of knowing whether they exist or not  
or of what sort they may be, because of the obscurity of the subject, and  
the brevity of human life -- Protagoras  
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


patch3.diff
Description: Binary data
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] mpjpeg: CRLF terminating a sequence of MIME headers should not cause an error

2015-09-12 Thread Michael Niedermayer
On Sat, Sep 12, 2015 at 07:04:26PM -0400, Alex Agranovsky wrote:
> You’re correct, sir. New patch is attached.
> 
> 
> -- 
> Alex Agranovsky
> Sighthound, Inc
> www.sighthound.com
> 
> On September 12, 2015 at 5:54:23 PM, Michael Niedermayer (michae...@gmx.at) 
> wrote:
> 
> On Sat, Sep 12, 2015 at 05:05:04PM -0400, Alex Agranovsky wrote:  
> > Amended: one of the new blocks ended up in a wrong location.  
> >  
> >  libavformat/mpjpegdec.c | 19 +++  
> >  1 file changed, 15 insertions(+), 4 deletions(-)  
> >  
> > diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c  
> > index 8413ae7..1661b9d 100644  
> > --- a/libavformat/mpjpegdec.c  
> > +++ b/libavformat/mpjpegdec.c  
> > @@ -43,11 +43,20 @@ static int get_line(AVIOContext *pb, char *line, int 
> > line_size)  
> >  static int split_tag_value(char **tag, char **value, char *line)  
> >  {  
> >      char *p = line;  
> > +    int  foundData = 0;  
> >    
> > -    while (*p != '\0' && *p != ':')  
> > +    *tag = NULL;  
> > +    *value = NULL;  
> > +  
> > +  
> > +    while (*p != '\0' && *p != ':') {  
> > +        if (!av_isspace(*p)) {  
> > +            foundData = 1;  
> > +        }  
> >          p++;  
> > +    }  
> >      if (*p != ':')  
> > -        return AVERROR_INVALIDDATA;  
> > +        return foundData?AVERROR_INVALIDDATA:0;  
> >    
> >      *p   = '\0';  
> >      *tag = line;  
> > @@ -67,7 +76,7 @@ static int check_content_type(char *line)  
> >      char *tag, *value;  
> >      int ret = split_tag_value(&tag, &value, line);  
> >    
> > -    if (ret < 0)  
> > +    if (ret < 0 || tag == NULL || value == NULL)  
> >          return ret;  
> 
> doesnt this result in a probe score of AVPROBE_SCORE_MAX for an  
> empty line, or am i misreading the code ?  
> 
> 
> [...]  
> --  
> Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  
> 
> Good people do not need laws to tell them to act responsibly, while bad  
> people will find a way around the laws. -- Plato  
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

>  mpjpegdec.c |   19 ---
>  1 file changed, 16 insertions(+), 3 deletions(-)
> 7f04b810839ce200528855c2c9b50aaf45028045  patch2b.diff
> diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c
> index e4d76f3..8c91bc4 100644
> --- a/libavformat/mpjpegdec.c
> +++ b/libavformat/mpjpegdec.c
> @@ -43,11 +43,20 @@ static int get_line(AVIOContext *pb, char *line, int 
> line_size)
>  static int split_tag_value(char **tag, char **value, char *line)
>  {
>  char *p = line;
> +int  foundData = 0;
>  
> -while (*p != '\0' && *p != ':')
> +*tag = NULL;
> +*value = NULL;
> +
> +
> +while (*p != '\0' && *p != ':') {
> +if (!av_isspace(*p)) {
> +foundData = 1;
> +}
>  p++;
> +}
>  if (*p != ':')
> -return AVERROR_INVALIDDATA;
> +return foundData?AVERROR_INVALIDDATA:0;
>  
>  *p   = '\0';
>  *tag = line;
> @@ -70,7 +79,9 @@ static int check_content_type(char *line)
>  if (ret < 0)
>  return ret;
>  
> -if (av_strcasecmp(tag, "Content-type") ||
> +if ( tag == NULL ||
> +value == NULL ||
> +av_strcasecmp(tag, "Content-type") ||
>  av_strcasecmp(value, "image/jpeg"))
>  return AVERROR_INVALIDDATA;
>  

> @@ -176,6 +187,8 @@ static int parse_multipart_header(AVFormatContext *s)
>  ret = split_tag_value(&tag, &value, line);
>  if (ret < 0)
>  return ret;
> +if (value==NULL || tag==NULL)
> +break;

this would stop parsing on an empty line,
could there be further lines afterwards that need parsing ?

[...]

-- 
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] mpjpeg: CRLF terminating a sequence of MIME headers should not cause an error

2015-09-12 Thread Alex Agranovsky
This is as intended: stopping at the empty line is exactly what we should do in 
this case, as it separates headers from the content.
If the two headers we’re looking for hadn’t been encountered prior to the empty 
line, error should be returned. 

This is based on http://tools.ietf.org/html/rfc2046:

body-part := MIME-part-headers [CRLF *OCTET]
  ; Lines in a body-part must not start
  ; with the specified dash-boundary and
  ; the delimiter must not appear anywhere
  ; in the body part.  Note that the
  ; semantics of a body-part differ from
  ; the semantics of a message, as
  ; described in the text.


-- 
Alex Agranovsky
Sighthound, Inc
www.sighthound.com  

On September 12, 2015 at 8:14:01 PM, Michael Niedermayer (michae...@gmx.at) 
wrote:

On Sat, Sep 12, 2015 at 07:04:26PM -0400, Alex Agranovsky wrote:  
> You’re correct, sir. New patch is attached.  
>  
>  
> --   
> Alex Agranovsky  
> Sighthound, Inc  
> www.sighthound.com
>  
> On September 12, 2015 at 5:54:23 PM, Michael Niedermayer (michae...@gmx.at) 
> wrote:  
>  
> On Sat, Sep 12, 2015 at 05:05:04PM -0400, Alex Agranovsky wrote:  
> > Amended: one of the new blocks ended up in a wrong location.  
> >  
> >  libavformat/mpjpegdec.c | 19 +++  
> >  1 file changed, 15 insertions(+), 4 deletions(-)  
> >  
> > diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c  
> > index 8413ae7..1661b9d 100644  
> > --- a/libavformat/mpjpegdec.c  
> > +++ b/libavformat/mpjpegdec.c  
> > @@ -43,11 +43,20 @@ static int get_line(AVIOContext *pb, char *line, int 
> > line_size)  
> >  static int split_tag_value(char **tag, char **value, char *line)  
> >  {  
> >      char *p = line;  
> > +    int  foundData = 0;  
> >    
> > -    while (*p != '\0' && *p != ':')  
> > +    *tag = NULL;  
> > +    *value = NULL;  
> > +  
> > +  
> > +    while (*p != '\0' && *p != ':') {  
> > +        if (!av_isspace(*p)) {  
> > +            foundData = 1;  
> > +        }  
> >          p++;  
> > +    }  
> >      if (*p != ':')  
> > -        return AVERROR_INVALIDDATA;  
> > +        return foundData?AVERROR_INVALIDDATA:0;  
> >    
> >      *p   = '\0';  
> >      *tag = line;  
> > @@ -67,7 +76,7 @@ static int check_content_type(char *line)  
> >      char *tag, *value;  
> >      int ret = split_tag_value(&tag, &value, line);  
> >    
> > -    if (ret < 0)  
> > +    if (ret < 0 || tag == NULL || value == NULL)  
> >          return ret;  
>  
> doesnt this result in a probe score of AVPROBE_SCORE_MAX for an  
> empty line, or am i misreading the code ?  
>  
>  
> [...]  
> --  
> Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  
>  
> Good people do not need laws to tell them to act responsibly, while bad  
> people will find a way around the laws. -- Plato  
> ___  
> ffmpeg-devel mailing list  
> ffmpeg-devel@ffmpeg.org  
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel  

> mpjpegdec.c | 19 ---  
> 1 file changed, 16 insertions(+), 3 deletions(-)  
> 7f04b810839ce200528855c2c9b50aaf45028045 patch2b.diff  
> diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c  
> index e4d76f3..8c91bc4 100644  
> --- a/libavformat/mpjpegdec.c  
> +++ b/libavformat/mpjpegdec.c  
> @@ -43,11 +43,20 @@ static int get_line(AVIOContext *pb, char *line, int 
> line_size)  
> static int split_tag_value(char **tag, char **value, char *line)  
> {  
> char *p = line;  
> + int foundData = 0;  
>  
> - while (*p != '\0' && *p != ':')  
> + *tag = NULL;  
> + *value = NULL;  
> +  
> +  
> + while (*p != '\0' && *p != ':') {  
> + if (!av_isspace(*p)) {  
> + foundData = 1;  
> + }  
> p++;  
> + }  
> if (*p != ':')  
> - return AVERROR_INVALIDDATA;  
> + return foundData?AVERROR_INVALIDDATA:0;  
>  
> *p = '\0';  
> *tag = line;  
> @@ -70,7 +79,9 @@ static int check_content_type(char *line)  
> if (ret < 0)  
> return ret;  
>  
> - if (av_strcasecmp(tag, "Content-type") ||  
> + if ( tag == NULL ||  
> + value == NULL ||  
> + av_strcasecmp(tag, "Content-type") ||  
> av_strcasecmp(value, "image/jpeg"))  
> return AVERROR_INVALIDDATA;  
>  

> @@ -176,6 +187,8 @@ static int parse_multipart_header(AVFormatContext *s)  
> ret = split_tag_value(&tag, &value, line);  
> if (ret < 0)  
> return ret;  
> + if (value==NULL || tag==NULL)  
> + break;  

this would stop parsing on an empty line,  
could there be further lines afterwards that need parsing ?  

[...]  

--  
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  

Why not whip the teacher when the pupil misbehaves? -- Diogenes of Sinope  
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
___
ffmpeg-devel mailing list
ffmpeg

Re: [FFmpeg-devel] [PATCH] Allow mpjpeg headers parsing to succeed upon EOF, if required headers are present

2015-09-12 Thread Alex Agranovsky
My bad — sorry about that. 

On September 12, 2015 at 7:08:34 PM, Michael Niedermayer (michae...@gmx.at) 
wrote:

On Sat, Sep 12, 2015 at 06:49:41PM -0400, Alex Agranovsky wrote:  
> Modified patch is attached.  
>  
> --   
> Alex Agranovsky  
> Sighthound, Inc  
> www.sighthound.com
>  
> On September 12, 2015 at 5:37:51 PM, Michael Niedermayer (michae...@gmx.at) 
> wrote:  
>  
> On Sat, Sep 12, 2015 at 04:33:17PM -0400, Alex Agranovsky wrote:  
> >  libavformat/mpjpegdec.c | 2 +-  
> >  1 file changed, 1 insertion(+), 1 deletion(-)  
> >  
> > diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c  
> > index b8281fc..8413ae7 100644  
> > --- a/libavformat/mpjpegdec.c  
> > +++ b/libavformat/mpjpegdec.c  
> > @@ -165,7 +165,7 @@ static int parse_multipart_header(AVFormatContext *s)  
> >  
> >          ret = get_line(s->pb, line, sizeof(line));  
> >          if (ret < 0)  
> > -            return ret;  
> > +            break;  
>  
> Applying: Allow mpjpeg headers parsing to succeed upon EOF, if required 
> headers are present  
> fatal: corrupt patch at line 7  
>  
> also for strict correctness this should probably only break for AVERROR_EOF  
>  
> [...]  
>  
> --  
> Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  
>  
> Dictatorship naturally arises out of democracy, and the most aggravated  
> form of tyranny and slavery out of the most extreme liberty. -- Plato  
> ___  
> ffmpeg-devel mailing list  
> ffmpeg-devel@ffmpeg.org  
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel  

> mpjpegdec.c | 5 -  
> 1 file changed, 4 insertions(+), 1 deletion(-)  
> 95570908ce1b8c6a97e45954d4f5a801a525d22c patch1.diff  
> diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c  
> index b8281fc..e4d76f3 100644  
> --- a/libavformat/mpjpegdec.c  
> +++ b/libavformat/mpjpegdec.c  
> @@ -154,8 +154,11 @@ static int parse_multipart_header(AVFormatContext *s)  
> int ret, size = -1;  
>  
> ret = get_line(s->pb, line, sizeof(line));  
> - if (ret < 0)  
> + if (ret < 0) {  
> + if (ret==AVERROR_EOF)  
> + break;  
> return ret;  
> + }  

this is a different hunk and it fails to build:  
ffmpeg/libavformat/mpjpegdec.c: In function ‘parse_multipart_header’:  
ffmpeg/libavformat/mpjpegdec.c:159:13: error: break statement not within loop 
or switch  

[...]  

--  
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  

Observe your enemies, for they first find out your faults. -- Antisthenes  
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


patch1c.diff
Description: Binary data
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] Allow mpjpeg headers parsing to succeed upon EOF, if required headers are present

2015-09-12 Thread Michael Niedermayer
On Sat, Sep 12, 2015 at 08:34:14PM -0400, Alex Agranovsky wrote:
> My bad — sorry about that. 
> 
> On September 12, 2015 at 7:08:34 PM, Michael Niedermayer (michae...@gmx.at) 
> wrote:
> 
> On Sat, Sep 12, 2015 at 06:49:41PM -0400, Alex Agranovsky wrote:  
> > Modified patch is attached.  
> >  
> > --   
> > Alex Agranovsky  
> > Sighthound, Inc  
> > www.sighthound.com  
> >  
> > On September 12, 2015 at 5:37:51 PM, Michael Niedermayer (michae...@gmx.at) 
> > wrote:  
> >  
> > On Sat, Sep 12, 2015 at 04:33:17PM -0400, Alex Agranovsky wrote:  
> > >  libavformat/mpjpegdec.c | 2 +-  
> > >  1 file changed, 1 insertion(+), 1 deletion(-)  
> > >  
> > > diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c  
> > > index b8281fc..8413ae7 100644  
> > > --- a/libavformat/mpjpegdec.c  
> > > +++ b/libavformat/mpjpegdec.c  
> > > @@ -165,7 +165,7 @@ static int parse_multipart_header(AVFormatContext *s) 
> > >  
> > >  
> > >          ret = get_line(s->pb, line, sizeof(line));  
> > >          if (ret < 0)  
> > > -            return ret;  
> > > +            break;  
> >  
> > Applying: Allow mpjpeg headers parsing to succeed upon EOF, if required 
> > headers are present  
> > fatal: corrupt patch at line 7  
> >  
> > also for strict correctness this should probably only break for AVERROR_EOF 
> >  
> >  
> > [...]  
> >  
> > --  
> > Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  
> >  
> > Dictatorship naturally arises out of democracy, and the most aggravated  
> > form of tyranny and slavery out of the most extreme liberty. -- Plato  
> > ___  
> > ffmpeg-devel mailing list  
> > ffmpeg-devel@ffmpeg.org  
> > http://ffmpeg.org/mailman/listinfo/ffmpeg-devel  
> 
> > mpjpegdec.c | 5 -  
> > 1 file changed, 4 insertions(+), 1 deletion(-)  
> > 95570908ce1b8c6a97e45954d4f5a801a525d22c patch1.diff  
> > diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c  
> > index b8281fc..e4d76f3 100644  
> > --- a/libavformat/mpjpegdec.c  
> > +++ b/libavformat/mpjpegdec.c  
> > @@ -154,8 +154,11 @@ static int parse_multipart_header(AVFormatContext *s)  
> > int ret, size = -1;  
> >  
> > ret = get_line(s->pb, line, sizeof(line));  
> > - if (ret < 0)  
> > + if (ret < 0) {  
> > + if (ret==AVERROR_EOF)  
> > + break;  
> > return ret;  
> > + }  
> 
> this is a different hunk and it fails to build:  
> ffmpeg/libavformat/mpjpegdec.c: In function ‘parse_multipart_header’:  
> ffmpeg/libavformat/mpjpegdec.c:159:13: error: break statement not within loop 
> or switch  
> 
> [...]  
> 
> --  
> Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB  
> 
> Observe your enemies, for they first find out your faults. -- Antisthenes  
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

>  mpjpegdec.c |5 -
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 78ee277ff0b7d7df13eb148d601c1c8ddf4c0634  patch1c.diff
> commit 0a603cdaf5cf5d6dd722fe5556c278ce726683b9
> Author: Alex Agranovsky 
> Date:   Sat Sep 12 20:28:33 2015 -0400
> 
> Allow mpjpeg headers parsing to succeed upon EOF, if required headers are 
> present

applied

btw, "git format-patch" style patches are prefered over "git show/log"
style

thanks


[...]

-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

DNS cache poisoning attacks, popular search engine, Google internet authority
dont be evil, please


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH 1/5] avfilter/vsrc_mandelbrot: use the name 's' for the pointer to the private context

2015-09-12 Thread Ganesh Ajjanagadde
Signed-off-by: Ganesh Ajjanagadde 
---
 libavfilter/vsrc_mandelbrot.c | 166 +-
 1 file changed, 83 insertions(+), 83 deletions(-)

diff --git a/libavfilter/vsrc_mandelbrot.c b/libavfilter/vsrc_mandelbrot.c
index e26fecd..56d0503 100644
--- a/libavfilter/vsrc_mandelbrot.c
+++ b/libavfilter/vsrc_mandelbrot.c
@@ -121,29 +121,29 @@ AVFILTER_DEFINE_CLASS(mandelbrot);
 
 static av_cold int init(AVFilterContext *ctx)
 {
-MBContext *mb = ctx->priv;
+MBContext *s = ctx->priv;
 
-mb->bailout *= mb->bailout;
+s->bailout *= s->bailout;
 
-mb->start_scale /=mb->h;
-mb->end_scale /=mb->h;
+s->start_scale /=s->h;
+s->end_scale /=s->h;
 
-mb->cache_allocated = mb->w * mb->h * 3;
-mb->cache_used = 0;
-mb->point_cache= av_malloc_array(mb->cache_allocated, 
sizeof(*mb->point_cache));
-mb-> next_cache= av_malloc_array(mb->cache_allocated, sizeof(*mb-> 
next_cache));
-mb-> zyklus= av_malloc_array(mb->maxiter + 16, sizeof(*mb->zyklus));
+s->cache_allocated = s->w * s->h * 3;
+s->cache_used = 0;
+s->point_cache= av_malloc_array(s->cache_allocated, 
sizeof(*s->point_cache));
+s-> next_cache= av_malloc_array(s->cache_allocated, sizeof(*s-> 
next_cache));
+s-> zyklus= av_malloc_array(s->maxiter + 16, sizeof(*s->zyklus));
 
 return 0;
 }
 
 static av_cold void uninit(AVFilterContext *ctx)
 {
-MBContext *mb = ctx->priv;
+MBContext *s = ctx->priv;
 
-av_freep(&mb->point_cache);
-av_freep(&mb-> next_cache);
-av_freep(&mb->zyklus);
+av_freep(&s->point_cache);
+av_freep(&s-> next_cache);
+av_freep(&s->zyklus);
 }
 
 static int query_formats(AVFilterContext *ctx)
@@ -162,48 +162,48 @@ static int query_formats(AVFilterContext *ctx)
 static int config_props(AVFilterLink *inlink)
 {
 AVFilterContext *ctx = inlink->src;
-MBContext *mb = ctx->priv;
+MBContext *s = ctx->priv;
 
-if (av_image_check_size(mb->w, mb->h, 0, ctx) < 0)
+if (av_image_check_size(s->w, s->h, 0, ctx) < 0)
 return AVERROR(EINVAL);
 
-inlink->w = mb->w;
-inlink->h = mb->h;
-inlink->time_base = av_inv_q(mb->frame_rate);
+inlink->w = s->w;
+inlink->h = s->h;
+inlink->time_base = av_inv_q(s->frame_rate);
 
 return 0;
 }
 
 static void fill_from_cache(AVFilterContext *ctx, uint32_t *color, int 
*in_cidx, int *out_cidx, double py, double scale){
-MBContext *mb = ctx->priv;
-if(mb->morphamp)
+MBContext *s = ctx->priv;
+if(s->morphamp)
 return;
-for(; *in_cidx < mb->cache_used; (*in_cidx)++){
-Point *p= &mb->point_cache[*in_cidx];
+for(; *in_cidx < s->cache_used; (*in_cidx)++){
+Point *p= &s->point_cache[*in_cidx];
 int x;
 if(p->p[1] > py)
 break;
-x= round((p->p[0] - mb->start_x) / scale + mb->w/2);
-if(x<0 || x >= mb->w)
+x= round((p->p[0] - s->start_x) / scale + s->w/2);
+if(x<0 || x >= s->w)
 continue;
 if(color) color[x] = p->val;
-if(out_cidx && *out_cidx < mb->cache_allocated)
-mb->next_cache[(*out_cidx)++]= *p;
+if(out_cidx && *out_cidx < s->cache_allocated)
+s->next_cache[(*out_cidx)++]= *p;
 }
 }
 
-static int interpol(MBContext *mb, uint32_t *color, int x, int y, int linesize)
+static int interpol(MBContext *s, uint32_t *color, int x, int y, int linesize)
 {
 uint32_t a,b,c,d, i;
 uint32_t ipol=0xFF00;
 int dist;
 
-if(!x || !y || x+1==mb->w || y+1==mb->h)
+if(!x || !y || x+1==s->w || y+1==s->h)
 return 0;
 
-dist= FFMAX(FFABS(x-(mb->w>>1))*mb->h, FFABS(y-(mb->h>>1))*mb->w);
+dist= FFMAX(FFABS(x-(s->w>>1))*s->h, FFABS(y-(s->h>>1))*s->w);
 
-if(dist<(mb->w*mb->h>>3))
+if(dist<(s->w*s->h>>3))
 return 0;
 
 a=color[(x+1) + (y+0)*linesize];
@@ -248,50 +248,50 @@ static int interpol(MBContext *mb, uint32_t *color, int 
x, int y, int linesize)
 
 static void draw_mandelbrot(AVFilterContext *ctx, uint32_t *color, int 
linesize, int64_t pts)
 {
-MBContext *mb = ctx->priv;
+MBContext *s = ctx->priv;
 int x,y,i, in_cidx=0, next_cidx=0, tmp_cidx;
-double scale= mb->start_scale*pow(mb->end_scale/mb->start_scale, 
pts/mb->end_pts);
+double scale= s->start_scale*pow(s->end_scale/s->start_scale, 
pts/s->end_pts);
 int use_zyklus=0;
-fill_from_cache(ctx, NULL, &in_cidx, NULL, 
mb->start_y+scale*(-mb->h/2-0.5), scale);
+fill_from_cache(ctx, NULL, &in_cidx, NULL, s->start_y+scale*(-s->h/2-0.5), 
scale);
 tmp_cidx= in_cidx;
-memset(color, 0, sizeof(*color)*mb->w);
-for(y=0; yh; y++){
+memset(color, 0, sizeof(*color)*s->w);
+for(y=0; yh; y++){
 int y1= y+1;
-const double ci=mb->start_y+scale*(y-mb->h/2);
+const double ci=s->start_y+scale*(y-s->h/2);
 fill_from_cache(ctx, NULL, &in_cidx, &next_cidx, ci, scale);
-if(y1h){
-memset(color+linesize*y1, 0, s

[FFmpeg-devel] avfilter renaming (patches 2/5-5/5)

2015-09-12 Thread Ganesh Ajjanagadde
Hi,

Apologies for not using git send-email for the remaining patches; it
seems like git send-email has been broken by gmail; or does not like
sending multiple patches in a single shot.

As these patches are trivial; I have attached the remainder instead to
this email.

Regards,
Ganesh
From d0471edddbfde1bfda5bd6fce635522a8fbbcd6f Mon Sep 17 00:00:00 2001
From: Ganesh Ajjanagadde 
Date: Fri, 28 Aug 2015 01:29:07 -0400
Subject: [PATCH 2/5] avfilter/vsrc_life: use the name 's' for the pointer to
 the private context

Signed-off-by: Ganesh Ajjanagadde 
---
 libavfilter/vsrc_life.c | 218 
 1 file changed, 109 insertions(+), 109 deletions(-)

diff --git a/libavfilter/vsrc_life.c b/libavfilter/vsrc_life.c
index 314746d..720953f 100644
--- a/libavfilter/vsrc_life.c
+++ b/libavfilter/vsrc_life.c
@@ -144,15 +144,15 @@ error:
 #ifdef DEBUG
 static void show_life_grid(AVFilterContext *ctx)
 {
-LifeContext *life = ctx->priv;
+LifeContext *s = ctx->priv;
 int i, j;
 
-char *line = av_malloc(life->w + 1);
+char *line = av_malloc(s->w + 1);
 if (!line)
 return;
-for (i = 0; i < life->h; i++) {
-for (j = 0; j < life->w; j++)
-line[j] = life->buf[life->buf_idx][i*life->w + j] == ALIVE_CELL ? '@' : ' ';
+for (i = 0; i < s->h; i++) {
+for (j = 0; j < s->w; j++)
+line[j] = s->buf[s->buf_idx][i*s->w + j] == ALIVE_CELL ? '@' : ' ';
 line[j] = 0;
 av_log(ctx, AV_LOG_DEBUG, "%3d: %s\n", i, line);
 }
@@ -162,19 +162,19 @@ static void show_life_grid(AVFilterContext *ctx)
 
 static int init_pattern_from_file(AVFilterContext *ctx)
 {
-LifeContext *life = ctx->priv;
+LifeContext *s = ctx->priv;
 char *p;
 int ret, i, i0, j, h = 0, w, max_w = 0;
 
-if ((ret = av_file_map(life->filename, &life->file_buf, &life->file_bufsize,
+if ((ret = av_file_map(s->filename, &s->file_buf, &s->file_bufsize,
0, ctx)) < 0)
 return ret;
-av_freep(&life->filename);
+av_freep(&s->filename);
 
 /* prescan file to get the number of lines and the maximum width */
 w = 0;
-for (i = 0; i < life->file_bufsize; i++) {
-if (life->file_buf[i] == '\n') {
+for (i = 0; i < s->file_bufsize; i++) {
+if (s->file_buf[i] == '\n') {
 h++; max_w = FFMAX(w, max_w); w = 0;
 } else {
 w++;
@@ -182,78 +182,78 @@ static int init_pattern_from_file(AVFilterContext *ctx)
 }
 av_log(ctx, AV_LOG_DEBUG, "h:%d max_w:%d\n", h, max_w);
 
-if (life->w) {
-if (max_w > life->w || h > life->h) {
+if (s->w) {
+if (max_w > s->w || h > s->h) {
 av_log(ctx, AV_LOG_ERROR,
"The specified size is %dx%d which cannot contain the provided file size of %dx%d\n",
-   life->w, life->h, max_w, h);
+   s->w, s->h, max_w, h);
 return AVERROR(EINVAL);
 }
 } else {
 /* size was not specified, set it to size of the grid */
-life->w = max_w;
-life->h = h;
+s->w = max_w;
+s->h = h;
 }
 
-if (!(life->buf[0] = av_calloc(life->h * life->w, sizeof(*life->buf[0]))) ||
-!(life->buf[1] = av_calloc(life->h * life->w, sizeof(*life->buf[1] {
-av_freep(&life->buf[0]);
-av_freep(&life->buf[1]);
+if (!(s->buf[0] = av_calloc(s->h * s->w, sizeof(*s->buf[0]))) ||
+!(s->buf[1] = av_calloc(s->h * s->w, sizeof(*s->buf[1] {
+av_freep(&s->buf[0]);
+av_freep(&s->buf[1]);
 return AVERROR(ENOMEM);
 }
 
 /* fill buf[0] */
-p = life->file_buf;
-for (i0 = 0, i = (life->h - h)/2; i0 < h; i0++, i++) {
-for (j = (life->w - max_w)/2;; j++) {
+p = s->file_buf;
+for (i0 = 0, i = (s->h - h)/2; i0 < h; i0++, i++) {
+for (j = (s->w - max_w)/2;; j++) {
 av_log(ctx, AV_LOG_DEBUG, "%d:%d %c\n", i, j, *p == '\n' ? 'N' : *p);
 if (*p == '\n') {
 p++; break;
 } else
-life->buf[0][i*life->w + j] = av_isgraph(*(p++)) ? ALIVE_CELL : 0;
+s->buf[0][i*s->w + j] = av_isgraph(*(p++)) ? ALIVE_CELL : 0;
 }
 }
-life->buf_idx = 0;
+s->buf_idx = 0;
 
 return 0;
 }
 
 static av_cold int init(AVFilterContext *ctx)
 {
-LifeContext *life = ctx->priv;
+LifeContext *s = ctx->priv;
 int ret;
 
-if (!life->w && !life->filename)
-av_opt_set(life, "size", "320x240", 0);
+if (!s->w && !s->filename)
+av_opt_set(s, "size", "320x240", 0);
 
-if ((ret = parse_rule(&life->born_rule, &life->stay_rule, life->rule_str, ctx)) < 0)
+if ((ret = parse_rule(&s->born_rule, &s->stay_rule, s->rule_str, ctx)) < 0)
 return ret;
 
-if (!life->mold && memcmp(life->mold_color, "\x00\x00\x00", 3))
+if (!s->mold && memcmp(s->mold_color, "\x00\x00\x00", 3))
 av_log(ctx, AV_LOG_WARNIN

[FFmpeg-devel] [PATCH] configure: make assignment of variable to '=' explicit

2015-09-12 Thread Ganesh Ajjanagadde
op== is confusing, as it may easily be mistook for an equality check,
while in reality it is doing an assigment to '='.
This patch has the additional benefit of cleaning up 2 warnings from 
shellcheck.net.

Signed-off-by: Ganesh Ajjanagadde 
---
 configure | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/configure b/configure
index da18e70..2fb625b 100755
--- a/configure
+++ b/configure
@@ -622,12 +622,12 @@ enable_deep_weak(){
 }
 
 enabled(){
-test "${1#!}" = "$1" && op== || op=!=
+test "${1#!}" = "$1" && op='=' || op=!=
 eval test "x\$${1#!}" $op "xyes"
 }
 
 disabled(){
-test "${1#!}" = "$1" && op== || op=!=
+test "${1#!}" = "$1" && op='=' || op=!=
 eval test "x\$${1#!}" $op "xno"
 }
 
-- 
2.5.1

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel