[FFmpeg-devel] [PATCH] avformat/hls: copy rw_timeout from parent to child AVIOContexts.

2018-04-02 Thread rshaffer
From: Richard Shaffer The rw_timeout option is currently not applied when opening media playlist, segment, or encryption key URLs. This can cause the HLS demuxer to block indefinitely, even when the rw_timeout option has been specified. This change simply enables carrying over the rw_timeout opti

[FFmpeg-devel] [PATCH] avformat/hls: clean up duplicate option fields

2018-04-10 Thread rshaffer
From: Richard Shaffer The HLSContext struct contains fields which duplicate the data stored in the avio_opts field. This change removes those fields in favor of avio_opts, and updates the code accordingly. --- libavformat/hls.c | 74 +++ 1 file

[FFmpeg-devel] [PATCH] libavformat/http: Fix memory leak in get_cookies.

2018-04-13 Thread rshaffer
From: Richard Shaffer --- libavformat/http.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavformat/http.c b/libavformat/http.c index 983034f083..b4a1919f24 100644 --- a/libavformat/http.c +++ b/libavformat/http.c @@ -1103,6 +1103,7 @@ static int get_cookies(HTTPContext *s, char **cooki

[FFmpeg-devel] [PATCH v2] avformat/hls: clean up duplicate option fields

2018-04-13 Thread rshaffer
From: Richard Shaffer The HLSContext struct contains fields which duplicate the data stored in the avio_opts field. This change removes those fields in favor of avio_opts, and updates the code accordingly. --- The original patch caused the buffer pointed to by new_cookies in open_url to be leaked

[FFmpeg-devel] [PATCH] libavformat/http: Refactor and fix additional leaks in get_cookies.

2018-04-17 Thread rshaffer
From: Richard Shaffer This refactors get_cookies to simplify some code paths, specifically for skipping logic in the while loop or exiting it. It also simplifies the logic for appending additional values to *cookies by replacing strlen/malloc/snprintf with one call av_asnprintf. This refactor fi

[FFmpeg-devel] [PATCH v2] libavformat/http: Refactor and fix additional leaks in get_cookies.

2018-04-19 Thread rshaffer
From: Richard Shaffer This refactors get_cookies to simplify some code paths, specifically for skipping logic in the while loop or exiting it. It also simplifies the logic for appending additional values to *cookies by replacing strlen/malloc/snprintf with one call av_asnprintf. This refactor fi

[FFmpeg-devel] [PATCH 3/3] http: fix memory leak in parse_cookie.

2018-01-11 Thread rshaffer
From: Richard Shaffer This is my first time contributing. The problem and the solution seem pretty straightforward, but if I'm missing something, please do point me in the right direction. Thanks, -Richard --- libavformat/http.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavforma

[FFmpeg-devel] [PATCH] avformat: add option to parse/store ID3 PRIV tags in metadata.

2018-01-12 Thread rshaffer
From: Richard Shaffer Enables getting access to ID3 PRIV tags from the command-line or metadata API when demuxing. The PRIV owner is stored as the metadata key, and the data is stored as the metadata value. As PRIV tags may contain arbitrary data, non- printable characters, including NULL bytes,

[FFmpeg-devel] [PATCH] avformat: add option to parse/store ID3 PRIV tags in metadata.

2018-01-17 Thread rshaffer
From: Richard Shaffer Enables getting access to ID3 PRIV tags from the command-line or metadata API when demuxing. The PRIV owner is stored as the metadata key prepended with "id3v2_priv.", and the data is stored as the metadata value. As PRIV tags may contain arbitrary data, non-printable charac

[FFmpeg-devel] [PATCH] avformat: add option to parse/store ID3 PRIV tags in metadata.

2018-01-17 Thread rshaffer
From: Richard Shaffer Enables getting access to ID3 PRIV tags from the command-line or metadata API when demuxing. The PRIV owner is stored as the metadata key prepended with "id3v2_priv.", and the data is stored as the metadata value. As PRIV tags may contain arbitrary data, non-printable charac

[FFmpeg-devel] [PATCH] avformat: add option to parse/store ID3 PRIV tags in metadata.

2018-01-22 Thread rshaffer
From: Richard Shaffer Enables getting access to ID3 PRIV tags from the command-line or metadata API when demuxing. The PRIV owner is stored as the metadata key prepended with "id3v2_priv.", and the data is stored as the metadata value. As PRIV tags may contain arbitrary data, non-printable charac

[FFmpeg-devel] [PATCH] avformat: add option to parse/store ID3 PRIV tags in metadata.

2018-01-23 Thread rshaffer
From: Richard Shaffer Enables getting access to ID3 PRIV tags from the command-line or metadata API when demuxing. The PRIV owner is stored as the metadata key prepended with "id3v2_priv.", and the data is stored as the metadata value. As PRIV tags may contain arbitrary data, non-printable charac

[FFmpeg-devel] [PATCH] fate: add id3v2 tests

2018-01-23 Thread rshaffer
From: Richard Shaffer Adds basic unit tests for parsing and writing ID3v2 tags. --- This requires the patch to "add option to parse/store ID3 PRIV tags in metadata." libavformat/Makefile | 3 +- libavformat/tests/.gitignore | 1 + libavformat/tests/id3v2.c| 229 +

[FFmpeg-devel] [PATCH] fate: add id3v2 test

2018-01-27 Thread rshaffer
From: Richard Shaffer Adds basic unit test for parsing ID3v2 tags. --- This is the second time I'm attempting to send it. Sent it through an email client before, and it seems to have removed the leading white space. tests/Makefile| 1 + tests/fate-run.sh | 4 tests/fate

[FFmpeg-devel] [PATCH] libavformat/aac: Parse ID3 tags between ADTS frames.

2018-02-01 Thread rshaffer
From: Richard Shaffer While rare, ID3 tags may be inserted between ADTS frames. This change enables parsing them and setting the appropriate metadata updated event flag. --- I have encountered a streaming provider that I must support which does this. There are indications that it isn't totally of

[FFmpeg-devel] [PATCH] libavformat/hls: Support metadata updates from subdemuxers

2018-02-01 Thread rshaffer
From: Richard Shaffer If a subdemuxer has the updated metadata event flag set, the metadata is copied to the corresponding stream. The flag is cleared on the subdemuxer and the appropriate event flag is set on the stream. --- This is semi-related to a patch I recently sent to enable parsing ID3 t

[FFmpeg-devel] [PATCH] libavformat/hls: Support metadata updates from subdemuxers

2018-02-02 Thread rshaffer
From: Richard Shaffer If a subdemuxer has the updated metadata event flag set, the metadata is copied to the corresponding stream. The flag is cleared on the subdemuxer and the appropriate event flag is set on the stream. --- This is iteration #2. In this version, we don't try to copy metadata f

[FFmpeg-devel] [PATCH] fate: add aac id3v2 demux test

2018-02-03 Thread rshaffer
From: Richard Shaffer A basic test for demuxing raw AAC (ADTS) with ID3v2 tags. --- This is related to the patch 'libavformat/aac: Parse ID3 tags between ADTS frames', and will fail without it. The test file contains an ID3 tag at the beginning as well as a second tag between frames. While the te

[FFmpeg-devel] [PATCH] avformat/hls: Properly expose intercepted ID3 tags to the API.

2018-05-17 Thread rshaffer
From: Richard Shaffer The HLS demuxer will process any ID3 tags at the beginning of a segment in order to obtain timestamp data. However, when this data was parsed on a second or subsequent segment, the updated metadata would be discarded. This change preserves the data and also sets the AVSTREAM

[FFmpeg-devel] [PATCH v2] avformat/hls: Properly expose intercepted ID3 tags to the API.

2018-05-18 Thread rshaffer
From: Richard Shaffer The HLS demuxer will process any ID3 tags at the beginning of a segment in order to obtain timestamp data. However, when this data was parsed on a second or subsequent segment, the updated metadata would be discarded. This change preserves the data and also sets the AVSTREAM