Mailing List Archive

mythtv branch master updated by pbennett. v30-Pre-355-g1b5e6ac
The branch, master has been updated on the
mythtv repository by gitolite user pbennett.
via 1b5e6ac1337b15a0f298a96aa3b72312fddb7216 (commit)
via 0471372d8dd301e47d5d113f890b3e29ebb959f0 (commit)
via a88bca9688ae1ecc3b5583163e2324dafa3a6102 (commit)
via 69a8149b90431e90343a9063c7bb52acf1cf73fc (commit)
via 549ddffc772a661ddd200f21ad49599961c0b4b9 (commit)
via 780b6997a36b410629b9a184cceef351394d8042 (commit)
via f6c4669bf12879b9066e38936a6c618fed8048bd (commit)
via 5c551a0c556ad3832247386869427a6925fd61c0 (commit)
via 2fc0b3779e1524d5273165ad9fab48c12f3bd7f3 (commit)
via 569336d5bf3b2043cb61ca280bffb3b57e7889c0 (commit)
via 6ed2602a34c64f474df42da082574fba9b90c9b9 (commit)
via bc305643ce84746d974cdc2ca7d8534e1772c63c (commit)
from 3eccd6152b0f468df16906e2472fd879a18a54b9 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 1b5e6ac1337b15a0f298a96aa3b72312fddb7216
Author: Peter Bennett <pbennett@mythtv.org> at Tue, 19 Dec 2017 17:46:12 -0500
Committer: Peter Bennett <pbennett@mythtv.org> at Thu, 21 Dec 2017 14:35:46 -0500
URL: http://code.mythtv.org/cgit/mythtv/commit/?id=1b5e6ac1337b15a0f298a96aa3b72312fddb7216

ffmpeg: Fix deprecated avcodec_encode_video2 in mpeg2fix
Fixed logic to use avcodec_send_frame and avcodec_receive_packet
when doing a lossless transcode.



commit 0471372d8dd301e47d5d113f890b3e29ebb959f0
Author: Peter Bennett <pbennett@mythtv.org> at Mon, 18 Dec 2017 19:44:27 -0500
Committer: Peter Bennett <pbennett@mythtv.org> at Thu, 21 Dec 2017 14:35:25 -0500
URL: http://code.mythtv.org/cgit/mythtv/commit/?id=0471372d8dd301e47d5d113f890b3e29ebb959f0

ffmpeg: deprecated AVCodecContext option fields
Various options that are included as fields in AVCodecContext
are deprecated and must now be set using av_dict_set or av_opt_set.

Also fixes 2 missed ‘AVStream::codec’ and one missed
'avpicture_get_size' that should have been done in prior commits.



commit a88bca9688ae1ecc3b5583163e2324dafa3a6102
Author: Peter Bennett <pbennett@mythtv.org> at Sun, 17 Dec 2017 14:01:09 -0500
Committer: Peter Bennett <pbennett@mythtv.org> at Thu, 21 Dec 2017 14:35:05 -0500
URL: http://code.mythtv.org/cgit/mythtv/commit/?id=a88bca9688ae1ecc3b5583163e2324dafa3a6102

ffmpeg: Fix segfault on jump in file with extra video streams
Attempt to flush buffers on a stream that was not opened causes
a seg fault when using the new API. Fixed by checking the stream
before calling avcodec_flush_buffers.



commit 69a8149b90431e90343a9063c7bb52acf1cf73fc
Author: Peter Bennett <pbennett@mythtv.org> at Sat, 16 Dec 2017 14:00:24 -0500
Committer: Peter Bennett <pbennett@mythtv.org> at Thu, 21 Dec 2017 14:34:32 -0500
URL: http://code.mythtv.org/cgit/mythtv/commit/?id=69a8149b90431e90343a9063c7bb52acf1cf73fc

ffmpeg: plugins: deprecated AVStream::codec, avcodec_close, av_free_packet
Fixes AVStream::codec, avcodec_close, and av_free_packet
in the plugins

av_free_packet -> av_packet_unref



commit 549ddffc772a661ddd200f21ad49599961c0b4b9
Author: Peter Bennett <pbennett@mythtv.org> at Fri, 15 Dec 2017 14:59:06 -0500
Committer: Peter Bennett <pbennett@mythtv.org> at Thu, 21 Dec 2017 14:34:09 -0500
URL: http://code.mythtv.org/cgit/mythtv/commit/?id=549ddffc772a661ddd200f21ad49599961c0b4b9

ffmpeg: plugins: Replace deprecated avcodec_decode_video2
avcodec_decode_video2 calls become
* avcodec_receive_frame
* avcodec_send_packet



commit 780b6997a36b410629b9a184cceef351394d8042
Author: Peter Bennett <pbennett@mythtv.org> at Fri, 15 Dec 2017 14:28:29 -0500
Committer: Peter Bennett <pbennett@mythtv.org> at Thu, 21 Dec 2017 14:33:42 -0500
URL: http://code.mythtv.org/cgit/mythtv/commit/?id=780b6997a36b410629b9a184cceef351394d8042

ffmpeg: plugins: Replace deprecated structure AVPicture and associated functions.
* AVPicture -> AVFrame
* avpicture_fill -> av_image_fill_arrays



commit f6c4669bf12879b9066e38936a6c618fed8048bd
Author: Peter Bennett <pbennett@mythtv.org> at Thu, 14 Dec 2017 15:50:58 -0500
Committer: Peter Bennett <pbennett@mythtv.org> at Thu, 21 Dec 2017 14:32:28 -0500
URL: http://code.mythtv.org/cgit/mythtv/commit/?id=f6c4669bf12879b9066e38936a6c618fed8048bd

ffmpeg: deprecated AVStream::codec, avcodec_close, avcodec_get_context_defaults3
Fixes AVStream::codec, avcodec_close, and avcodec_get_context_defaults3
in the rest of the mythtv programs and libraries (not plugins yet).

Changes to avcodec_get_context_defaults3

If avcodec_get_context_defaults3 occurs after avcodec_alloc_context3(codec),
it is superfluous since avcodec_alloc_context3 already sets up the
defaults. If it occurs in pother cases it must change to
avcodec_free_context and avcodec_alloc_context3 since reusing
an AVCodecContext is no longer supported.

Also fixes one error introduced in mythavutil.cpp by the previous commit.



commit 5c551a0c556ad3832247386869427a6925fd61c0
Author: Peter Bennett <pbennett@mythtv.org> at Wed, 13 Dec 2017 17:58:05 -0500
Committer: Peter Bennett <pbennett@mythtv.org> at Thu, 21 Dec 2017 14:32:04 -0500
URL: http://code.mythtv.org/cgit/mythtv/commit/?id=5c551a0c556ad3832247386869427a6925fd61c0

ffmpeg: deprecated AVStream::codec and avcodec_close
In the old method, ffmpeg automatically creates an AVCodecContext
for every AVStream. The context can be opened and closed again any
number of times. This is deprecated and the application code is now
responsible for creating and freeing an AVCodecContext when needed.
The AVCodecContext that the application creates may not be opened
and closed more than once. The deprecated function avcodec_close
must not be called on an AVCodecContext that you create, instead
you have to free the AVCodecContext (using avcodec_free_context)
and allocate a new one if you want to read the stream again.

In many cases, reference fields in AVStream::codec are now available
in AVStream::codecpar. Where possible the code now uses those fields,
to avoid having to create an AVCodecContext.

"codec" no longer shows in the online documentation for AVStream.
It is only defined in ffmpeg if you define FF_API_LAVF_AVCTX when
compiling ffmpeg. See external/FFmpeg/libavformat/version.h, which
has a list of defines that will be set in future to disable this
and others. For more information google FF_API_LAVF_AVCTX.
Instead of AVStream::codec, the AVStream::codecpar structure
contains the information you need to allocate your own AVStream.

Old code for AVStream::codec
AVCodecContext *avctx = stream->codec;

new code using AVStream::codecpar
AVCodec *pCodec = avcodec_find_decoder(stream->codecpar->codec_id);
AVCodecContext *avctx = avcodec_alloc_context3(pCodec);
avcodec_parameters_to_context(avctx, stream->codecpar);
av_codec_set_pkt_timebase(avctx, stream->time_base);

The avctx must saved and the same value used for subsequent calls
with that stream. Existing code which uses stream->codec must
instead keep track of the axctx value to use each time a packet
is received.

Old Code for avcodec_close:
avcodec_close(st->codec);

New code using avcodec_free_context:
avcodec_free_context(&avctx);

Note the old code must still be used for any AVCodecContext
obtained from stream->codec.



commit 2fc0b3779e1524d5273165ad9fab48c12f3bd7f3
Author: Peter Bennett <pbennett@mythtv.org> at Mon, 4 Dec 2017 15:37:42 -0500
Committer: Peter Bennett <pbennett@mythtv.org> at Thu, 21 Dec 2017 14:31:05 -0500
URL: http://code.mythtv.org/cgit/mythtv/commit/?id=2fc0b3779e1524d5273165ad9fab48c12f3bd7f3

ffmpeg: Replace deprecated avcodec_decode_video2
avcodec_decode_video2 calls become
* avcodec_receive_frame
* avcodec_send_packet



commit 569336d5bf3b2043cb61ca280bffb3b57e7889c0
Author: Peter Bennett <pbennett@mythtv.org> at Mon, 4 Dec 2017 15:36:04 -0500
Committer: Peter Bennett <pbennett@mythtv.org> at Thu, 21 Dec 2017 14:30:38 -0500
URL: http://code.mythtv.org/cgit/mythtv/commit/?id=569336d5bf3b2043cb61ca280bffb3b57e7889c0

ffmpeg: replace deprecated avcodec_encode_audio2
avcodec_encode_audio2 calls become
* avcodec_receive_packet
* avcodec_send_frame



commit 6ed2602a34c64f474df42da082574fba9b90c9b9
Author: Peter Bennett <pbennett@mythtv.org> at Mon, 4 Dec 2017 15:34:03 -0500
Committer: Peter Bennett <pbennett@mythtv.org> at Thu, 21 Dec 2017 14:30:15 -0500
URL: http://code.mythtv.org/cgit/mythtv/commit/?id=6ed2602a34c64f474df42da082574fba9b90c9b9

ffmpeg: Replace deprecated structure AVPicture and associated functions.
Deprecated structures and functions and the replacements:
* AVPicture -> AVFrame
* avpicture_fill -> av_image_fill_arrays
* av_picture_copy -> av_image_copy
* avpicture_get_size -> av_image_get_buffer_size
* avpicture_alloc -> av_image_alloc
* avpicture_free -> av_freep



commit bc305643ce84746d974cdc2ca7d8534e1772c63c
Author: Peter Bennett <pbennett@mythtv.org> at Mon, 4 Dec 2017 15:31:03 -0500
Committer: Peter Bennett <pbennett@mythtv.org> at Thu, 21 Dec 2017 14:29:45 -0500
URL: http://code.mythtv.org/cgit/mythtv/commit/?id=bc305643ce84746d974cdc2ca7d8534e1772c63c

ffmpeg: Replace calls to deprecated avcodec_decode_audio4
avcodec_decode_audio4 calls become
* avcodec_receive_frame
* avcodec_send_packet



-----------------------------------------------------------------------

Summary of changes:
.../mytharchive/mytharchive/thumbfinder.cpp | 38 ++-
mythplugins/mytharchive/mytharchivehelper/main.cpp | 88 ++++--
mythplugins/mythmusic/mythmusic/avfdecoder.cpp | 7 +-
mythtv/configure | 4 +
mythtv/libs/libmyth/audio/audiooutput.cpp | 22 ++-
.../libmyth/audio/audiooutputdigitalencoder.cpp | 31 ++-
mythtv/libs/libmyth/audio/audiooutpututil.cpp | 22 ++-
.../libs/libmythtv/AirPlay/mythraopconnection.cpp | 4 +-
mythtv/libs/libmythtv/DVD/avformatdecoderdvd.cpp | 8 +-
mythtv/libs/libmythtv/avformatdecoder.cpp | 316 +++++++++++---------
mythtv/libs/libmythtv/avformatdecoder.h | 2 +-
mythtv/libs/libmythtv/avformatwriter.cpp | 75 ++++--
mythtv/libs/libmythtv/mhi.cpp | 60 +++--
mythtv/libs/libmythtv/mythavutil.cpp | 111 ++++++-
mythtv/libs/libmythtv/mythavutil.h | 67 +++--
mythtv/libs/libmythtv/mythplayer.cpp | 8 +-
mythtv/libs/libmythtv/nuppeldecoder.cpp | 62 ++--
mythtv/libs/libmythtv/openglvideo.cpp | 2 +-
mythtv/libs/libmythtv/privatedecoder_crystalhd.cpp | 17 +-
mythtv/libs/libmythtv/privatedecoder_omx.cpp | 20 +-
mythtv/libs/libmythtv/privatedecoder_vda.cpp | 9 +-
.../libmythtv/recorders/NuppelVideoRecorder.cpp | 45 ++--
mythtv/libs/libmythtv/videoout_d3d.cpp | 11 +-
mythtv/libs/libmythtv/videoout_xv.cpp | 13 +-
mythtv/libs/libmythtv/videooutbase.cpp | 35 ++-
mythtv/programs/mythcommflag/BlankFrameDetector.h | 1 -
mythtv/programs/mythcommflag/BorderDetector.cpp | 4 +-
mythtv/programs/mythcommflag/BorderDetector.h | 6 +-
mythtv/programs/mythcommflag/CannyEdgeDetector.cpp | 50 ++--
mythtv/programs/mythcommflag/CannyEdgeDetector.h | 8 +-
mythtv/programs/mythcommflag/EdgeDetector.cpp | 12 +-
mythtv/programs/mythcommflag/EdgeDetector.h | 8 +-
mythtv/programs/mythcommflag/HistogramAnalyzer.cpp | 2 +-
mythtv/programs/mythcommflag/HistogramAnalyzer.h | 4 +-
mythtv/programs/mythcommflag/PGMConverter.cpp | 16 +-
mythtv/programs/mythcommflag/PGMConverter.h | 6 +-
mythtv/programs/mythcommflag/SceneChangeDetector.h | 2 +-
mythtv/programs/mythcommflag/TemplateFinder.cpp | 78 +++--
mythtv/programs/mythcommflag/TemplateFinder.h | 8 +-
mythtv/programs/mythcommflag/TemplateMatcher.cpp | 21 +-
mythtv/programs/mythcommflag/TemplateMatcher.h | 8 +-
mythtv/programs/mythcommflag/pgm.cpp | 35 ++-
mythtv/programs/mythcommflag/pgm.h | 14 +-
.../mythtranscode/external/replex/replex.c | 29 ++-
mythtv/programs/mythtranscode/mpeg2fix.cpp | 60 +++--
mythtv/programs/mythtranscode/mpeg2fix.h | 5 +-
mythtv/programs/mythtranscode/transcode.cpp | 2 +-
mythtv/programs/mythutil/musicmetautils.cpp | 18 +-
48 files changed, 928 insertions(+), 546 deletions(-)

--