[FFmpeg-devel] [FFmpeg-soc] [Patch]GSoC 2008 qualification task TS Muxer
zhentan feng
spyfeng
Thu Mar 27 15:52:09 CET 2008
2008/3/27, zhentan feng <spyfeng at gmail.com>:
> 2008/3/26, Baptiste Coudurier <baptiste.coudurier at smartjog.com>:
>
> > Hi,
> >
> > zhentan feng wrote:
> > > 2008/3/25, Baptiste Coudurier <baptiste.coudurier at smartjog.com>:
> > >> Hi,
> > >>
> > >>
> > >> zhentan feng wrote:
> > >> > 2008/3/25, Michael Niedermayer <michaelni at gmx.at>:
> > >> >> On Tue, Mar 25, 2008 at 11:57:16AM +0800, zhentan feng wrote:
> > >> >> > 2008/3/25, Michael Niedermayer <michaelni at gmx.at>:
> > >> >>
> > >> >> [...]
> > >> >>
> > >>
> > >>>> I assume these are bugfixes for the TS muxer? We certainly do want them but
> > >> >> they must be in a seperate patch. Not in the patch spliting the common PES
> > >> >> code out.
> > >> >
> > >> > yes, these are bugfixes.But it was modified by the student last year,not me.
> > >>
> > >>
> > >> Some are, and I fixed pcr computation.
> > >>
> > >>
> > >> > The situation is that I just download the codes from
> > >> > svn://svn.mplayerhq.hu/soc/dvbmuxer
> > >> > and I got 4 files mpegtsenc.c, mpegenc.c,mpegpesenc.c,mpegpes.h,which
> > >> > are already bug
> > >> > fixed for mpegtsenc.c against the svn-devl codes, and already
> > >> > extracted some common codes.
> > >> >
> > >> > According to baptiste.coudurie wrote in the early mail,I have just
> > >> > extracted more common codes and do not do any functional changes.
> > >> > As qualification task, I think I will do the next 2 things:
> > >> >
> > >> > 1.Test my codes , confirm it works correctly.
> > >> > 2.Create different patches for different situation:
> > >> > i) create patches against svn://svn.mplayerhq.hu/soc/dvbmuxer to
> > >> > show my changes from the last year's students.
> > >>
> > >>
> > >> Yes, current TS muxer in soc is working, however mpegtsenc.c and
> > >> mpegenc.c in soc svn shares too much code, you can see that already.
> > >> Im not sure if code from ffmpeg svn mpegenc.c can be extracted right
> > >> now, since It might not fit soc svn mpegtsenc.c code.
> > >>
> > >> First work on soc svn, and adapt mpegenc.c or mpegtsenc.c code if
> > >> needed. See flush_packet for example, it contains much common code. You
> > >> have to decide if it is worth to merge both functions and handle TS and
> > >> PS cases, or just rewrite a very small flush_packet for TS.
> > >> 'mpegpesenc.c' in soc svn should contain common functions, it already
> > >> contains ff_pes_get_nb_frames for example, which is used by both muxer
> > >> in soc svn.
> > >>
> > >
> > > hi,
> > > I have modified the 4 files and copy them to currently svn-devel codes
> > > repo,overwrote mpegtsenc.c and mpegenc.c in /libavformat folder and
> > > add mpegpesenc.c ,mpegpes.h.
> >
> >
> > Yes, but please send seperate patches for every function ? This should
> > make review easier, commit must be separate.
>
> hi,
> I just review the codes and split the patch into 5 small patches
> manually according to their function.
> They are:
> 1,ff_pes_muxer_inti.patch to show the common codes in function
> ff_pes_muxer_inti().
> 2,ff_pes_muxer_end.patch to show the common codes in function
> ff_pes_muxer_end().
> 3,ff_pes_write_packet.patch to show the common codes in function
> ff_pes_write_packet().
> 4,ff_pes_cal_header.patch to show the common codes in function
> ff_pes_cal_header().
> 5,duplication_define_code.patch to show some redefination in mpegpes.h.
> 6,TSMuxer_soc_patch.patch is the integrity patch for checking usage.
> you can apply each patch every time to the base version,but do not
> apply two or more, it maybe confilict.
> I don't find an auoto-generated method to do this,so you add the 5
> patches may not totally reflect the all changes ,so I attach the
> integrity patch named "TSMuxer_soc_patch.patch"
> to check.
>
Today,I have fixed some bugs in mpegpesenc.c.
I attached 3 new patches as below:
1,ff_pes_muxer_init_new.patch to show the common codes in function
ff_pes_muxer_init().
2,ff_pes_cal_header.patch to show the common codes in funtion
ff_pes_cal_header().
3,TSMuxer_soc_Newpactch.patch to show all the changes against svn soc
codes repo.
you can just apply the TSMuxer_soc_Newpatch.patch to svn-soc codes get
the current code files.
I run the 4files in svn-devel codes repo and "make full test" and got
the same results with running the svn-soc files in svn-devel codes
repo.
So, I conservativly think the changes do not break the regressions tests.
Thank you very much to review the patches.
> >
> > Can you please attach your patches non base64-encoded ? It will be
> > easier for me to review.
>
> I am really sorry for this problem.
> I just use svn create the patches and send to the maillist by
> googlemail as attachment,I find all the mail setting optionals and
> search through the web but can't get how to use non base64-encoded.
> I will be very grateful,If you tell me what's the problem maybe.
>
>
> >
> >
> > > Then I do "make" to complie the changed files and have fixed some errors.
> > > Now, all the 4 files can be complie successfully.
> > > The patch against svn-soc is attached below.
> > >
> > > I know the code from svn-soc is bugfixes.
> > > So,I want to know how to test my changes are right and do not break
> > > the function of the mpegtsenc.c and mpegenc.c against svn-soc?
> >
> >
> > You can know using FFmpeg svn, if new code is breaking regressions tests
> > (make fulltest), then it's broken.
>
> About this ,I am still a little confused :(
> The situation is this:
> 1,In current svn_devel code repo, the mpegtsenc.c is broken, but I
> type the command "make test", then all is ok.
> 2,But the svn-soc you and your student last year has fixed the bug.
> So is it also will and *should* be ok,when I use the bugfixed codes to
> FFmpeg current source codes? i.e, are the regressions tests genarally
> applicability?
>
> Best wishes~
>
>
>
> >
> >
> > > what's the sign of the codes can work correctly?
> > > Are there any sample files to play or some tools to judge it?
> >
> >
> > Not many that I know about unfortunately. PS muxer works great though.
> >
> >
> > --
> >
> > Baptiste COUDURIER GnuPG Key Id: 0x5C1ABAAA
> > SMARTJOG SAS http://www.smartjog.com
> > Key fingerprint 8D77134D20CC9220201FC5DB0AC9325C5C1ABAAA
> > Phone: +33 1 49966312
> >
>
>
>
> --
> Best wishes~
>
>
--
Best wishes~
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ff_pes_muxer_init_new.patch
Type: application/octet-stream
Size: 7829 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20080327/6a734ff1/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TSMuxer_soc_Newpactch.patch
Type: application/octet-stream
Size: 29560 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20080327/6a734ff1/attachment-0001.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ff_pes_cal_header_new.patch
Type: application/octet-stream
Size: 12128 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20080327/6a734ff1/attachment-0002.obj>
More information about the ffmpeg-devel
mailing list