summaryrefslogtreecommitdiffstats
path: root/libavcodec/ass.c
Commit message (Collapse)AuthorAgeFilesLines
* lavc/options: add ass_ro_flush_noop to flags2Clément Bœsch2016-02-261-1/+2
|
* lavc: allow subtitle text format to be ASS without timingClément Bœsch2016-02-261-78/+18
|
* lavc/ccaption_dec: improve default styleClément Bœsch2016-01-101-3/+4
| | | | Use monospaced font, and a black box outline.
* avcodec/ass: check for av_mallocz() failureMichael Niedermayer2015-12-221-0/+2
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* Merge commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615'Michael Niedermayer2015-07-271-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615': lavc: AV-prefix all codec flags Conflicts: doc/examples/muxing.c ffmpeg.c ffmpeg_opt.c ffplay.c libavcodec/aacdec.c libavcodec/aacenc.c libavcodec/ac3dec.c libavcodec/ac3enc_float.c libavcodec/atrac1.c libavcodec/atrac3.c libavcodec/atrac3plusdec.c libavcodec/dcadec.c libavcodec/ffv1enc.c libavcodec/h264.c libavcodec/h264_loopfilter.c libavcodec/h264_mb.c libavcodec/imc.c libavcodec/libmp3lame.c libavcodec/libtheoraenc.c libavcodec/libtwolame.c libavcodec/libvpxenc.c libavcodec/libxavs.c libavcodec/libxvid.c libavcodec/mpeg12dec.c libavcodec/mpeg12enc.c libavcodec/mpegaudiodec_template.c libavcodec/mpegvideo.c libavcodec/mpegvideo_enc.c libavcodec/mpegvideo_motion.c libavcodec/nellymoserdec.c libavcodec/nellymoserenc.c libavcodec/nvenc.c libavcodec/on2avc.c libavcodec/options_table.h libavcodec/opus_celt.c libavcodec/pngenc.c libavcodec/ra288.c libavcodec/ratecontrol.c libavcodec/twinvq.c libavcodec/vc1_block.c libavcodec/vc1_loopfilter.c libavcodec/vc1_mc.c libavcodec/vc1dec.c libavcodec/vorbisdec.c libavcodec/vp3.c libavcodec/wma.c libavcodec/wmaprodec.c libavcodec/x86/hpeldsp_init.c libavcodec/x86/me_cmp_init.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/ass: make default playback resolution available to decodersClément Bœsch2015-05-141-2/+3
| |
* | avcodec/ass: Use av_realloc_array()Michael Niedermayer2015-01-091-1/+1
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/ass: add ASS trailing \r\n in one single placeClément Bœsch2014-10-191-2/+2
| |
* | avcodec/ass: assume raw=0 in ff_ass_add_rect_bprintClément Bœsch2014-10-191-2/+2
| |
* | avcodec/ass: add FFmpeg signatureClément Bœsch2014-10-151-0/+2
| |
* | avcodec/ass: output missing fields in AVSubtitles and output filesClément Bœsch2014-10-151-4/+25
| | | | | | | | Fixes Ticket #3207
* | avcodec/ass: add ff_ass_add_rect_bprint() helperClément Bœsch2014-09-211-0/+8
| |
* | avcodec/ass: move playres parameters below scripttypeClément Bœsch2014-06-181-1/+1
| | | | | | | | Suggested-by: wm4
* | avcodec/ass: explicit PlayRes[XY]Clément Bœsch2014-06-181-0/+2
| | | | | | | | | | | | | | | | This avoids the following libass warning when using the subtitles filter: "Neither PlayResX nor PlayResY defined. Assuming 384x288" Subtitles tests change because the output is ASS and the PlayRes[XY] ends up in the output.
* | ass: move text_event_to_ass from textdec.c to ass.c and export itMarton Balint2013-11-101-0/+39
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ass: fix error handling in ff_ass_add_subrectMarton Balint2013-11-101-5/+12
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ass: factor out ff_ass_bprint_dialogMarton Balint2013-11-101-12/+23
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | Merge commit '088f38a4f9f54bb923405c67c9e72d96d90aa284'Michael Niedermayer2013-05-011-7/+7
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | * commit '088f38a4f9f54bb923405c67c9e72d96d90aa284': avcodec: Drop unnecessary ff_ name prefixes from static functions Conflicts: libavcodec/ass.c libavcodec/h264_parser.c libavcodec/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avcodec: Drop unnecessary ff_ name prefixes from static functionsDiego Biurrun2013-04-301-13/+13
| |
* | subtitles: introduce ASS codec id and use it.Clément Bœsch2013-04-181-3/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, we have a AV_CODEC_ID_SSA, which matches the way the ASS/SSA markup is muxed in a standalone .ass/.ssa file. This means the AVPacket data starts with a "Dialogue:" string, followed by a timing information (start and end of the event as string) and a trailing CRLF after each line. One packet can contain several lines. We'll refer to this layout as "SSA" or "SSA lines". In matroska, this markup is not stored as such: it has no "Dialogue:" prefix, it contains a ReadOrder field, the timing information is not in the payload, and it doesn't contain the trailing CRLF. See [1] for more info. We'll refer to this layout as "ASS". Since we have only one common codec for both formats, the matroska demuxer is constructing an AVPacket following the "SSA lines" format. This causes several problems, so it was decided to change this into clean ASS packets. Some insight about what is changed or unchanged in this commit: CODECS ------ - the decoding process still writes "SSA lines" markup inside the ass fields of the subtitles rectangles (sub->rects[n]->ass), which is still the current common way of representing decoded subtitles markup. It is meant to change later. - new ASS codec id: AV_CODEC_ID_ASS (which is different from the legacy AV_CODEC_ID_SSA) - lavc/assdec: the "ass" decoder is renamed into "ssa" (instead of "ass") for consistency with the codec id and allows to add a real ass decoder. This ass decoder receives clean ASS lines (so it starts with a ReadOrder, is followed by the Layer, etc). We make sure this is decoded properly in a new ass-line rectangle of the decoded subtitles (the ssa decoder OTOH is doing a simple straightforward copy). Using the packet timing instead of data string makes sure the ass-line now contains the appropriate timing. - lavc/assenc: just like the ass decoder, the "ssa" encoder is renamed into "ssa" (instead of "ass") for consistency with the codec id, and allows to add a real "ass" encoder. One important thing about this encoder is that it only supports one ass rectangle: we could have put several dialogue events in the AVPacket (separated by a \0 for instance) but this would have cause trouble for the muxer which needs not only the start time, but also the duration: typically, you have merged events with the same start time (stored in the AVPacket->pts) but a different duration. At the moment, only the matroska do the merge with the SSA-line codec. We will need to make sure all the decoders in the future can't add more than one rectangle (and only one Dialogue line in it obviously). FORMATS ------- - lavf/assenc: the .ass/.ssa muxer can take both SSA and ASS packets. In the case of ASS packets as input, it adds the timing based on the AVPacket pts and duration, and mux it with "Dialogue:", trailing CRLF, etc. - lavf/assdec: unchanged; it currently still only outputs SSA-lines packets. - lavf/mkv: the demuxer can now output ASS packets without the need of any "SSA-lines" reconstruction hack. It will become the default at next libavformat bump, and the SSA support will be dropped from the demuxer. The muxer can take ASS packets since it's muxed normally, and still supports the old SSA packets. All the SSA support and hacks in Matroska code will be dropped at next lavf bump. [1]: http://www.matroska.org/technical/specs/subtitles/ssa.html
* | lavc/ass: use bprint API in ff_ass_add_rect().Clément Bœsch2013-04-091-19/+26
| |
* | ass: assert that the timsstamps fitted in the buffersMichael Niedermayer2012-09-091-0/+2
| | | | | | | | | | | | | | Failure of the assert would cause various problems later if we continue. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-08-161-0/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: Fix even more missing includes after the common.h removal build: Factor out rangecoder dependencies to CONFIG_RANGECODER build: Factor out error resilience dependencies to CONFIG_ERROR_RESILIENCE x86: avcodec: Consistently name all init files Add more missing includes after removing the implicit common.h Add some more missing includes after removing the implicit common.h Don't include common.h from avutil.h rtmp: Automatically compute the hash for SWFVerification Conflicts: configure doc/APIchanges doc/examples/decoding_encoding.c libavcodec/Makefile libavcodec/assdec.c libavcodec/audio_frame_queue.c libavcodec/avpacket.c libavcodec/dv_profile.c libavcodec/dwt.c libavcodec/libtheoraenc.c libavcodec/rawdec.c libavcodec/rv40dsp.c libavcodec/tiff.c libavcodec/tiffenc.c libavcodec/v210dec.h libavcodec/vc1dsp.c libavcodec/x86/Makefile libavfilter/asrc_anullsrc.c libavfilter/avfilter.c libavfilter/buffer.c libavfilter/formats.c libavfilter/vf_ass.c libavfilter/vf_drawtext.c libavfilter/vf_fade.c libavfilter/vf_select.c libavfilter/video.c libavfilter/vsrc_testsrc.c libavformat/version.h libavutil/audioconvert.c libavutil/error.h libavutil/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Don't include common.h from avutil.hMartin Storsjö2012-08-151-0/+1
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* | lavc/ass: honor Default style.Clément Bœsch2012-06-291-2/+2
| | | | | | | | | | | | The "Default" style written in the header is ignored unless you explicit it in the Dialogue events (it was valid, just ignored). This requires an update of the SubRip test since the ASS output obviously changes.
* | cosmetics: minor libavcodec spelling errorsLou Logan2012-06-291-1/+1
| | | | | | | | | | | | Also update some common misspelled words in patcheck Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavc: switch from ts_end to duration in ff_ass_add_rect.Clément Bœsch2012-05-291-3/+6
| | | | | | | | Make possible a end-to-presentation duration.
* | ass: use av_asprintf() instead of a temporary stack buffer.Clément Bœsch2012-01-301-4/+1
| |
* | Merge remote branch 'qatar/master'Michael Niedermayer2011-05-051-2/+2
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (23 commits) doc: Check standalone compilation before submitting new components. Fix standalone compilation of pipe protocol. Fix standalone compilation of ac3_fixed encoder. Fix standalone compilation of binkaudio_dct / binkaudio_rdft decoders. Fix standalone compilation of IMC decoder. Fix standalone compilation of WTV demuxer. Fix standalone compilation of MXPEG decoder. flashsv: K&R cosmetics matroskaenc: fix memory leak vc1: make overlap filter for I-frames bit-exact. vc1dec: use s->start/end_mb_y instead of passing them as function args. Revert "VC1: merge idct8x8, coeff adjustments and put_pixels." Replace strncpy() with av_strlcpy(). indeo3: Eliminate use of long. get_bits: make cache unsigned to eliminate undefined signed overflow. asfdec: fix assert failure on invalid files avfilter: check malloc return values. Not pulled as reason for reindent is not pulled: mpegvideo: reindent. nutenc: check malloc return values. Not pulled due to much simpler solution in ffmpeg *: don't av_malloc(0). ... Conflicts: doc/developer.texi libavcodec/Makefile libavcodec/get_bits.h libavcodec/mpegvideo.c libavformat/Makefile libavutil/log.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Replace strncpy() with av_strlcpy().Alex Converse2011-05-031-2/+2
| |
| * Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-191-4/+4
| | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Make ff_ass_subtitle_header static to ass.cDiego Elio Pettenò2011-01-251-5/+20
| | | | | | | | Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
* | add avcodec_get_subtitle_defaults() to initialize AVSubtitle structAurelien Jacobs2011-04-111-5/+0
|/ | | | | | | | Call this new function before decode() to replace the custom and inconsistant initialization in various decoders. This function is equivalent to avcodec_get_frame_defaults() for AVFrame. Signed-off-by: Aurelien Jacobs <aurel@gnuage.org>
* add SubRip decoderAurelien Jacobs2010-12-281-0/+40
| | | | Originally committed as revision 26119 to svn://svn.ffmpeg.org/ffmpeg/trunk
* ensure the ASS string in AVSubtitleRect is 0 terminatedAurelien Jacobs2010-11-271-0/+1
| | | | Originally committed as revision 25832 to svn://svn.ffmpeg.org/ffmpeg/trunk
* add missing files in previous commit (ASS encoder and decoder)Aurelien Jacobs2010-11-131-0/+68
Originally committed as revision 25747 to svn://svn.ffmpeg.org/ffmpeg/trunk
OpenPOWER on IntegriCloud