Anton Khirnov
cf6977712c
movenc: write avg_frame_rate as the framerate, not the codec timebase
11 years ago
Michael Niedermayer
744df0a031
avformat/movenc: Check that packet duration is valid in ff_mov_write_packet()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Anton Khirnov
0ba5299a80
movenc: use the "encoder" metadata tag to write stsd Compressorname
...
This mirrors the demuxer behaviour and avoids accessing
AVCodecContext.codec, which should not be done in muxers.
11 years ago
Anton Khirnov
0c1959b056
lavf: add AVFMT_FLAG_BITEXACT.
...
Use it instead of checking CODEC_FLAG_BITEXACT in the first stream's
codec context.
Using codec options inside lavf is fragile and can easily break when the
muxing codec context is not the encoding context.
11 years ago
Michael Niedermayer
dc6b99d6b2
avformat/movenc: Check ff_put_wav_header() return code
...
Fixes CID1212260
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Daniel Verkamp
5e7d21c7ad
ff_put_wav_header: add flag to force WAVEFORMATEX
...
Partially undoes commit 2c4e08d89327595f7f4be57dda4b3775e1198d5e:
riff: always generate a proper WAVEFORMATEX structure in
ff_put_wav_header
A new flag, FF_PUT_WAV_HEADER_FORCE_WAVEFORMATEX, is added to force the
use of WAVEFORMATEX rather than PCMWAVEFORMAT even for PCM codecs.
This flag is used in the Matroska muxer (the cause of the original
change) and in the ASF muxer, because the specifications for
these formats indicate explicitly that WAVEFORMATEX should be used.
Muxers for other formats will return to the original behavior of writing
PCMWAVEFORMAT when writing a header for raw PCM.
In particular, this causes raw PCM in WAV to generate the canonical
44-byte header expected by some tools.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
af165acefa
avformat/movenc: dont store invalid tapt atom
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Miles Gould
99e22b7859
mov: Emit the correct tags for clcp tracks
...
Bug-Id: 664
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years ago
Aidan Skinner
802385dbc2
mov: Write prof section of tapt tag
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years ago
Carl Eugen Hoyos
8b122937af
Warn if rawvideo and an unreadable pix_fmt are written.
...
Print an error if a combination of rawvideo and an unusual pix_fmt
that will be impossible to decode are written to avi or mov.
Fixes ticket #3545 .
11 years ago
Diego Biurrun
cba4e6062a
More correct printf format specifiers
...
This avoids compiler warnings about argument and specifier type mismatch.
11 years ago
Michael Niedermayer
f94371b1db
mov: Unbreak sbtl writing
11 years ago
Michael Niedermayer
8a9d0a1561
avformat/movenc: fix if vs if else
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
John Stebbins
6adf3bc42e
movenc: Add dvd subtitle support
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years ago
John Stebbins
1e9db41e2a
movenc: Allow override of major brand in ftyp atom
...
Signed-off-by: Tim Walker <tdskywalker@gmail.com>
11 years ago
Michael Niedermayer
9b1d264e87
avformat/movenc: omit avformat ident from isml_manifest for bitexact mode
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
10c14264db
avformat/movenc: omit LIBAVCODEC_IDENT for bitexact mode from uuidusmt_tag
...
This code is apparently not tested by fate
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
a17ee4117d
avformat/movenc: only ommit encoder tag of the metadata for bitexact mode
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Peter Ross
ac9bfb1faf
avformat/movenc: encode compilation metadata
...
Fixes ticket #2960 .
Signed-off-by: Peter Ross <pross@xvid.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
72d44f1583
mvformat/movenc: fix IMX
...
fixes Ticket3351
Tested-by: carl
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Bryce McLeod
581957cd86
avformat/movenc: rescale when copying duration to timecode track
...
Fixes Ticket3453
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Carl Eugen Hoyos
d68ac92dc2
Replace an incorrect av_free() in movenc.c with av_freep().
11 years ago
Tim Walker
4f3db5d341
movenc: allow muxing HEVC in MODE_MP4.
11 years ago
Tim Walker
b6c61fb83e
movenc: enable Annex B to MP4 conversion for HEVC tracks.
11 years ago
Tim Walker
20b40a597c
movenc: write hvcC tag for HEVC.
11 years ago
John Stebbins
565e0c6d86
movenc: allow override of "writing application" tag
...
Signed-off-by: Tim Walker <tdskywalker@gmail.com>
CC: libav-stable@libav.org
11 years ago
Michael Niedermayer
717ec57c7e
avformat/movenc: shift positive timestamps to 0 if edit lists cannot be used
...
Fix handling of timestamps which start far away from 0
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
20fa3fb93d
avformat/movenc: assert that get_cluster_duration() value is valid
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
1b872de8f4
avformat/movenc: check that the input timestamps are within the range that can be stored in mov
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
3f461566b7
avformat/movenc: simplify code, decrease difference to libav
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Martin Storsjö
1e142d5b48
movenc: Add a fallback fragmentation method for plain mp4 as well
...
Previously the default fragmentation method was only enabled
if writing an ISM file.
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years ago
Stefano Sabatini
2cfe70ff3e
lavf/movenc: return meaningful error code from mov_write_header()
11 years ago
Stefano Sabatini
54c596fe7a
lavf/movenc: improve feedback in case of unsupported codec
11 years ago
Carl Eugen Hoyos
362383b743
Fix remuxing of IMA_QT in mov.
...
Fixes ticket #1603 .
11 years ago
Diego Biurrun
8f8bc92365
Add missing #includes for *INT64_MAX and *INT64_C
11 years ago
Clément Bœsch
e01fba5562
movenc: Add an F4V muxer
...
F4V is Adobe's mp4/iso media variant, with the most significant
addition/change being supporting other flash codecs than just
aac/h264.
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years ago
James Almer
1d4476d5da
movenc: use ff_alloc_extradata()
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
e4d45673ca
avformat/movenc: set XDCAM codec tag correctly
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
713dcdbfcb
avformat/movenc: set pretty compressor name for XDCAM
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
ce994a03f5
avformat/movenc: make AVStream easier to access
...
This adds a AVStream pointer to Track
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
8c0f565ee3
avformat/movenc: factor out find_fps()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Martin Storsjö
f2b00a5372
movenc: Return a proper error code for invalid combinations
...
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years ago
Martin Storsjö
f1eac2b8a0
movenc: Use keyframes as default fragmentation point in ismv
...
Fragmenting blindly to a certain duration isn't a good choice
if one should be able to switch between different qualities,
therefore default to keyframes instead.
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years ago
Martin Storsjö
a9553bbb33
movenc: Set all implicit flags immediately in mov_write_header
...
This makes sure other sanity checks for conflicting options
can work properly, e.g. for the conflict between the faststart
flag when using the ismv mode.
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years ago
Martin Storsjö
187023f6b2
movenc: Set mov->mode earlier in mov_write_header
...
This allows simplifying some early checks that depend on the
muxer mode.
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years ago
Martin Storsjö
72fe16a13e
movenc: Use null buffers for measuring the amount of data to be written
...
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years ago
Martin Storsjö
e7bf085b78
movenc: Add an option for omitting the tfhd base offset
...
This makes the output fragments independent of their position in
the output stream, making the output work better when streamed.
QuickTime Player doesn't support fragmented mp4 without the base
data offset, though.
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years ago
Martin Storsjö
a4adabb460
movenc: Write the moof atom in two passes
...
This is a bit more work, but avoids having to fill in
the data offset field afterwards instead of directly when
the rest of the trun atom is written.
This simplifies future cases where this field needs to be set to
something different.
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years ago
Martin Storsjö
bdf990425e
movenc: Simplify setting the fragmentation flag
...
This makes sure the faststart vs fragmentation check works as
intended when fragmentation is enabled due to using the ismv mode.
Signed-off-by: Martin Storsjö <martin@martin.st>
12 years ago
Martin Storsjö
8b524ab0c4
movenc: Add a warning message if conflicting options have been specified
...
Signed-off-by: Martin Storsjö <martin@martin.st>
12 years ago