Mailing List Archive

[MythTV/mythtv] b4dd9f: mpegts-mythtv.c: harmonize includes
Branch: refs/heads/devel/ffmpeg-resync
Home: https://github.com/MythTV/mythtv
Commit: b4dd9f8a042ee1ca10e2d4d0ca548523315cf79e
https://github.com/MythTV/mythtv/commit/b4dd9f8a042ee1ca10e2d4d0ca548523315cf79e
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize includes


Commit: 014ba5584d20e1bc113a8f73b58a1a4e3e572b8f
https://github.com/MythTV/mythtv/commit/014ba5584d20e1bc113a8f73b58a1a4e3e572b8f
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonization part 1 (mostly whitespace)

No functional change.


Commit: 84e53f9f6ca718b7082803a425ad9d33d13ddc27
https://github.com/MythTV/mythtv/commit/84e53f9f6ca718b7082803a425ad9d33d13ddc27
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize MpegTSContext

Primarily whitespace changes and extra padding from new unused members.

Now a superset of mpegts.c's.

The only functional change (aside from the padding) is the change of
pcr_incr from int to int64_t.


Commit: 66de0d124a37c439a1041476c10e0fac46c725f7
https://github.com/MythTV/mythtv/commit/66de0d124a37c439a1041476c10e0fac46c725f7
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: USE_SYNCPOINT_SEARCH is never defined

so remove the conditional compilation.


Commit: 25d0b450cd542080ce00624db5b0c47438c13e7c
https://github.com/MythTV/mythtv/commit/25d0b450cd542080ce00624db5b0c47438c13e7c
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize AVOptions, AVClasses, and AVInputFormats

The new options probably don't do anything yet.


Commit: 09bcbcf334ec382d6ebdc7c50814564d42afe622
https://github.com/MythTV/mythtv/commit/09bcbcf334ec382d6ebdc7c50814564d42afe622
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: move MythTV only functions to first use

add_section_stream()
mpegts_push_section() [forward declared prior to definition already]
mpegts_find_stream_type_pmt()


Commit: 1bc94cb70e6cab7a9df3b5292e20c74482ddc9f2
https://github.com/MythTV/mythtv/commit/1bc94cb70e6cab7a9df3b5292e20c74482ddc9f2
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize functions 1a

now identical to FFmpeg:
struct SectionHeader (no change)
skip_identical (new unused function)
get8
get16
getstr8
parse_section_header


Commit: 2f8146af993e842a02e9f7d50631973518dcaa97
https://github.com/MythTV/mythtv/commit/2f8146af993e842a02e9f7d50631973518dcaa97
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize struct StreamType

StreamType[]s:
ISO_types : superset
HDMV_types: identical
SCTE_types: identical
MISC_types: superset
REGD_types: identical
METADATA_types: identical
DESC_types: superset
COMPONENT_TAG_types: MythTV only


Commit: bd4e6d871f0059e02ea63e38422f91e65db7d598
https://github.com/MythTV/mythtv/commit/bd4e6d871f0059e02ea63e38422f91e65db7d598
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize functions 1b

now identical to FFmpeg:
mpegts_find_stream_type
mpegts_set_stream_info


Commit: 93d26e1ec09427795366dccf8c2e373e82108064
https://github.com/MythTV/mythtv/commit/93d26e1ec09427795366dccf8c2e373e82108064
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize functions 1c

Now identical to FFmpeg's:
new_data_packet
eit_cb
sdt_cb
mpegts_free
mpegts_read_close
avpriv_mpegts_parse_open
avpriv_mpegts_parse_close


Commit: b126613157ba747c9a11c08efab4c21a028b44f3
https://github.com/MythTV/mythtv/commit/b126613157ba747c9a11c08efab4c21a028b44f3
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize functions 1d

parse_pcr


Commit: 3da0c4ac4cadd24be0f3fe81d3a859abd8203334
https://github.com/MythTV/mythtv/commit/3da0c4ac4cadd24be0f3fe81d3a859abd8203334
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize struct PESContext

also now identical to FFmpeg's:
mpegts_close_filter
reset_pes_packet_state
new_pes_packet
get_ts64
read_sl_header
mpegts_push_data

handle_packets (part 1, read_packet, handle_packet,
and finished_reading_packet have been left for later)


Commit: b9249e34b1d8baf2ec8e21fad97c3a1d5438526f
https://github.com/MythTV/mythtv/commit/b9249e34b1d8baf2ec8e21fad97c3a1d5438526f
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize functions 1e

Now identical to FFmpeg's:
analyze
get_packet_size
mpegts_probe
seek_back

mpegts_read_header (heavy MythTV modification)

needs
read_packet
finished_reading_packet
handle_packets

which required:
mpegts_resync
handle_packet (modified, signature only)
mpegts_raw_read_packet

which required:
avpriv_mpegts_parse_packet


Commit: 8d374fe7d1ed7d973a58bf92632a2e83399966d9
https://github.com/MythTV/mythtv/commit/8d374fe7d1ed7d973a58bf92632a2e83399966d9
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize functions 1f add_pes_stream

(some residual modification)


Commit: dcad635045a257203a332fceeccc32b49ee5773a
https://github.com/MythTV/mythtv/commit/dcad635045a257203a332fceeccc32b49ee5773a
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize functions 1g mpegts_get_dts

partial harmonize, pos47 -> pos47_full change not done


Commit: b0776d5eac9de32b3882fd542b2c36124c24874d
https://github.com/MythTV/mythtv/commit/b0776d5eac9de32b3882fd542b2c36124c24874d
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize functions 1h mpegts_read_packet (modified)

The line that was causing MHEG to not work is from:
mpegts: Make sure we don't return uninitialized packets
https://github.com/FFmpeg/FFmpeg/commit/df8aa4598c7cc1c2f863f6fc6b2d4b3e6dc7345e

I will test after further harmonization, but it looks like handle_packets
or something it calls will likely need additional modification.


Commit: 31d93b1c71953d5209efeb61b3a93253d487a4ed
https://github.com/MythTV/mythtv/commit/31d93b1c71953d5209efeb61b3a93253d487a4ed
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize functions 1i ts->pos47 changes

handle_packet (modified)

write_section_data (modified, change only to signature):
Harmonization doesn't break MHEG but it doesn't start as early,
so I have only modified the signature.

Now identical to FFmpeg's:
mpegts_get_dts
mpegts_get_pcr


Commit: c36cf62e681614966e2d19328881d1f592646746
https://github.com/MythTV/mythtv/commit/c36cf62e681614966e2d19328881d1f592646746
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize mpegts_read_packet

in order for MHEG to work, mpegts_push_section needs to check for
pkt->size == -1 instead of the former 0.


Commit: c51a752e12ef7f9a4e6a93bf4fe692ce0f9e0b7e
https://github.com/MythTV/mythtv/commit/c51a752e12ef7f9a4e6a93bf4fe692ce0f9e0b7e
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize functions part 3 (MP4)

Mostly whitespace changes.

Now identical to FFmpeg's:
struct MP4DescrParseContext
init_MP4DescrParseContext
update_offsets
parse_mp4_descr_arr
parse_MP4IODescrTag
parse_MP4ODescrTag
parse_MP4ESDescrTag
parse_MP4DecConfigDescrTag
parse_MP4SLDescrTag
parse_mp4_descr
mp4_read_iods
mp4_read_od
m4sl_cb


Commit: 4d6574dc97bcdfaf23697f92fd794f5b8cbc06db
https://github.com/MythTV/mythtv/commit/4d6574dc97bcdfaf23697f92fd794f5b8cbc06db
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: copy scte_data_cb() and opus_...[] arrays


Commit: 452f21764ec2c9d411544cf6657cd8e4e68e2bfd
https://github.com/MythTV/mythtv/commit/452f21764ec2c9d411544cf6657cd8e4e68e2bfd
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: rename clear_program() to clear_program_pid()

FFmpeg has a function with the same name that takes different parameters.


Commit: ba192b304d7bdd2ed001ffda99aaa9a970687173
https://github.com/MythTV/mythtv/commit/ba192b304d7bdd2ed001ffda99aaa9a970687173
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: move various functions no longer in upstream

No functional change, only moves.


Commit: 0f2bfb0295f352cdf62d11212696370ce39b7c9f
https://github.com/MythTV/mythtv/commit/0f2bfb0295f352cdf62d11212696370ce39b7c9f
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize functions part 4

No functional change, either new functions or whitespace changes.

Now identical to FFmpeg's:
get_program
clear_avprogram
clear_program
clear_programs
add_program
add_pid_to_program
update_av_program_info
discard_pid


Commit: 8b92622cde1cbce9cc1b568fa3aedfa70ca6c6b8
https://github.com/MythTV/mythtv/commit/8b92622cde1cbce9cc1b568fa3aedfa70ca6c6b8
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: replace last of deprecated packet API

Should be no functional change.


Commit: c827ffbb60d9bf2a55a0e30570372161f2df9c98
https://github.com/MythTV/mythtv/commit/c827ffbb60d9bf2a55a0e30570372161f2df9c98
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: MpegTSContext: remove now unused element

Replaced by pos47_full in code copied from mpegts.c.


Commit: 392e1919d0aed5d13cdeed80afe434c321456fac
https://github.com/MythTV/mythtv/commit/392e1919d0aed5d13cdeed80afe434c321456fac
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize functions part 5

There should be no functional change.

Now identical to FFmpeg's:
mpegts_open_filter
mpegts_open_section_filter (minor modification)
mpegts_open_pes_filter
mpegts_open_pcr_filter
mpegts_close_filter


Commit: ee23051d8f73a326d1e1ea18ab83e127bf488e22
https://github.com/MythTV/mythtv/commit/ee23051d8f73a326d1e1ea18ab83e127bf488e22
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: remove shim av_set_pts_info()

renamed upstream to avpriv_set_pts_info().

No functional change.


Commit: 57fee85d844f81beea9593bb64d80e35176bc265
https://github.com/MythTV/mythtv/commit/57fee85d844f81beea9593bb64d80e35176bc265
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
libavformat/mpegts-mythtv.c: av_mpegts_remove_stream() #if 0 the entire if else ladder

This was from https://github.com/MythTV/mythtv/commit/9cb02dee588127240fb8a843ed92347a33c7e0e1

when it was still part of utils.c.


Commit: 42afbbd5dda1539731735d625889a412c060880d
https://github.com/MythTV/mythtv/commit/42afbbd5dda1539731735d625889a412c060880d
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: av_mpegts_remove_stream() silence warning

No functional change, but AVStream.codec was removed in FFmpeg 5.0.

This should enable it to compile with FFmpeg 5.0, since it will then be
not compiled.


Commit: 736131a4af85e1879d202c39f55723495f22301d
https://github.com/MythTV/mythtv/commit/736131a4af85e1879d202c39f55723495f22301d
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: inline av_new_stream()

new_section_av_stream() unconditionally dereferences sect->st,
so I have removed that check for setting AVStream.id.


Commit: c2340b618cc17cfd6cc3a32d81ae42b256dd13e4
https://github.com/MythTV/mythtv/commit/c2340b618cc17cfd6cc3a32d81ae42b256dd13e4
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: preprocess MACRO FF_ALLOCZ_OR_GOTO


Commit: 04ab6d3228456015d618a6056d31a04d36e09a6c
https://github.com/MythTV/mythtv/commit/04ab6d3228456015d618a6056d31a04d36e09a6c
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: new_section_av_stream() fix memory leak

revealed by preprocessing MACRO FF_ALLOCZ_OR_GOTO

avformat_new_stream() allocates the returned AVStream.


Commit: 39dad1c57638bae0356e5ef9001f6a18fae6e6dd
https://github.com/MythTV/mythtv/commit/39dad1c57638bae0356e5ef9001f6a18fae6e6dd
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: pat_cb() harmonization part 1


Commit: b4f7ad5cf1fef8898d00fc809374f83d7507937e
https://github.com/MythTV/mythtv/commit/b4f7ad5cf1fef8898d00fc809374f83d7507937e
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: add/update comments


Commit: a8b2531fdadc0cc79b326d2da7e303d979453fc5
https://github.com/MythTV/mythtv/commit/a8b2531fdadc0cc79b326d2da7e303d979453fc5
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: reduce forward declarations part 1

No functional change, just moves.


Commit: 495ed9daa6839cef4731dde00e3fcb814067b808
https://github.com/MythTV/mythtv/commit/495ed9daa6839cef4731dde00e3fcb814067b808
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: reduce forward declarations part 2


Commit: 0810f138ffff6c45e828d2ddbe66cb7189f7383a
https://github.com/MythTV/mythtv/commit/0810f138ffff6c45e828d2ddbe66cb7189f7383a
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: reduce forward declarations part 3


Commit: 3aadec861649db3153c42522e8d505e9a58e4eaa
https://github.com/MythTV/mythtv/commit/3aadec861649db3153c42522e8d505e9a58e4eaa
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: remove '#if 0'ed code

AVFormatContext no longer has a member cur_st.


Commit: a3480595bd056200804121553688451e1d48b2cc
https://github.com/MythTV/mythtv/commit/a3480595bd056200804121553688451e1d48b2cc
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: copy functions from mpegts.c

This makes for a better diff:

git diff --no-index --color-moved libavformat/mpegts.c libavformat/mpegts-mythtv.c


Commit: 5b2b6b7345c24c484c73459cbe866036a8bbe96f
https://github.com/MythTV/mythtv/commit/5b2b6b7345c24c484c73459cbe866036a8bbe96f
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: pat_cb() harmonization part 2

The changes are originally from:
https://github.com/MythTV/mythtv/commit/084e3f83557cdd4ba8f86d31173332a1129b1f42
https://github.com/MythTV/mythtv/commit/a1d4d112c3f962a85ddd6248592421171fc8331c

in 2005 and 2006 and referencing
https://code.mythtv.org/trac/ticket/328
https://code.mythtv.org/trac/ticket/1887
, respectively.


Commit: 03bb696ae6572b4dbdc09fe373a8098f183d4199
https://github.com/MythTV/mythtv/commit/03bb696ae6572b4dbdc09fe373a8098f183d4199
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: pat_cb() remove buf

No functional change. Is is a vestigial change that has no effect.


Commit: d064c5597206d9de0aae96ca096067df5f54f975
https://github.com/MythTV/mythtv/commit/d064c5597206d9de0aae96ca096067df5f54f975
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: remove MpegTSContext.pmt_filter

It is identical to pids[req_sid].

It was assigned in pat_cb() and cleared in mpegts_close_filter(),
but these customizations have been removed.


Commit: 6b907cd7468b573291e8611f304c285bf11183e5
https://github.com/MythTV/mythtv/commit/6b907cd7468b573291e8611f304c285bf11183e5
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: remove MpegTSContext.pat_filter

It is identical to pids[PAT_PID].

This filter is never closed: see discard_pid().


Commit: c3ce96d0914b29bbfb9c598b520915f1d6f2b1fa
https://github.com/MythTV/mythtv/commit/c3ce96d0914b29bbfb9c598b520915f1d6f2b1fa
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: mpegts_open_section_filter() remove unnecessary addition

In add_section_stream() it is already closed if open.

pat_cb() only calls if it is not open.

mpegts_read_header() only opens filters for fixed PIDs, so the closing to
reopen is unnecessary. Similarly with avpriv_mpegts_parse_open().


Commit: 1fae12aede217a54f7d23cee1a7c3af144551567
https://github.com/MythTV/mythtv/commit/1fae12aede217a54f7d23cee1a7c3af144551567
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: pat_cb() use AV_LOG_TRACE

From doc/APIchanges:
2015-04-20 - 8e8219e / c253340 - lavu 54.23.100 / 54.12.0 - log.h
Add AV_LOG_TRACE for extremely verbose debugging.

Also use ts->stream (the AVFormatContext) as the context for av_log(), matching
the other calls.


Commit: 9e3c6ef32b75f848ad6170eb342c11ec4ca92c3e
https://github.com/MythTV/mythtv/commit/9e3c6ef32b75f848ad6170eb342c11ec4ca92c3e
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: pmt_cb(): harmonize part 1


Commit: 06d89ffb0ce796a31efe483e8eed41294a2704a0
https://github.com/MythTV/mythtv/commit/06d89ffb0ce796a31efe483e8eed41294a2704a0
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: pmt_cb(): harmonize part 2 (av_log())


Commit: 41a13e99d25eab907d3c6627cd0c718de5eb5fce
https://github.com/MythTV/mythtv/commit/41a13e99d25eab907d3c6627cd0c718de5eb5fce
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: pmt_cb(): harmonize part 3

update_av_program_info() is set_pcr_pid() but also sets
AVProgram.pmt_version = version and has some logging.

add_pid_to_pmt() is equivalent to add_pid_to_program() using get_program()
except add_pid_to_program() scans all the pids to ensure no duplicates.
static void add_pid_to_pmt(MpegTSContext *ts, unsigned int programid, unsigned int pid)
{
struct Program *p = get_program(ts, programid);
add_pid_to_program(p, pid);
}

clear_program() using get_program() resets nb_pids, nb_streams, and pmt_found.
clear_program_pid() just resets nb_pids:
static void clear_program_pid(MpegTSContext *ts, unsigned int programid)
{
struct Program *p = get_program(ts, programid);
if (p)
p->nb_pids = 0;
}

Thus, AVProgram.pmt_version is now set, and prg now has two pids:
ts->current_pid (new) and pcr_pid. prg now also has nb_streams and
pmt_found reset to 0.


Commit: b3e959845ab55705037a6e5dd0baa6ded6187d5f
https://github.com/MythTV/mythtv/commit/b3e959845ab55705037a6e5dd0baa6ded6187d5f
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: pmt_cb(): harmonize part 4

Mostly whitespace/MACRO use changes.


Commit: 7594df0d43c52d95d871ffbf890399fecd51f429
https://github.com/MythTV/mythtv/commit/7594df0d43c52d95d871ffbf890399fecd51f429
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: pmt_cb(): harmonize part 5

Add comments marking changes.

The for loop still needs harmonization.


Commit: 92b3d25db5a307a4f20fc8c874ee940c84c647a3
https://github.com/MythTV/mythtv/commit/92b3d25db5a307a4f20fc8c874ee940c84c647a3
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: pmt_cb(): remove unused variable desc_count


Commit: ac4fb219b4f1dedfa71c85320dbb542bda41eee1
https://github.com/MythTV/mythtv/commit/ac4fb219b4f1dedfa71c85320dbb542bda41eee1
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: pmt_cb(): create export_pmt()

memcpy() with NULL pointers is undefined behavior. tmp1 would be
NULL if av_malloc() failed.

av_free() explicitly *allows* a NULL pointer as its argument.


Commit: 188550b07fd643aae34f51e3aa2481a28f73a4d1
https://github.com/MythTV/mythtv/commit/188550b07fd643aae34f51e3aa2481a28f73a4d1
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize ff_parse_mpeg2_descriptor() part 1

This is in preparation of changing its signature. Most copies are #if 0,
since the parameters have changed.

language is only size 4, so I have corrected writing past its end for
ISO_639_LANGUAGE_DESCRIPTOR.

The language strings will be in the AVDictionary AVStream.metadata under "language".

dvbci->comp_page, dvbci->anc_page, and dvbci->sub_id will become
AVStream->codecpar->extradata: indices mod 5
subtitling_type: 0
comp_page: RB16(1)
anc_page: RB16(3)
sub_id: RB32(1)

dvbci->component_tag will become
(st->stream_identifier - 1) [0 is used for unknown]


Commit: 364437bdab4a5c37e60fb7170a6f92379d1a0462
https://github.com/MythTV/mythtv/commit/364437bdab4a5c37e60fb7170a6f92379d1a0462
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/avformat.h
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c
M mythtv/libs/libmythtv/decoders/avformatdecoder.cpp

Log Message:
-----------
mpegts-mythtv.c: convert export_pmt() to AVBufferRef

This is now thread safe and should prevent triggering any use after free
race conditions in MythTV.

avformatdecoder.cpp: convert PMT buffer to MythAVBufferRef


Commit: ea286b9b07527c3f1cf9ce2243a25dbcbded6831
https://github.com/MythTV/mythtv/commit/ea286b9b07527c3f1cf9ce2243a25dbcbded6831
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/avformat.h

Log Message:
-----------
avformat.h: remove now unused mythtv additions


Commit: 47f8ba804641eb15b5fa6d56d4bdc0ebe57733c4
https://github.com/MythTV/mythtv/commit/47f8ba804641eb15b5fa6d56d4bdc0ebe57733c4
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: add a log entry for exporting the PMT


Commit: 2af6486e8de2140a20068686c524b19bba3c8c47
https://github.com/MythTV/mythtv/commit/2af6486e8de2140a20068686c524b19bba3c8c47
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: replace remaining av_dlog()


Commit: ee288cce904f401c5c43c431dc673e04808038ff
https://github.com/MythTV/mythtv/commit/ee288cce904f401c5c43c431dc673e04808038ff
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: add context for all av_log()s


Commit: f2dd9c03dca007c1ce6e415e5007ecbf2960a3cf
https://github.com/MythTV/mythtv/commit/f2dd9c03dca007c1ce6e415e5007ecbf2960a3cf
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: use AV_LOG_TRACE


Commit: 38321e0dde616fb80917fe4a0f96c7e0ecae09a7
https://github.com/MythTV/mythtv/commit/38321e0dde616fb80917fe4a0f96c7e0ecae09a7
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c:mpegts_add_stream(): add and use local variables

This is to help comparing it with pmt_cb().


Commit: 69ed481580f56b9b5896c3445b5e59d58151da83
https://github.com/MythTV/mythtv/commit/69ed481580f56b9b5896c3445b5e59d58151da83
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: match some space with ffmpeg


Commit: 698b36734d34b6b8054613e9d158130e4c855dbd
https://github.com/MythTV/mythtv/commit/698b36734d34b6b8054613e9d158130e4c855dbd
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: pmt_cb(): harmonize part 6v2

goto out on errors and whitespace changes.


Commit: 377e2e23b8de0469f2a54da18454883d885398e5
https://github.com/MythTV/mythtv/commit/377e2e23b8de0469f2a54da18454883d885398e5
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: always export the ref-counted PMT

This is in preparation for (temporarily) disabling the streams_changed code.


Commit: 522113498e0e3d9f7fdd3220ba846e2e0a9a0790
https://github.com/MythTV/mythtv/commit/522113498e0e3d9f7fdd3220ba846e2e0a9a0790
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.h

Log Message:
-----------
mpegts-mythtv: harmonize pmt_cb() part 7

ff_parse_mpeg2_descriptor() is now minimally modified. Yay!
This has enabled removing the struct dvb_caption_info_t,
which was only a shim for copying the values from
ff_parse_mpeg2_descriptor() to the AVStream in mpegts_add_stream().

struct pmt_entry_t is now moved out of the header since it is no
longer used there.

mpegts-mythtv.h is now (ignoring the renamed functions) a superset
of mpegts.h.

PMT_PIDS_MAX was 256, MAX_STREAMS_PER_PROGRAM is 128.
I don't anticipate this being an issue, and if it is, it is an
upstream issue.

mpegts_add_stream() has been merged into pmt_cb() with upstream additions.

The streams_changed callback has been disabled as it is now unnecessary
in my samples from the Finnish YLE that used to trigger it. It could
be re-enabled if necessary.

The following now unused functions have been removed:
mpegts_find_stream_type_pmt
av_mpegts_remove_stream
mpegts_add_stream

This needs testing with DSMCC/MHEG streams.


Commit: 0b146fef8fc2da867db9d6103e3523d777e3d77b
https://github.com/MythTV/mythtv/commit/0b146fef8fc2da867db9d6103e3523d777e3d77b
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: fix double free aborts with MHEG streams

add_section_stream reused the SectionContext if it already exists.
However, it is assigned to AVStream.priv_data which then results in
double frees causing aborts since multiple streams are created for
the same PID.

The similar add_pes_stream does not reuse its PESContexts.


Commit: d1c731b281247e96f0eded36122b5c5620ff052b
https://github.com/MythTV/mythtv/commit/d1c731b281247e96f0eded36122b5c5620ff052b
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: reuse existing streams for MHEG

This should emulate the prior behavior before harmonization of
removing and adding new streams.

My sample now only has two MHEG streams, one for each PID,
as it used to.

In the process, inline new_section_av_stream to ensure the values
are always set correctly.

I don't know if this is the correct way to reuse the streams,
but it appears to work correctly.


Commit: 85ebf52b392aa5abc75e88ff2dd47aa8fce592ab
https://github.com/MythTV/mythtv/commit/85ebf52b392aa5abc75e88ff2dd47aa8fce592ab
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: pat_cb(): move found logic into main loop


Commit: 1a2bdd37d0fc25b56bcb504d27b143df7cde7f97
https://github.com/MythTV/mythtv/commit/1a2bdd37d0fc25b56bcb504d27b143df7cde7f97
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: pat_cb(): harmonize part 3

add_pat_entry() is roughly equivalent to add_program().

ffmpeg doesn't care if is_pat_same() so move it into the main loop
as ffmpeg does.

ffmpeg also doesn't have req_sid, so also move the filter code into
the main loop as ffmpeg does.

remove now unused functions:
add_pat_entry
is_pat_same

Yay! No more compiler warnings!


Commit: f2612f8e9181ee80c5b75bd6a6a64118a6fd2d01
https://github.com/MythTV/mythtv/commit/f2612f8e9181ee80c5b75bd6a6a64118a6fd2d01
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize mpegts_read_header()


Commit: 6c5c33a6178fe6dcc182a6d7e132cf8d20dda234
https://github.com/MythTV/mythtv/commit/6c5c33a6178fe6dcc182a6d7e132cf8d20dda234
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavcodec/codec_desc.c

Log Message:
-----------
libavcodec/codec_desc.c: move AVCodecDescriptors to proper location

I had assumed the DSMCC_B descriptor was in the proper location.
It is not, so neither are the others. Put them in the correct order,
matching the order of the enum AVCodecID so the binary search finds
them correctly.


Commit: 136047b816e679a1442170c294d4b4689b71c022
https://github.com/MythTV/mythtv/commit/136047b816e679a1442170c294d4b4689b71c022
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: harmonize write_section_data

FFmpeg inverted its if logic, so the second MythTV hunk is now following.
That hunk may not be necessary, since the issue did not exist upstream.
It may also be incorrect for the same reason.

This doesn't break MHEG but it doesn't start as early with one of
my samples, increasing from 5 seconds in to 18 seconds in. I'm
not sure why this changed, however.


Commit: e6dcdaf6ec07a7b76cab2377344651f907288b55
https://github.com/MythTV/mythtv/commit/e6dcdaf6ec07a7b76cab2377344651f907288b55
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: fix memory leak of SectionContexts

by reusing the existing SectionContext if it was opened by
add_section_stream.


Commit: 58a30c458fd81f5df2242b80f86a0f8955f180ad
https://github.com/MythTV/mythtv/commit/58a30c458fd81f5df2242b80f86a0f8955f180ad
Author: Scott Theisen <scott.the.elm@gmail.com>
Date: 2022-08-02 (Tue, 02 Aug 2022)

Changed paths:
M mythtv/external/FFmpeg/libavformat/mpegts-mythtv.c

Log Message:
-----------
mpegts-mythtv.c: fix memory leak of exported PMT


Compare: https://github.com/MythTV/mythtv/compare/d16fafb50411...58a30c458fd8

_______________________________________________
mythtv-commits mailing list
mythtv-commits@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-commits