summaryrefslogtreecommitdiff
path: root/libavformat/mpegtsenc.c
Commit message (Collapse)AuthorAge
...
* avformat: migrate to AVFormatContext->urlMarton Balint2018-01-28
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* mpegtsenc: Don't pass NULL to memcpyDerek Buitenhuis2017-07-06
| | | | Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* Fix all -Wformat warnings raised by DJGPPClément Bœsch2017-03-29
|
* lavf/mpegtsenc: clarify pcr_period unit of measurementLou Logan2017-03-16
| | | | | | pcr_period is in milliseconds. Signed-off-by: Lou Logan <lou@lrcd.com>
* libavformat/mpegtsenc: support hevc with missing in stream headers like h.264Michael Niedermayer2017-01-17
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* lavf/mpegtsenc: write metadata descriptor for timed ID3 packetsStefano Sabatini2016-11-06
| | | | | | | | This is required since some programs are not able to correctly recognize the metadata. See H.222, 2.6.58 Metadata pointer descriptor. putstr8() is modified in order to allow to skip writing the string length.
* lavf/mpegtsenc: move putstr8 definition upStefano Sabatini2016-11-06
| | | | This allows to use the function in a future commit.
* avformat/mpegtsenc: Add option to mark stream begin as discontinuousMichael Niedermayer2016-11-02
| | | | | | | This avoids continuity check failures in concatenated streams Reviewed-by: Steven Liu <lingjiujianke@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* lavf/mpegtsenc: fix autobsf when the first NAL is 0x1<XX> bytesRodger Combs2016-10-04
|
* lavf/mpegtsenc: Set min PID for data pkt to 0x0010.Sylvain Laurent2016-09-28
| | | | Fixes ticket #1673.
* lavf/mpegtsenc: add special case for handling timed ID3 packetsStefano Sabatini2016-07-29
| | | | | | Set the stream_id to 0xbd (private_stream_id_1). Tools seem to assume that value, and this is consistent with MPEG TS specification (ITU-T H.222.0 section 2.12.3).
* Merge commit '393596f9d51134d6e45d81ae129223f4faea1232'Clément Bœsch2016-06-23
|\ | | | | | | | | | | | | | | | | | | | | * commit '393596f9d51134d6e45d81ae129223f4faea1232': mpegtsenc: stop impersonating ses in sdt This commit also includes the needed FATE updates later spotted by Martin Storsjö and fixed in 34effe816f9f3df2e6b8bc738e2b5a86a24fd0d7 on Libav side. Merged-by: Clément Bœsch <u@pkh.me>
| * mpegtsenc: stop impersonating ses in sdtFrancois Cartegnie2016-05-17
| | | | | | | | | | | | | | Unless specified, users must use non registered range for network id Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb'Clément Bœsch2016-06-21
|\| | | | | | | | | | | | | * commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb': cosmetics: Fix spelling mistakes Merged-by: Clément Bœsch <u@pkh.me>
| * cosmetics: Fix spelling mistakesVittorio Giovara2016-05-04
| | | | | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* | lavf/mpegtsenc: set metadata stream type and write descriptor for ID3 packetsStefano Sabatini2016-05-19
| | | | | | | | This allow to remux data packets which are then recognized as ID3 packets.
* | avformat/mpegtsenc: fix usage of AVStream.codecJames Almer2016-05-04
| | | | | | | | Signed-off-by: James Almer <jamrial@gmail.com>
* | lavf/mpegtsenc: Define service_type "HEVC digital television service".smallishzulu2016-05-03
| | | | | | | | Fixes ticket #5455.
* | lavf/mpegtsenc: Fix stream_type for low sample rate MP2/MP3.Carl Eugen Hoyos2016-05-03
| |
* | Merge commit '9200514ad8717c63f82101dc394f4378854325bf'Derek Buitenhuis2016-04-10
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '9200514ad8717c63f82101dc394f4378854325bf': lavf: replace AVStream.codec with AVStream.codecpar This has been a HUGE effort from: - Derek Buitenhuis <derek.buitenhuis@gmail.com> - Hendrik Leppkes <h.leppkes@gmail.com> - wm4 <nfxjfg@googlemail.com> - Clément Bœsch <clement@stupeflix.com> - James Almer <jamrial@gmail.com> - Michael Niedermayer <michael@niedermayer.cc> - Rostislav Pehlivanov <atomnuker@gmail.com> Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
| * lavf: replace AVStream.codec with AVStream.codecparAnton Khirnov2016-02-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, AVStream contains an embedded AVCodecContext instance, which is used by demuxers to export stream parameters to the caller and by muxers to receive stream parameters from the caller. It is also used internally as the codec context that is passed to parsers. In addition, it is also widely used by the callers as the decoding (when demuxer) or encoding (when muxing) context, though this has been officially discouraged since Libav 11. There are multiple important problems with this approach: - the fields in AVCodecContext are in general one of * stream parameters * codec options * codec state However, it's not clear which ones are which. It is consequently unclear which fields are a demuxer allowed to set or a muxer allowed to read. This leads to erratic behaviour depending on whether decoding or encoding is being performed or not (and whether it uses the AVStream embedded codec context). - various synchronization issues arising from the fact that the same context is used by several different APIs (muxers/demuxers, parsers, bitstream filters and encoders/decoders) simultaneously, with there being no clear rules for who can modify what and the different processes being typically delayed with respect to each other. - avformat_find_stream_info() making it necessary to support opening and closing a single codec context multiple times, thus complicating the semantics of freeing various allocated objects in the codec context. Those problems are resolved by replacing the AVStream embedded codec context with a newly added AVCodecParameters instance, which stores only the stream parameters exported by the demuxers or read by the muxers.
| * mpegtsenc: add flag to embed an AC-3 ES the DVB wayStefan Pöschel2015-12-14
| | | | | | | | | | | | | | | | | | | | | | | | | | So far an AC-3 elementary stream is refered to in the PMT according to System A (ATSC). However System B (DVB) has a different way to signal an AC-3 ES within the PMT. This different way can be enabled by a new flag. The flag is more generally named 'system_b' as there are further differences between ATSC and DVB (e.g. the signalling of E-AC-3) which should then also be covered by it in the future. Bug-Id: 73 Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | avformat/mpegtsenc: Fix used serviceMichael Niedermayer2016-03-24
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/mpegtsenc: Keep track of the program for each serviceMichael Niedermayer2016-03-24
| | | | | | | | | | | | Simplifies code Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | lavc/lavf: transmit stream_id information for mpegts KLV data packetsStefano Sabatini2016-02-23
| | | | | | | | | | | | | | | | | | | | | | | | This allows to copy information related to the stream ID from the demuxer to the muxer, thus allowing for example to retain information related to synchronous and asynchronous KLV data packets. This information is used in the muxer when remuxing to distinguish the two kind of packets (if the information is lacking, data packets are considered synchronous). The fate reference changes are due to the use of av_packet_merge_side_data(), which increases the size of the output packet size, since side data is merged into the packet data.
* | mpegtsenc: Do not fail ADTS AAC muxing if the first frame is not ADTSHagen Schmidt2016-01-29
| | | | | | | | | | | | Fixes ticket 279. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/mpegtsenc: Fix multi program so that it supports adding the same ↵Vittorio Gambaletta (VittGam)2016-01-25
| | | | | | | | | | | | | | stream to multiple programs. Signed-off-by: Vittorio Gambaletta <ffmpeg-dev@vittgam.net> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | lavf/mpegtsenc: add automatic bitstream filteringRodger Combs2015-12-28
| |
* | avformat/mpegtsenc: add flag to embed an AC-3/E-AC-3 ES the DVB wayStefan Pöschel2015-12-24
| | | | | | | | | | | | | | | | | | | | So far an AC-3 elementary stream is refered to in the PMT according to System A (ATSC). An E-AC-3 ES in contrast is embedded the System B (DVB) way. To fix this inconsistency, this commit changes the default E-AC-3 behaviour to use the ATSC way, too. Furthermore a new flag is added to optionally select the DVB way (regarding both codecs and possible further differences in the future). Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/mpegtsenc: Add basic multi program supportMichael Niedermayer2015-12-11
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat: use AV_OPT_TYPE_BOOL in a bunch of placesClément Bœsch2015-12-04
| |
* | mpegtsenc: Fix off-by-one in indexing into Opus channel mapping arraysSebastian Dröge2015-12-04
| | | | | | | | | | | | Fixes, CID1338323, CID1338324 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | mpegencts: Fix overflow in cbr mode period calculationsTimo Teräs2015-12-03
| | | | | | | | | | | | | | | | | | | | | | ts->mux_rate is int (signed 32-bit) type. The period calculations will start to overflow when mux_rate > 5mbps. This fixes overflows by converting first to 64-bit type. Fixes #5044. Signed-off-by: Timo Teräs <timo.teras@iki.fi> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | mpegtsenc: add vc-1 support to MPEG-TS muxer (ticket 2141)Hagen Schmidt2015-11-16
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | mpegtsenc: Implement writing of Opus trim_start/trim_end control valuesSebastian Dröge2015-11-06
| | | | | | | | | | | | Signed-off-by: Sebastian Dröge <sebastian@centricular.com> Reviewed-by: Kieran Kunhya <kierank@obe.tv> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | mpegtsenc: Add support for muxing Opus in MPEG-TSSebastian Dröge2015-11-06
| | | | | | | | | | | | Signed-off-by: Sebastian Dröge <sebastian@centricular.com> Previous version reviewed-by: Kieran Kunhya <kierank@obe.tv> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | mpegts: Make the sdt_period a doubleDerek Buitenhuis2015-10-17
| | | | | | | | | | | | | | Having it as a float didn't even allow enough precision to check for INT_MAX/2. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* | mpegts: Make the pat_period a doubleDerek Buitenhuis2015-10-17
| | | | | | | | | | | | | | Having it as a float didn't even allow enough precision to check for INT_MAX/2. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* | avformat/mpegtsenc: Add sdt_period, similar to pat_periodMichael Niedermayer2015-07-18
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/mpegtsenc: Support a user specified PAT/PMT periodMichael Niedermayer2015-07-18
| | | | | | | | | | | | Can be used to fix Ticket3714 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/mpegtsenc: support storing PAT/PMT per frameMichael Niedermayer2015-07-18
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit '4512ee78e19fdb011bdec1b3a8dc0b315c82a81e'Michael Niedermayer2015-07-15
|\| | | | | | | | | | | | | * commit '4512ee78e19fdb011bdec1b3a8dc0b315c82a81e': mpegts: Mark the muxer as supporting variable fps Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * mpegts: Mark the muxer as supporting variable fpsLuca Barbato2015-07-15
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | lavf/mpegtsenc: Only fail aac muxing if the first frame is invalid.Carl Eugen Hoyos2015-07-07
| | | | | | | | Fixes ticket #3957.
* | Merge commit '1a3eb042c704dea190c644def5b32c9cee8832b8'Michael Niedermayer2015-04-20
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '1a3eb042c704dea190c644def5b32c9cee8832b8': Replace av_dlog with normal av_log at trace level Conflicts: ffplay.c libavdevice/fbdev_dec.c libavfilter/avfilter.c libavfilter/internal.h libavfilter/setpts.c libavfilter/src_movie.c libavfilter/vf_crop.c libavfilter/vf_drawtext.c libavfilter/vf_fieldorder.c libavformat/assdec.c libavformat/avidec.c libavformat/flvdec.c libavformat/http.c libavformat/ipmovie.c libavformat/isom.c libavformat/mov.c libavformat/mpegenc.c libavformat/mpegts.c libavformat/mpegtsenc.c libavformat/mux.c libavformat/mxfdec.c libavformat/nsvdec.c libavformat/oggdec.c libavformat/r3d.c libavformat/rtspdec.c libavformat/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Replace av_dlog with normal av_log at trace levelVittorio Giovara2015-04-19
| | | | | | | | This applies to every library where performance is not critical.
* | lavf/mpegtsenc: Accept 0x000001 as startcode for hevc.Carl Eugen Hoyos2015-04-14
| | | | | | | | Fixes ticket #4194.
* | Merge commit '7d097a0fc57f0fa8385962a539c657c2f40b5ed0'Michael Niedermayer2015-04-03
|\| | | | | | | | | | | | | | | | | | | * commit '7d097a0fc57f0fa8385962a539c657c2f40b5ed0': mpegtsenc: Take max_delay into account when buffering multiple audio packets into one PES packet Conflicts: libavformat/mpegtsenc.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mpegtsenc: Take max_delay into account when buffering multiple audio packets ↵Martin Storsjö2015-04-03
| | | | | | | | | | | | | | | | | | | | into one PES packet Make sure we don't buffer up more than max_delay worth of data before writing a PES packet, even if pes_payload_size is set to a larger value. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Allow muxing h264 into ts with startcode "001" instead of "0001".Carl Eugen Hoyos2015-02-25
| | | | | | | | | | Fixes ticket #2220. Fixes ticket #4324.