Developer discussion and patch submissions only!
Forum rules
This forum is for developer discussion and patch submission only.
-
davidfstr
- Regular User
- Posts: 149
- Joined: Sun Apr 12, 2009 7:41 pm
Post
by davidfstr » Mon May 24, 2010 6:50 am
I've written up all of my notes that I took while learning HandBrake. I imagine they will assist new would-be contributors to the project. May also be useful reference for regulars.
Embedded links:
See any errors?
What would be the best way to post this? Convert to Trac?
-
s55
- HandBrake Team
- Posts: 9002
- Joined: Sun Dec 24, 2006 1:05 pm
Post
by s55 » Mon May 24, 2010 6:55 am
Source Code Layout:
* build/
o contrib/ (External libraries that HB depends on)
* gtk/ (Windows GUI)
* libhb/ (HandBrake Core)
* macosx/ (Mac GUI)
* qt4/ (Linux GUI)
* test/ (Command Line Interface)
WinGui is in the Win/C# Folder, not GTK.
GTK is the Linux GUI
GT4 is an abandoned Linux GUI that hasn't been updated in a very long time.
-
JohnAStebbins
- HandBrake Team
- Posts: 5096
- Joined: Sat Feb 09, 2008 7:21 pm
Post
by JohnAStebbins » Mon May 24, 2010 2:57 pm
1/90000 sec ticks were chosen because this is the timebase defined by the mpeg spec for timestamps in program streams and handbrake was originally only for transcoding DVD's which are program streams.
Thanks for the docs

-
dynaflash
- Veteran User
- Posts: 3820
- Joined: Thu Nov 02, 2006 8:19 pm
Post
by dynaflash » Mon May 24, 2010 3:03 pm
wow, nice. I also like it. Especially the pic of the hand written notes !
-
eddyg
- Veteran User
- Posts: 798
- Joined: Mon Apr 23, 2007 3:34 am
Post
by eddyg » Tue May 25, 2010 1:58 am
Good stuff, thanks for that.
As for libsamplerate - it's used (no big surprise here) for changing the sample rate of the audio
This is when the input sample rate (in khz) is different to what you need it in the output, I use it to upsample flash video audio for kids snippets from 22Khz up to 48Khz, which (to my ear) sounds better due to some clever interpolation that libsamplerate does.
Cheers, Ed.
-
davidfstr
- Regular User
- Posts: 149
- Joined: Sun Apr 12, 2009 7:41 pm
Post
by davidfstr » Tue May 25, 2010 4:43 am
s55 wrote:
WinGui is in the Win/C# Folder, not GTK.
Well now I feel sheepish. For some reason my copy of the source that I use for browsing didn't have the win/ directory checked out.
JohnAStebbins wrote:1/90000 sec ticks were chosen because this is the timebase defined by the mpeg spec for timestamps in program streams and handbrake was originally only for transcoding DVD's which are program streams.
Updated.
eddyg wrote:As for libsamplerate - it's used (no big surprise here) for changing the sample rate of the audio
Updated.
Trac is broke? Would be cool to fix it, as I wouldn't be able to directly update any docs I create when they (inevitably) become out of date.
-
davidfstr
- Regular User
- Posts: 149
- Joined: Sun Apr 12, 2009 7:41 pm
Post
by davidfstr » Wed Jun 02, 2010 7:21 am
Have Trac access now. (Thanks jbrjake!)
So I'll work on integrating this into the Trac in the next day or two.
-
davidfstr
- Regular User
- Posts: 149
- Joined: Sun Apr 12, 2009 7:41 pm
Post
by davidfstr » Thu Jun 03, 2010 7:55 am
Finished converted the guide to Trac. After a good 2 hours of work...
Reachable via:
A tad deep. Would it make sense to surface this directly on the "Technical Documents" page?
Update: Nah. It's probably fine.
-
davidfstr
- Regular User
- Posts: 149
- Joined: Sun Apr 12, 2009 7:41 pm
Post
by davidfstr » Sat Jun 05, 2010 10:31 pm
Rodeo wrote:cfr means constant framerate, not constant bitrate (and AVI requires constant framerate).
Fixed.
Rodeo wrote:Unless that's also part of what should amuse us?

Hehe. Speaking of amusements, I'll be adding some actual excerpts from the code soon - to cater to our users who wouldn't otherwise look.