[FFmpeg-devel] [PATCH v3 0/8] add fd protocol

"zhilizhao(赵志立)" quinkblack at foxmail.com
Thu Jan 12 09:29:12 EET 2023



> On Jan 12, 2023, at 09:26, Xiang, Haihao <haihao.xiang-at-intel.com at ffmpeg.org> wrote:
> 
> On Wo, 2023-01-11 at 17:10 +0800, zhilizhao(赵志立) wrote:
>>> On Jan 11, 2023, at 16:52, Paul B Mahol <onemda at gmail.com> wrote:
>>> 
>>> On 1/11/23, "zhilizhao(赵志立)" <quinkblack at foxmail.com> wrote:
>>>> 
>>>>> On Jan 11, 2023, at 15:53, Xiang, Haihao
>>>>> <haihao.xiang-at-intel.com at ffmpeg.org> wrote:
>>>>> 
>>>>> On Wo, 2023-01-11 at 11:18 +0800, zhilizhao(赵志立) wrote:
>>>>>>> On Jan 9, 2023, at 11:17, zhilizhao(赵志立) <quinkblack at foxmail.com>
>>>>>>> wrote:
>>>>>>> 
>>>>>>>> On Dec 15, 2022, at 01:10, Zhao Zhili <quinkblack at foxmail.com>
>>>>>>>> wrote:
>>>>>>>> 
>>>>>>>> From: Zhao Zhili <zhilizhao at tencent.com>
>>>>>>>> 
>>>>>>>> v2:
>>>>>>>> 1. Forbid pass file descriptor via fd:{num}, instead of -fd option
>>>>>>>> 2. Set CLOEXEC
>>>>>>>> 3. Prefer fd over pipe for fftools
>>>>>>>> 
>>>>>>>> v1: dup file descriptor
>>>>>>>> 
>>>>>>>> Zhao Zhili (8):
>>>>>>>> avformat/file: add fd option for pipe
>>>>>>>> avformat/file: reindent after the previous commit
>>>>>>>> avformat/file: dup file descriptor for pipe
>>>>>>>> avformat/file: add fd protocol
>>>>>>>> fftools/ffmpeg_demux: disable stdin interaction for fd protocol
>>>>>>>> fftools/ffplay: prefer fd over pipe for seek support
>>>>>>>> fftools/ffprobe: prefer fd over pipe for seek support
>>>>>>>> fftools/ffmpeg_demux: prefer fd over pipe for seek support
>>>>>>>> 
>>>>>>>> doc/protocols.texi      |  31 +++++++-
>>>>>>>> fftools/ffmpeg_demux.c  |   3 +-
>>>>>>>> fftools/ffplay.c        |   2 +-
>>>>>>>> fftools/ffprobe.c       |   4 +-
>>>>>>>> libavformat/Makefile    |   1 +
>>>>>>>> libavformat/file.c      | 152 +++++++++++++++++++++++++++++++-----
>>>>>>>> ----
>>>>>>>> libavformat/protocols.c |   1 +
>>>>>>>> libavformat/version.h   |   4 +-
>>>>>>>> 8 files changed, 156 insertions(+), 42 deletions(-)
>>>>>>> 
>>>>>>> Will apply soon unless there are objections.
>>>>>> 
>>>>>> Pushed.
>>>>> 
>>>>> It caused link error on Windows
>>>>> 
>>>>> INFO  - LD    libavformat/avformat-59.dll
>>>>> INFO  -    Creating library libavformat/avformat.lib and object
>>>>> libavformat/avformat.exp
>>>>> INFO  - file.o : error LNK2019: unresolved external symbol S_ISREG
>>>>> referenced in
>>>>> function fd_open
>>>>> INFO  - file.o : error LNK2019: unresolved external symbol S_ISBLK
>>>>> referenced in
>>>>> function fd_open
>>>>> INFO  - libavformat\avformat-59.dll : fatal error LNK1120: 2 unresolved
>>>>> externals
>>>> 
>>>> Sorry for the break, I’m trying to figure out how to make it compatible
>>>> with Windows.
>>> 
>>> Is this even portable?
>> 
>> fstat and the macros are defined by POSIX. Windows doesn’t provide S_ISREG
>> or S_ISBLK, but it does provide S_IFREG. So the compatability macro S_ISREG()
>> should work. For S_ISBLK(), it’s always false on Windows which shouldn’t be
>> an issue.
>> 
>> http://ffmpeg.org/pipermail/ffmpeg-devel/2023-January/305545.html
> 
> Thanks for your quick fix, the error went away after applying this patch.

Thanks for the report and test, pushed as e30bf5acee1ae07724196c44b6b457cd9f8c94f3

> 
> - Haihao
> 
>> 
>>>>> Thanks
>>>>> Haihao
>>>>> 
>>>>>>> _______________________________________________
>>>>>>> ffmpeg-devel mailing list
>>>>>>> ffmpeg-devel at ffmpeg.org
>>>>>>> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>>>>>> 
>>>>>>> To unsubscribe, visit link above, or email
>>>>>>> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>>>>>> 
>>>>>> _______________________________________________
>>>>>> ffmpeg-devel mailing list
>>>>>> ffmpeg-devel at ffmpeg.org
>>>>>> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>>>>> 
>>>>>> To unsubscribe, visit link above, or email
>>>>>> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>>>>> _______________________________________________
>>>>> ffmpeg-devel mailing list
>>>>> ffmpeg-devel at ffmpeg.org
>>>>> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>>>> 
>>>>> To unsubscribe, visit link above, or email
>>>>> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>>>> 
>>>> _______________________________________________
>>>> ffmpeg-devel mailing list
>>>> ffmpeg-devel at ffmpeg.org
>>>> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>>> 
>>>> To unsubscribe, visit link above, or email
>>>> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>>>> 
>>> _______________________________________________
>>> ffmpeg-devel mailing list
>>> ffmpeg-devel at ffmpeg.org
>>> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>> 
>>> To unsubscribe, visit link above, or email
>>> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>> 
>> _______________________________________________
>> ffmpeg-devel mailing list
>> ffmpeg-devel at ffmpeg.org
>> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>> 
>> To unsubscribe, visit link above, or email
>> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".



More information about the ffmpeg-devel mailing list