[FFmpeg-devel] [PATCH] libavformat/hls: add support for SAMPLE-AES decryption in HLS demuxer
Nachiket Tarate
nachiket.tarate at outlook.com
Mon Oct 19 11:10:35 EEST 2020
________________________________________
From: ffmpeg-devel <ffmpeg-devel-bounces at ffmpeg.org> on behalf of Steven Liu <lingjiujianke at gmail.com>
Sent: Monday, October 19, 2020 7:43 AM
To: FFmpeg development discussions and patches
Subject: Re: [FFmpeg-devel] [PATCH] libavformat/hls: add support for SAMPLE-AES decryption in HLS demuxer
Nachiket Tarate <nachiket.tarate at outlook.com> 于2020年10月18日周日 上午8:07写道:
>
> _______________________________________
> From: ffmpeg-devel <ffmpeg-devel-bounces at ffmpeg.org> on behalf of Michael Niedermayer <michael at niedermayer.cc>
> Sent: Thursday, October 15, 2020 11:35 PM
> To: FFmpeg development discussions and patches
> Subject: Re: [FFmpeg-devel] [PATCH] libavformat/hls: add support for SAMPLE-AES decryption in HLS demuxer
>
> On Thu, Oct 15, 2020 at 10:15:13PM +0530, Nachiket Tarate wrote:
> > Apple HTTP Live Streaming Sample Encryption:
> >
> > https://developer.apple.com/library/ios/documentation/AudioVideo/Conceptual/HLS_Sample_Encryption
> >
> > Signed-off-by: Nachiket Tarate <nachiket.tarate at outlook.com>
> > ---
> > libavformat/Makefile | 2 +-
> > libavformat/hls.c | 93 ++++++-
> > libavformat/hls_sample_aes.c | 497 +++++++++++++++++++++++++++++++++++
> > libavformat/hls_sample_aes.h | 64 +++++
> > libavformat/mpegts.c | 15 ++
> > 5 files changed, 657 insertions(+), 14 deletions(-)
> > create mode 100644 libavformat/hls_sample_aes.c
> > create mode 100644 libavformat/hls_sample_aes.h
>
> This seems to break fate (segfault)
> I guess patchwork will notice it too but as i already tested and noticed ...
>
> --- ./tests/ref/fate/segment-mp4-to-ts 2020-10-10 18:08:06.500253003 +0200
> +++ tests/data/fate/segment-mp4-to-ts 2020-10-15 20:03:24.586303460 +0200
> @@ -128,5 +128,3 @@
> 0, 428400, 435600, 3600, 156, 0xd2c3406c, F=0x0, S=1, 1, 0x00e000e0
> 0, 432000, 439200, 3600, 330, 0x150d9b60, F=0x0, S=1, 1, 0x00e000e0
> 0, 435600, 446400, 3600, 324, 0x558194ee, F=0x0, S=1, 1, 0x00e000e0
> -0, 439200, 442800, 3600, 191, 0x108e54d1, F=0x0, S=1, 1, 0x00e000e0
> -0, 442800, 450000, 3600, 233, 0xac5b6486, F=0x0
> Test segment-mp4-to-ts failed. Look at tests/data/fate/segment-mp4-to-ts.err for details.
> tests/Makefile:255: recipe for target 'fate-segment-mp4-to-ts' failed
> make: *** [fate-segment-mp4-to-ts] Error 139
>
>
> I ran FATE with samples again but I didn't get segfault. Can you please help me to reproduce it ?
https://patchwork.ffmpeg.org/project/ffmpeg/patch/SG2PR01MB269339627C977C841E26B05DF2020@SG2PR01MB2693.apcprd01.prod.exchangelabs.com/
fate failed message here.
TEST segment-mp4-to-ts
--- /Users/liuqi/multimedia/upstream_ffmpeg/ffmpeg/tests/ref/fate/segment-mp4-to-ts
2020-10-19 09:24:15.000000000 +0800
+++ tests/data/fate/segment-mp4-to-ts 2020-10-19 10:09:43.000000000 +0800
@@ -128,5 +128,3 @@
0, 428400, 435600, 3600, 156, 0xd2c3406c, F=0x0,
S=1, 1, 0x00e000e0
0, 432000, 439200, 3600, 330, 0x150d9b60, F=0x0,
S=1, 1, 0x00e000e0
0, 435600, 446400, 3600, 324, 0x558194ee, F=0x0,
S=1, 1, 0x00e000e0
-0, 439200, 442800, 3600, 191, 0x108e54d1, F=0x0,
S=1, 1, 0x00e000e0
-0, 442800, 450000, 3600, 233, 0xac5b6486, F=0x0
Test segment-mp4-to-ts failed. Look at
tests/data/fate/segment-mp4-to-ts.err for details.
make: *** [fate-segment-mp4-to-ts] Error 134
(base) liuqi05:ufbuild liuqi$ history |grep make | tail -n 5
318 make -j6
319 make fate-rsync
320 make fate
(base) liuqi05:ufbuild liuqi$ ./ffmpeg
ffmpeg version N-99556-gf7e2f090ed Copyright (c) 2000-2020 the FFmpeg developers
built with Apple clang version 12.0.0 (clang-1200.0.32.2)
configuration: --cc=clang --quiet --enable-htmlpages
--enable-libx264 --enable-libxml2 --enable-gpl --extra-ldflags='-O0
-g3 -fsanitize=address -Wno-error -fPIC -I/usr/local/include'
--extra-ldflags='-O0 -g3 -fsanitize=address -Wno-error -fPIC
-L/usr/local/lib' --enable-libfreetype --enable-fontconfig
--enable-libspeex --enable-libopus --enable-libzmq --enable-libx265
--enable-libass --enable-videotoolbox --disable-optimizations
--enable-audiotoolbox --enable-opengl --disable-stripping
--samples=../../fate-suite/
need use samples --samples=../../fate-suite/
and make fate-rsync
after above two step, you can make fate reproduce it.
Actually, I did
make fate-rsync SAMPLES=fate-suite/
make fate SAMPLES=fate-suite/
It is same.
But segmentation fault didn't occur while executing segment-mp4-to-ts.
Any idea ?
--
Best Regards,
Nachiket Tarate
More information about the ffmpeg-devel
mailing list