Re: [FFmpeg-devel] [PATCH] avformat: stop exporting ffurl_read_complete, ffurl_seek and ffurl_size

2015-12-27 Thread Hendrik Leppkes
On Sun, Dec 27, 2015 at 7:32 PM, Jan Ehrhardt  wrote:
> Andreas Cadhalpun in gmane.comp.video.ffmpeg.devel (Tue, 27 Oct 2015
> 22:52:27 +0100):
>>> On Tue, Oct 27, 2015 at 9:58 PM, Andreas Cadhalpun
 diff --git a/libavformat/libavformat.v b/libavformat/libavformat.v
 index e90aef7..a00a309 100644
 --- a/libavformat/libavformat.v
 +++ b/libavformat/libavformat.v
 @@ -10,9 +10,6 @@ LIBAVFORMAT_$MAJOR {
 -ffurl_read_complete;
 -ffurl_seek;
 -ffurl_size;
>>
>>OK. I'll wait a bit to see if someone else wants to comment on this patch.
>
> There is a PHP extension that uses ffurl_seek and ffurl_read_complete:
> https://github.com/chung-leong/av/blob/master/faststart.c#L76
>
> These functions are also documented at
> http://www.ffmpeg.org/doxygen/trunk/avio_8c.html
>
> How should an external developer know what functions are publically
> available?

The doxygen you referenced documents everything, including internal
data structures.
It may be a bit unfortunate choice to have that on the website, but
its probably also used by developers of FFmpeg.

If you want to see public functions, best would be to check the
installed headers. avio.h for example doesn't export any non-public
functions (while of course avio.c contains them, which is what you
linked the doxygen of)

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


Re: [FFmpeg-devel] [PATCH] avformat: stop exporting ffurl_read_complete, ffurl_seek and ffurl_size

2015-12-27 Thread Jan Ehrhardt
Andreas Cadhalpun in gmane.comp.video.ffmpeg.devel (Tue, 27 Oct 2015
22:52:27 +0100):
>> On Tue, Oct 27, 2015 at 9:58 PM, Andreas Cadhalpun
>>> diff --git a/libavformat/libavformat.v b/libavformat/libavformat.v
>>> index e90aef7..a00a309 100644
>>> --- a/libavformat/libavformat.v
>>> +++ b/libavformat/libavformat.v
>>> @@ -10,9 +10,6 @@ LIBAVFORMAT_$MAJOR {
>>> -ffurl_read_complete;
>>> -ffurl_seek;
>>> -ffurl_size;
>
>OK. I'll wait a bit to see if someone else wants to comment on this patch.

There is a PHP extension that uses ffurl_seek and ffurl_read_complete:
https://github.com/chung-leong/av/blob/master/faststart.c#L76

These functions are also documented at
http://www.ffmpeg.org/doxygen/trunk/avio_8c.html

How should an external developer know what functions are publically
available?
-- 
Jan

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


Re: [FFmpeg-devel] [PATCH] avformat: stop exporting ffurl_read_complete, ffurl_seek and ffurl_size

2015-12-27 Thread Andreas Cadhalpun
On 27.12.2015 19:32, Jan Ehrhardt wrote:
> Andreas Cadhalpun in gmane.comp.video.ffmpeg.devel (Tue, 27 Oct 2015
> 22:52:27 +0100):
>>> On Tue, Oct 27, 2015 at 9:58 PM, Andreas Cadhalpun
 diff --git a/libavformat/libavformat.v b/libavformat/libavformat.v
 index e90aef7..a00a309 100644
 --- a/libavformat/libavformat.v
 +++ b/libavformat/libavformat.v
 @@ -10,9 +10,6 @@ LIBAVFORMAT_$MAJOR {
 -ffurl_read_complete;
 -ffurl_seek;
 -ffurl_size;
>>
>> OK. I'll wait a bit to see if someone else wants to comment on this patch.
> 
> There is a PHP extension that uses ffurl_seek and ffurl_read_complete:
> https://github.com/chung-leong/av/blob/master/faststart.c#L76

This extension is apparently not developed anymore: the last commit was about
two years ago.

> These functions are also documented at
> http://www.ffmpeg.org/doxygen/trunk/avio_8c.html

This documentation contains every (public or private) function of ffmpeg.

> How should an external developer know what functions are publically
> available?

Publicly available functions are declared in installed headers, which
ffurl_seek and ffurl_read have never been.
Whoever wrote this extension must have been aware of the fact that these
are private functions as they are explicitly declared in the code [1]:
// from libavformat/url.h

typedef struct URLContext URLContext;
int ffurl_read_complete(URLContext *h, unsigned char *buf, int size);
int ffurl_write(URLContext *h, const unsigned char *buf, int size);
int64_t ffurl_seek(URLContext *h, int64_t pos, int whence);

This shouldn't have been done in the first place...

Best regards,
Andreas


1: https://github.com/chung-leong/av/blob/master/faststart.c#L51
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] avformat: stop exporting ffurl_read_complete, ffurl_seek and ffurl_size

2015-10-29 Thread Andreas Cadhalpun
On 27.10.2015 22:52, Andreas Cadhalpun wrote:
> On 27.10.2015 22:04, Hendrik Leppkes wrote:
>> On Tue, Oct 27, 2015 at 9:58 PM, Andreas Cadhalpun
>>  wrote:
>>> They are not in public headers and not used outside of libavformat.
>>>
>>> Signed-off-by: Andreas Cadhalpun 
>>> ---
>>>
>>> It's been a year since the last attempt to remove these [1].
>>> Bad enough that ffserver still uses private functions, but keeping even
>>> more in the ABI for some unnamed third party applications is just wrong.
>>>
>>> 1: https://ffmpeg.org/pipermail/ffmpeg-devel/2014-August/160951.html
>>>
>>> ---
>>>  libavformat/libavformat.v | 3 ---
>>>  1 file changed, 3 deletions(-)
>>>
>>> diff --git a/libavformat/libavformat.v b/libavformat/libavformat.v
>>> index e90aef7..a00a309 100644
>>> --- a/libavformat/libavformat.v
>>> +++ b/libavformat/libavformat.v
>>> @@ -10,9 +10,6 @@ LIBAVFORMAT_$MAJOR {
>>>  ffio_set_buf_size;
>>>  ffurl_close;
>>>  ffurl_open;
>>> -ffurl_read_complete;
>>> -ffurl_seek;
>>> -ffurl_size;
>>>  ffurl_write;
>>>  #those are deprecated, remove on next bump
>>>  url_feof;
>>> --
>>> 2.6.1
>>>
>>
>> Fine with me.
> 
> OK. I'll wait a bit to see if someone else wants to comment on this patch.

Seems not the case, so pushed now.

Best regards,
Andreas

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


[FFmpeg-devel] [PATCH] avformat: stop exporting ffurl_read_complete, ffurl_seek and ffurl_size

2015-10-27 Thread Andreas Cadhalpun
They are not in public headers and not used outside of libavformat.

Signed-off-by: Andreas Cadhalpun 
---

It's been a year since the last attempt to remove these [1].
Bad enough that ffserver still uses private functions, but keeping even
more in the ABI for some unnamed third party applications is just wrong.

1: https://ffmpeg.org/pipermail/ffmpeg-devel/2014-August/160951.html

---
 libavformat/libavformat.v | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/libavformat/libavformat.v b/libavformat/libavformat.v
index e90aef7..a00a309 100644
--- a/libavformat/libavformat.v
+++ b/libavformat/libavformat.v
@@ -10,9 +10,6 @@ LIBAVFORMAT_$MAJOR {
 ffio_set_buf_size;
 ffurl_close;
 ffurl_open;
-ffurl_read_complete;
-ffurl_seek;
-ffurl_size;
 ffurl_write;
 #those are deprecated, remove on next bump
 url_feof;
-- 
2.6.1

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


Re: [FFmpeg-devel] [PATCH] avformat: stop exporting ffurl_read_complete, ffurl_seek and ffurl_size

2015-10-27 Thread Andreas Cadhalpun
On 27.10.2015 22:04, Hendrik Leppkes wrote:
> On Tue, Oct 27, 2015 at 9:58 PM, Andreas Cadhalpun
>  wrote:
>> They are not in public headers and not used outside of libavformat.
>>
>> Signed-off-by: Andreas Cadhalpun 
>> ---
>>
>> It's been a year since the last attempt to remove these [1].
>> Bad enough that ffserver still uses private functions, but keeping even
>> more in the ABI for some unnamed third party applications is just wrong.
>>
>> 1: https://ffmpeg.org/pipermail/ffmpeg-devel/2014-August/160951.html
>>
>> ---
>>  libavformat/libavformat.v | 3 ---
>>  1 file changed, 3 deletions(-)
>>
>> diff --git a/libavformat/libavformat.v b/libavformat/libavformat.v
>> index e90aef7..a00a309 100644
>> --- a/libavformat/libavformat.v
>> +++ b/libavformat/libavformat.v
>> @@ -10,9 +10,6 @@ LIBAVFORMAT_$MAJOR {
>>  ffio_set_buf_size;
>>  ffurl_close;
>>  ffurl_open;
>> -ffurl_read_complete;
>> -ffurl_seek;
>> -ffurl_size;
>>  ffurl_write;
>>  #those are deprecated, remove on next bump
>>  url_feof;
>> --
>> 2.6.1
>>
> 
> Fine with me.

OK. I'll wait a bit to see if someone else wants to comment on this patch.

> I don't understand why ffserver uses any of those instead of simply
> using avio functions though.

The ffurl_* functions could probably be replaced with avio_* functions,
it's just that nobody wrote a patch for that, yet.

Best regards,
Andreas
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] avformat: stop exporting ffurl_read_complete, ffurl_seek and ffurl_size

2015-10-27 Thread Hendrik Leppkes
On Tue, Oct 27, 2015 at 9:58 PM, Andreas Cadhalpun
 wrote:
> They are not in public headers and not used outside of libavformat.
>
> Signed-off-by: Andreas Cadhalpun 
> ---
>
> It's been a year since the last attempt to remove these [1].
> Bad enough that ffserver still uses private functions, but keeping even
> more in the ABI for some unnamed third party applications is just wrong.
>
> 1: https://ffmpeg.org/pipermail/ffmpeg-devel/2014-August/160951.html
>
> ---
>  libavformat/libavformat.v | 3 ---
>  1 file changed, 3 deletions(-)
>
> diff --git a/libavformat/libavformat.v b/libavformat/libavformat.v
> index e90aef7..a00a309 100644
> --- a/libavformat/libavformat.v
> +++ b/libavformat/libavformat.v
> @@ -10,9 +10,6 @@ LIBAVFORMAT_$MAJOR {
>  ffio_set_buf_size;
>  ffurl_close;
>  ffurl_open;
> -ffurl_read_complete;
> -ffurl_seek;
> -ffurl_size;
>  ffurl_write;
>  #those are deprecated, remove on next bump
>  url_feof;
> --
> 2.6.1
>

Fine with me.
I don't understand why ffserver uses any of those instead of simply
using avio functions though.

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