Generally, libavformat exports cover art pictures as video streams with
1 packet and AV_DISPOSITION_ATTACHED_PIC set. Only matroskadec exported
it as attachment with codec_id set to AV_CODEC_ID_MJPEG.
Obviously, this should be consistent, so change the Matroska demuxer to
export a AV_DISPOSITION_ATTACHED_PIC pseudo video stream.
Matroska muxing is probably incorrect too. I know that it can create
broken files with an audio track and just 1 video frame when e.g.
remuxing mp3 with APIC to mkv. But for now this commit does not change
anything about muxing, and also continues to write attachments with
AV_CODEC_ID_MJPEG should the muxer application have special knowledge
that the Matroska is broken in this way.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
MSVC does not support the %F and %T format specifiers in strftime.
Replace that with the expanded version. This fixes the broken fate
tests in MSVC (webm-dash-manifest-*).
Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* commit '108f2f381acb93827fb4add0517eeae859afa3bf':
parseutils: Extend small_strptime to be used in avformat
Conflicts:
libavutil/parseutils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
This patch adds support for WebM Live Muxing by adding a new WebM
Chunk muxer. It writes out live WebM Chunks which can be used for
playback using Live DASH Clients.
Please see muxers.texi for sample usage.
Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* commit '5637ff01218a44fcc1fff9b4382a15a6470abcc9':
libavcodec: Clarify the documentation of the internal codec capability flags
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'bd737b5178f361a9b592691848f29a7a79603a7e':
h264: reset the private data in init_thread_copy()
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '65afa65e7393e7745427e267d6c6ca814c7c8b45':
h264: drop redundant initialization of the scaling matrices
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'e1f907711a91e5ce19402a1831cfbe8f709b67f7':
h264: factor out common code from init() and init_thread_copy()
Conflicts:
libavcodec/h264.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '43fd3dd80ca2d1c2ccf6a7b7632db544c809c690':
h264: drop redundant initialization in init()
Conflicts:
libavcodec/h264.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
They are no longer initialized in ff_h264_decode_init() since 43fd3dd,
so svq3 needs to initialize the manually.
Fixes svq3 decoding, broken since 43fd3dd.
* commit '84f226a3bcd8b39801a4c9051c033ab7d61aaf76':
h264: use the correct SPS during PPS parsing
Conflicts:
libavcodec/h264_ps.c
See: dc35b77b28
Merged-by: Michael Niedermayer <michaelni@gmx.at>
The generic code copies the main context's private data to all the
others. However that is quite dangerous, as it might end up copying some
pointers that are or will become invalid.
Since everything we actually need will be copied later in
update_thread_context(), it's safest to zero the private data in
init_thread_copy(), so it works the same way as init for the main
context.