[mythtv] RE: [mythtv-commits] mythtv commit: r6990 - in trunk/mythtv/libs bydanielk

Anduin Withers awithers at anduin.com
Fri Aug 5 10:09:55 EDT 2005


>    trunk/mythtv/libs/libavformat/mpegts.c

Doesn't compile with newer gcc, need to prototype mpegts_parse_pcrpid and
mpegts_parse_program_info_length as static before call.

-- 
Anduin Withers

> -----Original Message-----
> From: mythtv-commits-bounces at mythtv.org [mailto:mythtv-commits-
> bounces at mythtv.org] On Behalf Of mythtv at cvs.mythtv.org
> Sent: Thursday, August 04, 2005 5:22 PM
> To: mythtv-commits at mythtv.org
> Subject: [mythtv-commits] mythtv commit: r6990 - in trunk/mythtv/libs
> bydanielk
> 
>       Author: danielk
>         Date: 2005-08-04 21:21:51 +0000 (Thu, 04 Aug 2005)
> New Revision: 6990
>    Changeset: http://cvs.mythtv.org/trac/changeset/6990
> 
> Modified:
> 
>    trunk/mythtv/libs/libavformat/avformat.h
>    trunk/mythtv/libs/libavformat/mpegts.c
>    trunk/mythtv/libs/libavformat/mpegts.h
>    trunk/mythtv/libs/libavformat/utils.c
>    trunk/mythtv/libs/libmythtv/avformatdecoder.cpp
>    trunk/mythtv/libs/libmythtv/videobuffers.cpp
> 
> Log:
> 
> Partial fix for the mpeg-ts problem.
> 
> I've been using this locally for a couple days now,
> so it should be fairly stable.
> 
> In mpegts.c/mpegts.h & utils.c/avformat.h there are three changes:
>   1/ When the streams change, packets in the old streams are flushed.
>   2/ All codecs are closed when streams change.
>   3/ Streams are changed all at once after scanning the whole PMT.
> 
> #2 should fix some of the audio problems during channel changing.
> #1, #2, #3 together seem to have solved the problem of ffmpeg writing
> past the end of the audio buffer.
> 
> In avformatdecoder, there have been some adjustments for #2 above, plus
> there is much more debug info.
> 
> In videobuffers.cpp, I've increased the safety below each allocated
> buffer, this allocator is used by VideoOutputNull.cpp. I'll reduce
> this again once I figure out the remaining mpegts problem, this
> prevents a segfault when generating previews for a video with
> multiple stream changes in the first few seconds of a video.
> 
> This doesn't completely solve the problem however, ffmpeg is no longer
> writing past the end of audio buffers, but it is still writing past the
> end of the video buffers. Worse it looks like it is doing this on the
> stack. This is in AvFormatDecoder::GetFrame() and it makes the
> backtraces a bit "interesting".
> 
> BTW A workaround to the remaining problem is to use XvMC...
> 
> 
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: mpegts.c.patch
Type: application/octet-stream
Size: 605 bytes
Desc: not available
Url : http://mythtv.org/pipermail/mythtv-dev/attachments/20050805/520946df/mpegts.c.obj


More information about the mythtv-dev mailing list