Hi,
zhentan feng wrote:
2008/3/25, Baptiste Coudurier <baptiste.coudurier@smartjog.com>:
Hi,
zhentan feng wrote:
2008/3/25, Michael Niedermayer <michaelni@gmx.at>:
On Tue, Mar 25, 2008 at 11:57:16AM +0800, zhentan feng wrote:
2008/3/25, Michael Niedermayer <michaelni@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
2008/3/26, Baptiste Coudurier <baptiste.coudurier@smartjog.com>: patches may not totally reflect the all changes ,so I attach the integrity patch named "TSMuxer_soc_patch.patch" to check.
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~