aboutsummaryrefslogtreecommitdiff
path: root/libavformat/microdvddec.c
AgeCommit message (Collapse)Author
2019-04-27avformat/microdvddec: skip empty linesPaul B Mahol
2019-03-21lavf: Constify the probe function argument.Carl Eugen Hoyos
Reviewed-by: Lauri Kasanen Reviewed-by: Tomas Härdin
2016-04-10Merge commit '9200514ad8717c63f82101dc394f4378854325bf'Derek Buitenhuis
* 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>
2015-09-10avformat/subtitles: forward log context in ff_subtitles_queue_finalize() for ↵Clément Bœsch
logging
2015-04-08microdvd: do not export framerate hint as subtitle packetwm4
MicroDVD has a "hack" for specifying the video framerate the subtitle was authored against. The demuxer reads this hint correctly, but didn't skip it correctly. This was not noticed, because the exported packet has its duration set to 0, making it invisible (depending on the API user's rendering logic). Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-08replace calls to url_feof() with avio_feof()James Almer
Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-03avformat/microdvd: export the declared frame ratewm4
MicroDVD files are normally frame-based (i.e. there are no absolute timestamps), but can have an optional frame rate header. If this header is missing, the timestamps depend on the frame rate of the video they were created for. The demuxer will use a fallback frame rate if it's missing from the header. Currently, applications using libavformat can't know whether the time base is based on the fallback value, or if a frame rate header was present. This commit introduces a subfps AVOption for MicroDVD, and the demuxer sets it if and only if a frame rate header was present. Signed-off-by: Clément Bœsch <u@pkh.me>
2014-03-03avformat/microdvd: skip BOM properlywm4
The BOM is already skipped in the probe function, but not the header read function. This could cause the header to be misparsed, such as not interpreting the FPS line.
2013-09-08avformat/subtitles: add a next line jumper and use it.Clément Bœsch
This fixes a bunch of possible overread in avformat with the idiom p += strcspn(p, "\n") + 1 (strcspn() can focus on the trailing '\0' if no '\n' is found, so the +1 leads to an overread). Note on lavf/matroskaenc: no extra subtitles.o Makefile dependency is added because only the header is required for ff_subtitles_next_line(). Note on lavf/mpsubdec: code gets slightly complex to avoid an infinite loop in the probing since there is no more forced increment.
2013-09-03Update copyrights where my email appears with the new one.Clément Bœsch
2013-01-02lavf: remove generic index flag from text subtitles.Clément Bœsch
This flag is not necessary.
2012-12-31microdvd: sanitize AVPackets.Clément Bœsch
Current MicroDVD AVPackets contain timing information and trailing line breaks. The data is now only composed of the markup data. Doing this consistently between text subtitles decoders allows to use different codec for various formats. For instance, MicroDVD markup is sometimes found in some VPlayer files. Also, generally speaking, the subtitles text decoders have no use of these timings (and they must not use them since it would break any user timing adjustment). Technically, this is a major ABI break. In practice, a mismatching lavf/lavc will now error out for MicroDVD decoding. Supporting both formats requires unnecessary complex and fragile code. FATE needs update because line breaks in the ASS file were "\n" (because that's what is used in the original file). ASS format expect "\r\n" line breaks; this commit fixes this issue. Also note that this "\r\n" trailing need to be moved at some point from the decoders to the ASS muxer.
2012-12-25microdvd_probe: make buffer pointers constMichael Niedermayer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-02lavf: use ff_subtitles_queue_seek() for text subtitles demuxers.Clément Bœsch
2012-08-07Merge commit '36ef5369ee9b336febc2c270f8718cec4476cb85'Michael Niedermayer
* commit '36ef5369ee9b336febc2c270f8718cec4476cb85': Replace all CODEC_ID_* with AV_CODEC_ID_* lavc: add AV prefix to codec ids. Conflicts: doc/APIchanges doc/examples/decoding_encoding.c doc/examples/muxing.c ffmpeg.c ffprobe.c ffserver.c libavcodec/8svx.c libavcodec/avcodec.h libavcodec/dnxhd_parser.c libavcodec/dvdsubdec.c libavcodec/error_resilience.c libavcodec/h263dec.c libavcodec/libvorbisenc.c libavcodec/mjpeg_parser.c libavcodec/mjpegenc.c libavcodec/mpeg12.c libavcodec/mpeg4videodec.c libavcodec/mpegvideo.c libavcodec/mpegvideo_enc.c libavcodec/pcm.c libavcodec/r210dec.c libavcodec/utils.c libavcodec/v210dec.c libavcodec/version.h libavdevice/alsa-audio-dec.c libavdevice/bktr.c libavdevice/v4l2.c libavformat/asfdec.c libavformat/asfenc.c libavformat/avformat.h libavformat/avidec.c libavformat/caf.c libavformat/electronicarts.c libavformat/flacdec.c libavformat/flvdec.c libavformat/flvenc.c libavformat/framecrcenc.c libavformat/img2.c libavformat/img2dec.c libavformat/img2enc.c libavformat/ipmovie.c libavformat/isom.c libavformat/matroska.c libavformat/matroskadec.c libavformat/matroskaenc.c libavformat/mov.c libavformat/movenc.c libavformat/mp3dec.c libavformat/mpeg.c libavformat/mpegts.c libavformat/mxf.c libavformat/mxfdec.c libavformat/mxfenc.c libavformat/nsvdec.c libavformat/nut.c libavformat/oggenc.c libavformat/pmpdec.c libavformat/rawdec.c libavformat/rawenc.c libavformat/riff.c libavformat/sdp.c libavformat/utils.c libavformat/vocenc.c libavformat/wtv.c libavformat/xmv.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-29lavf/microdvd: rewrite using subtitles queue API.Clément Bœsch
2012-06-15lavf/{srt,microdvd}: correctly raise error on avformat_new_stream() error.Clément Bœsch
2012-05-29lavf/microdvd: support events lasting to the next one.Clément Bœsch
Example: {3350}{}this subtitle... {3390}{}...continues up to... {4000}{4500}this one. {4600}{}and now... {4800}{}...to the end of the presentation
2012-04-27lavf/microdvd: set packet duration.Clément Bœsch
2012-01-28Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: (71 commits) movenc: Allow writing to a non-seekable output if using empty moov movenc: Support adding isml (smooth streaming live) metadata libavcodec: Don't crash in avcodec_encode_audio if time_base isn't set sunrast: Document the different Sun Raster file format types. sunrast: Add a check for experimental type. libspeexenc: use AVSampleFormat instead of deprecated/removed SampleFormat lavf: remove disabled FF_API_SET_PTS_INFO cruft lavf: remove disabled FF_API_OLD_INTERRUPT_CB cruft lavf: remove disabled FF_API_REORDER_PRIVATE cruft lavf: remove disabled FF_API_SEEK_PUBLIC cruft lavf: remove disabled FF_API_STREAM_COPY cruft lavf: remove disabled FF_API_PRELOAD cruft lavf: remove disabled FF_API_NEW_STREAM cruft lavf: remove disabled FF_API_RTSP_URL_OPTIONS cruft lavf: remove disabled FF_API_MUXRATE cruft lavf: remove disabled FF_API_FILESIZE cruft lavf: remove disabled FF_API_TIMESTAMP cruft lavf: remove disabled FF_API_LOOP_OUTPUT cruft lavf: remove disabled FF_API_LOOP_INPUT cruft lavf: remove disabled FF_API_AVSTREAM_QUALITY cruft ... Conflicts: doc/APIchanges libavcodec/8bps.c libavcodec/avcodec.h libavcodec/libx264.c libavcodec/mjpegbdec.c libavcodec/options.c libavcodec/sunrast.c libavcodec/utils.c libavcodec/version.h libavcodec/x86/h264_deblock.asm libavdevice/libdc1394.c libavdevice/v4l2.c libavformat/avformat.h libavformat/avio.c libavformat/avio.h libavformat/aviobuf.c libavformat/dv.c libavformat/mov.c libavformat/utils.c libavformat/version.h libavformat/wtv.c libavutil/Makefile libavutil/file.c libswscale/x86/input.asm libswscale/x86/swscale_mmx.c libswscale/x86/swscale_template.c tests/ref/lavf/ffm Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-03lavf: rename remaining av_set_pts_info() to avpriv_set_pts_info().Clément Bœsch
2011-11-05Replace remaining av_new_stream() with avformat_new_stream().Clément Bœsch
2011-04-04add MicroDVD muxer and demuxerAurelien Jacobs
Signed-off-by: Aurelien Jacobs <aurel@gnuage.org>