Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. Domains: forum.doom9.org / forum.doom9.net / forum.doom9.se |
|
|
#81 | Link | |
|
HDConvertToX author
Join Date: Nov 2003
Location: Cesena,Italy
Posts: 6,552
|
Quote:
BHH
__________________
HDConvertToX: your tool for BD backup MultiX264: The quick gui for x264 AutoMen: The Mencoder GUI AutoWebM: supporting WebM/VP8 |
|
|
|
|
|
|
#84 | Link |
|
Registered User
Join Date: Mar 2008
Posts: 30
|
I'm sure size/duration works for the general case, but if you've ever looked at the code for the MeGUI bitrate calculator (which, in my experience has been somewhat more accurate than my own calculations), its not that simple. I'm not sure if it got into this patch, but someone suggested output.write_frame return the amount of new data written (or the written size of the frame?), which would make a --size option most accurate to implement, although I probably wouldn't want it committed.
Anyways, congrats on getting this done
|
|
|
|
|
|
#86 | Link |
|
Spinner of yarns
Join Date: May 2009
Posts: 164
|
MSYS/MinGW32 (for static build)
pthreads-win32 (2.9.0.0 autostatic) Patch this. Code:
make clean GC-autostatic cp libpthreadGC2.a /usr/local/lib cp pthread.h sched.h semaphore.h /usr/local/include ffmpeg (rev21392) and libswscale (rev30392) Note: If you didn't build pthreads-win32 as autostatic, remove --enable-pthreads. If you built it as autostatic, patch this. Code:
./configure --enable-pthreads --enable-gpl --enable-postproc --enable-memalign-hack --enable-runtime-cpudetect --disable-devices --disable-filters --disable-encoders --disable-muxers --disable-network --disable-decoder=aac,ac3,adpcm_*,alac,als,ape,atrac?,cook,dca,dsicinaudio,dxa,eac3,flac,interplay_dpcm,mlp,mp1,mp2,mp3,mp3*,mpc?,pcm_*,qcelp,ra_*,sipr,truehd,truespeech,tta,vorbis,wavpack,wma*,twinvq --disable-demuxer=aac,ac3,pcm_*,ape,amr,ass,au,avs,dts,eac3,flac,mp3,mpc,mpc8,truehd,tta,w64,wav,wv --disable-parser=aac,ac3,dca,mlp,mpegaudio --prefix=/usr/local --extra-cflags="-I/usr/local/include" --extra-ldflags="-L/usr/local/lib" make make install ffms2 (rev262) Requirments: zlib, bzip2, cmake <--- install them in /usr/local Patch this. Code:
cmake -G "MSYS Makefiles" make cp include/ffms.h /usr/local/include cp libFFMS2.a /usr/local/lib x264 Code:
./configure --extra-cflags="-I/usr/local/include" --extra-ldflags="-L/usr/local/lib" make
__________________
僕と契約して、L-SMASH developerになってよ! L-SMASH | L-SMASH Works | Opus-in-ISOBMFF specification and reference software Last edited by VFR maniac; 24th January 2010 at 06:44. |
|
|
|
|
|
#87 | Link |
|
Software Developer
![]() Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,275
|
You need to specify a target bitrate also for the first pass if a 2-Pass encode, so you'd need to know the total number of frames before the first pass.
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊ |
|
|
|
|
|
#88 | Link |
|
.
![]() Join Date: Oct 2001
Location: Germany
Posts: 7,853
|
Since 'LAVF/FFMS input support, native VFR timestamp handling' made it into the git repository I wanted to ask:
Does this feature provide any benefit over piping to x264 with ffmpeg/mencoder? (aside from the point of not needing an external decoder to pipe to x264) |
|
|
|
|
|
#90 | Link |
|
.
![]() Join Date: Oct 2001
Location: Germany
Posts: 7,853
|
yes, but does x264 profit from the timestamps? iirc (not too sure) decoding a vfr source with ffmpeg/mencoder should result in a cfr output with duplicated frames and since the frames should be exact duplicates it shouldn't harm compression so it seems like it might be the question is x264 can detect duplicate frames and 'create vfr output' (not code duplicates and adjust the timestamps accordingly).
Cu Selur |
|
|
|
|
|
#91 | Link | |
|
x264 developer
Join Date: Sep 2005
Posts: 8,666
|
Quote:
|
|
|
|
|
|
|
#93 | Link | |
|
x264 developer
Join Date: Sep 2005
Posts: 8,666
|
Quote:
Do note that using --fps in x264 does not force CFR at the moment when dealing with VFR input: we will change that in a future patch. Also note that x264 WILL NEVER DROP FRAMES currently: it has no internal sync system, so you can't convert VFR->CFR. "Forcing CFR" just changes the timestamps on existing frames, potentially losing sync. |
|
|
|
|
|
|
#95 | Link |
|
Registered User
Join Date: Apr 2008
Posts: 1,181
|
Hi DS,
Code:
- pic.i_pts = (int64_t)i_frame * param->i_fps_den; + if( !param->b_vfr_input ) + pic.i_pts = i_frame; |
|
|
|
|
|
#99 | Link | |
|
x264 developer
Join Date: Sep 2005
Posts: 8,666
|
Quote:
This means that if the pts of frames are: 0, 1, 2, 3, 4, 5... And the fps is: 24000/1001 The frames' times, in seconds, are: 0/24000, 1001/24000, 2002/24000, 3003/24000, 4004/24000, 5005/24000... |
|
|
|
|
|
|
#100 | Link | |
|
Registered User
Join Date: Apr 2008
Posts: 1,181
|
Quote:
VFR input module should let i_timebase_num = 1 and i_timebase_den = i_fps_den, and let each i_pts = real_timestamp * i_timebase_den Right? |
|
|
|
|
![]() |
| Tags |
| beta, ffmpegsource, libavformat, test, x264 |
| Thread Tools | Search this Thread |
| Display Modes | |
|
|