[xiph-commits] r15535 - in trunk/ffmpeg2theora: . src
j at svn.xiph.org
j at svn.xiph.org
Wed Nov 26 05:53:40 PST 2008
Author: j
Date: 2008-11-26 05:53:39 -0800 (Wed, 26 Nov 2008)
New Revision: 15535
Modified:
trunk/ffmpeg2theora/
trunk/ffmpeg2theora/src/ffmpeg2theora.c
trunk/ffmpeg2theora/src/ffmpeg2theora.h
trunk/ffmpeg2theora/src/theorautils.c
trunk/ffmpeg2theora/src/theorautils.h
Log:
output frotend status to file, for forntends that can not read stdout
Property changes on: trunk/ffmpeg2theora
___________________________________________________________________
Name: bzr:revision-info
- timestamp: 2008-11-10 18:39:21.171999931 +0100
committer: j
properties:
branch-nick: ffmpeg2theora
+ timestamp: 2008-11-22 16:06:42.303999901 +0100
committer: j
properties:
branch-nick: ffmpeg2theora
Name: bzr:file-ids
- src/ffmpeg2theora.c 6863 at 0101bb08-14d6-0310-b084-bc0e0c8e3800:trunk%2Fffmpeg2theora:ffmpeg2theora.c
src/ffmpeg2theora.h ffmpeg2theora.h-20080523174200-q6z54q34pgkgpz50-1
+ src/ffmpeg2theora.c 6863 at 0101bb08-14d6-0310-b084-bc0e0c8e3800:trunk%2Fffmpeg2theora:ffmpeg2theora.c
src/ffmpeg2theora.h ffmpeg2theora.h-20080523174200-q6z54q34pgkgpz50-1
src/theorautils.c 6863 at 0101bb08-14d6-0310-b084-bc0e0c8e3800:trunk%2Fffmpeg2theora:theorautils.c
src/theorautils.h 6863 at 0101bb08-14d6-0310-b084-bc0e0c8e3800:trunk%2Fffmpeg2theora:theorautils.h
Name: bzr:text-parents
- src/ffmpeg2theora.c j-20081105204931-zah2kekajc2u9czu
src/ffmpeg2theora.h j-20081010134449-4i1ak9vg1yv4ix53
+ src/theorautils.c j-20080921104137-otk3xx827h5cofwl
src/theorautils.h j-20080921104137-otk3xx827h5cofwl
Name: bzr:revision-id:v3-single1-dHJ1bmsvZmZtcGVnMnRoZW9yYQ..
- 191 j-20080517230830-he5x8v2m8yrfiw35
192 j-20080518224037-pkmoctzf4qce7tog
193 j-20080518224409-6hbfp3k2ssn6egqa
194 j-20080520111939-dhi52qwbqe7a47cu
195 j-20080523092252-gj9k9db0s67vl7dw
196 j-20080523092420-l0850yrq1qkgz9t0
197 j-20080523093057-l5g0ezzy5geu0pey
198 j-20080523094343-kcno1dm2e1lr38q4
199 j-20080523163006-kjl6ewea5sxawmq2
200 j-20080523165904-l2vm52qae0hlqkhp
201 j-20080523175432-2ed953iktnl8c7cr
202 j-20080525100939-7oja8pk08v9fquiw
203 j-20080526111321-nhzaqh6ivzn0vs7b
204 j-20080527100851-2v5eyxxrq1riqi50
205 j-20080527101341-9ynbgth2b15jw792
206 j-20080527205556-19tffvfrxgt3khld
207 j-20080527205840-zeestdde3v1zks9k
208 j-20080527210129-e73y56uwmzbcid00
209 j-20080527211813-5ll680ed1q4byp16
210 j-20080528102006-aeippim0tn70mz3f
211 j-20080528104907-40kiidjojvta8j61
212 j-20080528111329-vkqbt7xkat2o9h4z
213 j-20080529102940-q9xdwm5v9espzomv
214 j-20080529111405-nmh99aon1kmh22qm
215 j-20080530094948-ncq064s4uggd9z95
216 j-20080530095056-hko2vjfwipikwjyu
217 j-20080530171822-bab8sy8lpotf8081
218 j-20080603170442-v0pxspvfcucvsaex
219 j-20080617110355-xwbeg1xidmv8fubp
220 j-20080617110518-khqlhaan52kz3lii
221 j-20080723194934-63m20dc3zmkhwj4o
222 j-20080724140108-ntgbrk6913nvtk4b
223 j-20080802221321-3fcp0s6rehryx0n5
224 j-20080802221340-0s6mh8llk6nyon5d
225 j-20080901112127-tyeax385hwukjt13
226 j-20080915075112-fg3yc8radbplosnc
227 j-20080921103515-w89p8jqwt3oq5u20
228 j-20080921103703-prnl3ls2f6u4g177
229 j-20080921104137-otk3xx827h5cofwl
230 j-20080921104242-dswny7jm93stokej
231 j-20081001102101-rl2rf1x9u8e5zrqk
232 j-20081001103246-0uwni13nt5b2mqyw
233 j-20081001104039-68e6rbv58e743plv
234 j-20081001111423-31lxb69fs7023eqi
235 j-20081001112345-eo9e3eheszd68pkb
236 j-20081002180939-vwdafec5iu2ihyq6
237 j-20081003143408-49wdpdkvhnf719rq
238 j-20081003153911-nh2fzqikxgbm7tuk
239 j-20081006092929-7kh3399r2tkat0x8
240 j-20081006120928-dqhlormykse02wss
241 j-20081010131634-o5sswtynyozb0dmb
242 j-20081010134449-4i1ak9vg1yv4ix53
243 j-20081010154655-55t7kuwhmo8964ya
244 j-20081010171055-w0wdhrrxucgdpvn1
245 j-20081016143100-chii7fl38ao2h6rd
246 j-20081105200328-iez493l5o7o333ae
247 j-20081105202607-3vjd88uf5rgna3pi
248 j-20081105204931-zah2kekajc2u9czu
249 j-20081110173803-i116mo4960rnmsqt
250 j-20081110173921-b79zigtpvfvowzd6
+ 191 j-20080517230830-he5x8v2m8yrfiw35
192 j-20080518224037-pkmoctzf4qce7tog
193 j-20080518224409-6hbfp3k2ssn6egqa
194 j-20080520111939-dhi52qwbqe7a47cu
195 j-20080523092252-gj9k9db0s67vl7dw
196 j-20080523092420-l0850yrq1qkgz9t0
197 j-20080523093057-l5g0ezzy5geu0pey
198 j-20080523094343-kcno1dm2e1lr38q4
199 j-20080523163006-kjl6ewea5sxawmq2
200 j-20080523165904-l2vm52qae0hlqkhp
201 j-20080523175432-2ed953iktnl8c7cr
202 j-20080525100939-7oja8pk08v9fquiw
203 j-20080526111321-nhzaqh6ivzn0vs7b
204 j-20080527100851-2v5eyxxrq1riqi50
205 j-20080527101341-9ynbgth2b15jw792
206 j-20080527205556-19tffvfrxgt3khld
207 j-20080527205840-zeestdde3v1zks9k
208 j-20080527210129-e73y56uwmzbcid00
209 j-20080527211813-5ll680ed1q4byp16
210 j-20080528102006-aeippim0tn70mz3f
211 j-20080528104907-40kiidjojvta8j61
212 j-20080528111329-vkqbt7xkat2o9h4z
213 j-20080529102940-q9xdwm5v9espzomv
214 j-20080529111405-nmh99aon1kmh22qm
215 j-20080530094948-ncq064s4uggd9z95
216 j-20080530095056-hko2vjfwipikwjyu
217 j-20080530171822-bab8sy8lpotf8081
218 j-20080603170442-v0pxspvfcucvsaex
219 j-20080617110355-xwbeg1xidmv8fubp
220 j-20080617110518-khqlhaan52kz3lii
221 j-20080723194934-63m20dc3zmkhwj4o
222 j-20080724140108-ntgbrk6913nvtk4b
223 j-20080802221321-3fcp0s6rehryx0n5
224 j-20080802221340-0s6mh8llk6nyon5d
225 j-20080901112127-tyeax385hwukjt13
226 j-20080915075112-fg3yc8radbplosnc
227 j-20080921103515-w89p8jqwt3oq5u20
228 j-20080921103703-prnl3ls2f6u4g177
229 j-20080921104137-otk3xx827h5cofwl
230 j-20080921104242-dswny7jm93stokej
231 j-20081001102101-rl2rf1x9u8e5zrqk
232 j-20081001103246-0uwni13nt5b2mqyw
233 j-20081001104039-68e6rbv58e743plv
234 j-20081001111423-31lxb69fs7023eqi
235 j-20081001112345-eo9e3eheszd68pkb
236 j-20081002180939-vwdafec5iu2ihyq6
237 j-20081003143408-49wdpdkvhnf719rq
238 j-20081003153911-nh2fzqikxgbm7tuk
239 j-20081006092929-7kh3399r2tkat0x8
240 j-20081006120928-dqhlormykse02wss
241 j-20081010131634-o5sswtynyozb0dmb
242 j-20081010134449-4i1ak9vg1yv4ix53
243 j-20081010154655-55t7kuwhmo8964ya
244 j-20081010171055-w0wdhrrxucgdpvn1
245 j-20081016143100-chii7fl38ao2h6rd
246 j-20081105200328-iez493l5o7o333ae
247 j-20081105202607-3vjd88uf5rgna3pi
248 j-20081105204931-zah2kekajc2u9czu
249 j-20081110173803-i116mo4960rnmsqt
250 j-20081110173921-b79zigtpvfvowzd6
251 j-20081122150642-x51oi8he4clq62kw
Modified: trunk/ffmpeg2theora/src/ffmpeg2theora.c
===================================================================
--- trunk/ffmpeg2theora/src/ffmpeg2theora.c 2008-11-25 23:57:54 UTC (rev 15534)
+++ trunk/ffmpeg2theora/src/ffmpeg2theora.c 2008-11-26 13:53:39 UTC (rev 15535)
@@ -59,7 +59,7 @@
CROPRIGHT_FLAG,
CROPLEFT_FLAG,
ASPECT_FLAG,
- XY_FLAG,
+ MAXSIZE_FLAG,
INPUTFPS_FLAG,
AUDIOSTREAM_FLAG,
SUBTITLES_FLAG,
@@ -69,6 +69,7 @@
SUBTITLES_IGNORE_NON_UTF8_FLAG,
VHOOK_FLAG,
FRONTEND_FLAG,
+ FRONTENDFILE_FLAG,
SPEEDLEVEL_FLAG,
PP_FLAG,
NOSKELETON
@@ -168,7 +169,7 @@
this->aspect_numerator=0;
this->aspect_denominator=0;
this->frame_aspect=0;
- this->xy_max=-1;
+ this->max_size=-1;
this->deinterlace=0; // auto by default, if input is flaged as interlaced it will deinterlace.
this->vhook=0;
this->framerate_new.num = -1;
@@ -311,10 +312,10 @@
AVCodecContext *enc = this->context->streams[this->audiostream]->codec;
if (enc->codec_type == CODEC_TYPE_AUDIO) {
this->audio_index = this->audiostream;
- fprintf(stderr," Using stream #0.%d as audio input\n",this->audio_index);
+ fprintf(stderr, " Using stream #0.%d as audio input\n",this->audio_index);
}
else {
- fprintf(stderr," The selected stream is not audio, falling back to automatic selection\n");
+ fprintf(stderr, " The selected stream is not audio, falling back to automatic selection\n");
}
}
@@ -458,7 +459,7 @@
}
}
- if(this->xy_max > 0){
+ if(this->max_size > 0){
int width = venc->width-this->frame_leftBand-this->frame_rightBand;
int height = venc->height-this->frame_topBand-this->frame_bottomBand;
if(venc->sample_aspect_ratio.den!=0 && venc->sample_aspect_ratio.num!=0) {
@@ -467,12 +468,12 @@
if(this->frame_aspect == 0)
this->frame_aspect = (float)width/height;
if(width > height) {
- this->picture_width = this->xy_max;
- this->picture_height = this->xy_max / this->frame_aspect;
+ this->picture_width = this->max_size;
+ this->picture_height = this->max_size / this->frame_aspect;
this->picture_height = this->picture_height + this->picture_height%2;
} else {
- this->picture_height = this->xy_max;
- this->picture_width = this->xy_max * this->frame_aspect;
+ this->picture_height = this->max_size;
+ this->picture_width = this->max_size * this->frame_aspect;
this->picture_width = this->picture_width + this->picture_width%2;
}
}
@@ -525,17 +526,17 @@
(this->aspect_denominator*this->picture_height);
}
if(this->aspect_denominator && frame_aspect){
- fprintf(stderr," Pixel Aspect Ratio: %.2f/1 ",(float)this->aspect_numerator/this->aspect_denominator);
- fprintf(stderr," Frame Aspect Ratio: %.2f/1\n",frame_aspect);
+ fprintf(stderr, " Pixel Aspect Ratio: %.2f/1 ",(float)this->aspect_numerator/this->aspect_denominator);
+ fprintf(stderr, " Frame Aspect Ratio: %.2f/1\n",frame_aspect);
}
if (this->deinterlace==1)
- fprintf(stderr," Deinterlace: on\n");
+ fprintf(stderr, " Deinterlace: on\n");
if (strcmp(this->pp_mode, "")) {
ppContext = pp_get_context(venc->width, venc->height, PP_FORMAT_420);
ppMode = pp_get_mode_by_name_and_quality(this->pp_mode, PP_QUALITY_MAX);
- fprintf(stderr," Postprocessing: %s\n", this->pp_mode);
+ fprintf(stderr, " Postprocessing: %s\n", this->pp_mode);
}
if(!this->picture_width)
@@ -564,23 +565,23 @@
this->frame_width, this->frame_height, this->pix_fmt,
sws_flags, NULL, NULL, NULL
);
- fprintf(stderr," Resize: %dx%d",venc->width,venc->height);
+ fprintf(stderr, " Resize: %dx%d",venc->width,venc->height);
if(this->frame_topBand || this->frame_bottomBand ||
this->frame_leftBand || this->frame_rightBand){
- fprintf(stderr," => %dx%d",
+ fprintf(stderr, " => %dx%d",
venc->width-this->frame_leftBand-this->frame_rightBand,
venc->height-this->frame_topBand-this->frame_bottomBand);
}
if(this->picture_width != (venc->width-this->frame_leftBand - this->frame_rightBand)
|| this->picture_height != (venc->height-this->frame_topBand-this->frame_bottomBand))
- fprintf(stderr," => %dx%d",this->picture_width, this->picture_height);
- fprintf(stderr,"\n");
+ fprintf(stderr, " => %dx%d",this->picture_width, this->picture_height);
+ fprintf(stderr, "\n");
}
lut_init(this);
}
if (this->framerate_new.num > 0 && this->fps != (double)this->framerate_new.num / this->framerate_new.den) {
- fprintf(stderr," Resample Framerate: %0.2f => %0.2f\n",
+ fprintf(stderr, " Resample Framerate: %0.2f => %0.2f\n",
this->fps, (double)this->framerate_new.num / this->framerate_new.den);
}
if (this->audio_index >= 0){
@@ -603,9 +604,9 @@
if(this->sample_rate != aenc->sample_rate || this->channels != aenc->channels){
this->audio_resample_ctx = audio_resample_init (this->channels,aenc->channels,this->sample_rate,aenc->sample_rate);
if(this->sample_rate!=aenc->sample_rate)
- fprintf(stderr," Resample: %dHz => %dHz\n",aenc->sample_rate,this->sample_rate);
+ fprintf(stderr, " Resample: %dHz => %dHz\n",aenc->sample_rate,this->sample_rate);
if(this->channels!=aenc->channels)
- fprintf(stderr," Channels: %d => %d\n",aenc->channels,this->channels);
+ fprintf(stderr, " Channels: %d => %d\n",aenc->channels,this->channels);
}
else{
this->audio_resample_ctx=NULL;
@@ -769,7 +770,7 @@
if (this->framerate_new.num > 0) {
double framerate_new = (double)this->framerate_new.num / this->framerate_new.den;
framerate_add = framerate_new/this->fps;
- //fprintf(stderr,"calculating framerate addition to %f\n",framerate_add);
+ //fprintf(stderr, "calculating framerate addition to %f\n",framerate_add);
this->fps = framerate_new;
}
@@ -778,7 +779,7 @@
no_samples = this->sample_rate * (this->end_time - this->start_time);
if((info.audio_only && this->end_time > 0 && no_samples <= 0)
|| (!info.audio_only && this->end_time > 0 && no_frames <= 0)){
- fprintf(stderr,"End time has to be bigger than start time.\n");
+ fprintf(stderr, "End time has to be bigger than start time.\n");
exit(1);
}
/* main decoding loop */
@@ -866,7 +867,7 @@
}
if(frame->interlaced_frame || this->deinterlace){
if(avpicture_deinterlace((AVPicture *)output,(AVPicture *)output_tmp,this->pix_fmt,venc->width,venc->height)<0){
- fprintf(stderr,"Deinterlace failed.\n");
+ fprintf(stderr, "Deinterlace failed.\n");
exit(1);
}
}
@@ -1181,7 +1182,7 @@
" --speedlevel [0 2] encoding is faster with higher values the cost is quality and bandwidth\n"
" -x, --width scale to given width (in pixels)\n"
" -y, --height scale to given height (in pixels)\n"
- " --xy scale output frame to be withing box of \n"
+ " --max_size scale output frame to be withing box of \n"
" given size (in pixels)\n"
" --aspect define frame aspect ratio: i.e. 4:3 or 16:9\n"
" -F, --framerate output framerate e.g 25:2 or 16\n"
@@ -1303,7 +1304,7 @@
{"format",required_argument,NULL,'f'},
{"width",required_argument,NULL,'x'},
{"height",required_argument,NULL,'y'},
- {"xy",required_argument,&flag,XY_FLAG},
+ {"max_size",required_argument,&flag,MAXSIZE_FLAG},
{"videoquality",required_argument,NULL,'v'},
{"videobitrate",required_argument,NULL,'V'},
{"audioquality",required_argument,NULL,'a'},
@@ -1345,6 +1346,7 @@
{"optimize",0,&flag,OPTIMIZE_FLAG},
{"speedlevel",required_argument,&flag,SPEEDLEVEL_FLAG},
{"frontend",0,&flag,FRONTEND_FLAG},
+ {"frontendfile",required_argument,&flag,FRONTENDFILE_FLAG},
{"artist",required_argument,&metadata_flag,10},
{"title",required_argument,&metadata_flag,11},
@@ -1421,9 +1423,14 @@
flag = -1;
break;
case FRONTEND_FLAG:
- info.frontend = 1;
+ info.frontend = stderr;
flag = -1;
break;
+ case FRONTENDFILE_FLAG:
+ fprintf(stderr, "set output: %s!!!\n", optarg);
+ info.frontend = fopen(optarg, "w");
+ flag = -1;
+ break;
/* crop */
case CROPTOP_FLAG:
convert->frame_topBand = crop_check(convert,"top",optarg);
@@ -1445,8 +1452,8 @@
convert->frame_aspect = aspect_check(optarg);
flag = -1;
break;
- case XY_FLAG:
- convert->xy_max = atoi(optarg);
+ case MAXSIZE_FLAG:
+ convert->max_size = atoi(optarg);
flag = -1;
break;
case INPUTFPS_FLAG:
@@ -1568,7 +1575,7 @@
case 'v':
convert->video_quality = rint(atof(optarg)*6.3);
if(convert->video_quality <0 || convert->video_quality >63){
- fprintf(stderr,"Only values from 0 to 10 are valid for video quality.\n");
+ fprintf(stderr, "Only values from 0 to 10 are valid for video quality.\n");
exit(1);
}
convert->video_bitrate=0;
@@ -1584,7 +1591,7 @@
case 'a':
convert->audio_quality=atof(optarg);
if(convert->audio_quality<-2 || convert->audio_quality>10){
- fprintf(stderr,"Only values from -2 to 10 are valid for audio quality.\n");
+ fprintf(stderr, "Only values from -2 to 10 are valid for audio quality.\n");
exit(1);
}
convert->audio_bitrate=0;
@@ -1592,7 +1599,7 @@
case 'A':
convert->audio_bitrate=atof(optarg)*1000;
if(convert->audio_bitrate<0){
- fprintf(stderr,"Only values >0 are valid for audio bitrate.\n");
+ fprintf(stderr, "Only values >0 are valid for audio bitrate.\n");
exit(1);
}
convert->audio_quality = -990;
@@ -1684,7 +1691,7 @@
info.speed_level = 0;
}
else{
- fprintf(stderr,"\nUnknown preset.\n\n");
+ fprintf(stderr, "\nUnknown preset.\n\n");
print_presets_info();
exit(1);
}
@@ -1694,7 +1701,7 @@
if (n) {
#ifndef _WIN32
if (nice(n)<0) {
- fprintf(stderr,"Error setting `%d' for niceness.", n);
+ fprintf(stderr, "Error setting `%d' for niceness.", n);
}
#endif
}
@@ -1732,13 +1739,13 @@
using_stdin |= !strcmp(inputfile_name, "pipe:" ) ||
!strcmp( inputfile_name, "/dev/stdin" );
- if(outputfile_set!=1){
- fprintf(stderr,"You have to specify an output file with -o output.ogv.\n");
+ if(outputfile_set != 1){
+ fprintf(stderr, "You have to specify an output file with -o output.ogv.\n");
exit(1);
}
if(convert->end_time>0 && convert->end_time <= convert->start_time){
- fprintf(stderr,"End time has to be bigger than start time.\n");
+ fprintf(stderr, "End time has to be bigger than start time.\n");
exit(1);
}
@@ -1813,26 +1820,28 @@
info.outfile = fopen(outputfile_name,"wb");
#endif
if(info.frontend) {
- fprintf(stderr, "\nf2t ;duration: %d;\n", (int)(convert->context->duration / AV_TIME_BASE));
+ fprintf(info.frontend, "\nf2t ;duration: %d;\n", (int)(convert->context->duration / AV_TIME_BASE));
+ fflush(info.frontend);
+
}
else {
dump_format (convert->context, 0,inputfile_name, 0);
}
if(convert->disable_audio){
- fprintf(stderr," [audio disabled].\n");
+ fprintf(stderr, " [audio disabled].\n");
}
if(convert->disable_video){
- fprintf(stderr," [video disabled].\n");
+ fprintf(stderr, " [video disabled].\n");
}
if(convert->sync){
- fprintf(stderr," Use A/V Sync from input container.\n");
+ fprintf(stderr, " Use A/V Sync from input container.\n");
}
convert->pts_offset =
(double) convert->context->start_time / AV_TIME_BASE;
if(!info.outfile) {
if(info.frontend)
- fprintf(stderr, "\nf2t ;result: Unable to open output file.;\n");
+ fprintf(info.frontend, "\nf2t ;result: Unable to open output file.;\n");
else
fprintf (stderr,"\nUnable to open output file `%s'.\n", outputfile_name);
return(1);
@@ -1845,7 +1854,7 @@
}
else{
if(info.frontend)
- fprintf(stderr, "\nf2t ;result: input format not suported.;\n");
+ fprintf(info.frontend, "\nf2t ;result: input format not suported.;\n");
else
fprintf (stderr,"\nUnable to decode input.\n");
return(1);
@@ -1857,13 +1866,14 @@
return(1);
}
ff2theora_close (convert);
- fprintf(stderr,"\n");
+ fprintf(stderr, "\n");
if (*pidfile_name)
unlink(pidfile_name);
if(info.frontend)
- fprintf(stderr, "\nf2t ;result: ok;\n");
-
+ fprintf(info.frontend, "\nf2t ;result: ok;\n");
+ if(info.frontend && info.frontend != stderr)
+ fclose(info.frontend);
return(0);
}
Modified: trunk/ffmpeg2theora/src/ffmpeg2theora.h
===================================================================
--- trunk/ffmpeg2theora/src/ffmpeg2theora.h 2008-11-25 23:57:54 UTC (rev 15534)
+++ trunk/ffmpeg2theora/src/ffmpeg2theora.h 2008-11-26 13:53:39 UTC (rev 15535)
@@ -53,7 +53,7 @@
ogg_int32_t aspect_numerator;
ogg_int32_t aspect_denominator;
double frame_aspect;
- int xy_max;
+ int max_size;
int pix_fmt;
int video_quality;
Modified: trunk/ffmpeg2theora/src/theorautils.c
===================================================================
--- trunk/ffmpeg2theora/src/theorautils.c 2008-11-25 23:57:54 UTC (rev 15534)
+++ trunk/ffmpeg2theora/src/theorautils.c 2008-11-26 13:53:39 UTC (rev 15535)
@@ -45,7 +45,7 @@
void init_info(oggmux_info *info) {
info->with_skeleton = 1; /* skeleton is enabled by default */
- info->frontend = 0; /*frontend mode*/
+ info->frontend = NULL; /*frontend mode*/
info->videotime = 0;
info->audiotime = 0;
info->audio_bytesout = 0;
@@ -618,12 +618,12 @@
int remaining_minutes = ((long) remaining / 60) % 60;
int remaining_hours = (long) remaining / 3600;
if(info->frontend) {
- fprintf (stderr,"\nf2t ;position: %.02lf;audio_kbps: %d;video_kbps: %d;remaining: %.02lf\n",
+ fprintf (info->frontend,"\nf2t ;position: %.02lf;audio_kbps: %d;video_kbps: %d;remaining: %.02lf\n",
timebase,
info->akbps, info->vkbps,
remaining
);
-
+ fflush (info->frontend);
}
else {
if(!remaining) {
Modified: trunk/ffmpeg2theora/src/theorautils.h
===================================================================
--- trunk/ffmpeg2theora/src/theorautils.h 2008-11-25 23:57:54 UTC (rev 15534)
+++ trunk/ffmpeg2theora/src/theorautils.h 2008-11-26 13:53:39 UTC (rev 15535)
@@ -63,7 +63,7 @@
int audio_only;
int video_only;
int with_skeleton;
- int frontend;
+ FILE *frontend;
/* vorbis settings */
int sample_rate;
int channels;
More information about the commits
mailing list