| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch enhances the filter objects. The 2 key improvements are:
1. A filter can change the image dimensions as frames pass through it.
2. A filter can output more than one frame.
In addition, I have:
Moved cropping & scalling into a filter object
Added 90 degree rotation to the rotate filter
Moved subtitle burn-in rendering to a filter object.
Moved VFR/CFR handling into a framerate shaping filter object.
Removed render.c since all it's responsibilities got moved to filters.
Improves VOBSUB and SSA subtitle handling. Allows subtitle animations.
SSA karaoke support.
My apologies in advance if anything breaks ;)
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4546 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
A new obfuscation technique it to add UDF-16 filenames that have junk in
the high byte and things like "VIDEO_TS.IFO" in the low byte.
libdvdread throws away the high byte which results in references to the
bogus copy of the file.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4252 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
Add detection of fake menus. Some menus have very short duration and/or
are hidden from the user by making the hightlight transparent. These
menus can lead to invalid titles if traversed, so ignore them.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4096 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
| |
Improve detection of fake titles that are transitioned through on the
way to the real title when a menu button is pressed.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4095 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4090 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4088 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
| |
There is a field in the prohibited user operations PCI flags that
says when the user can push buttons. If they are prohibited, we
shouldn't push them when searching for the main feature since they
would not be accessible on a dvd player.
This fixes selection of "fake" titles on some discs.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4085 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
This lets us see in the logs if it finds a root menu title, a title menu title,
or falls back to using the longest title. Log level 2 must be enabled to
see these.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4084 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4055 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
TrueHD and DTS-HD now show up in the audio list along side their
AC-3 and DTS counterparts.
Note that currently the DTS-HD decoder we are using (ffmpeg) discards
the HD portion of the stream and onle decodes the DTS core portion. So
there is no advantage yet to using the DTS-HD stream. In the future
I would like to add DTS-HD passthru support and hopefully ffmpeg will
improve their DTS-HD decoder.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3950 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
| |
1) whenever we log audio->id or subtitle->id using hex formatting, precede
the hex with 0x (which was already done in some places but not others)
2) format audio->id as hex instead of decimal in sync.c (makes it much easier
to see which track "went backwards" or had silence added to it, checking
the job configuration logged by work.c)
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3898 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
| |
Loops in titles of only a single chapter were not being detected.
We now also check the cell number for loops.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3796 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
| |
good blocks instead of jumping to the end of cell after encountering
bad blocks. Changed handling of libdvdnav to not abort after just 10
failures, however it will still jump to end of cell, I couldn't see
how to scan forward for good blocks.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3695 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3649 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Unencrypted BD directory trees only. Doesn't support iso images.
Also, no PGS subtitle support yet.
Chapters and angles are supported.
Adds a new contrib libbluray.
Adds new option to hb_scan() for duration of short titles to filter.
This applies to BD and DVD multi-title scans only. Does not apply
to any single title scans.
Fixes memory leak during scan. hb_buffer_close() was not freeing
all buffers in a chain of buffers passed to it.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3510 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
implementation.
- Patch by davidfstr, Nice Work!
- Adds support for reading VOB subtitle tracks from file inputs.
Tested with:
- MKV VOB -> MKV VOB passthru.
- MKV VOB -> MKV VOB burned in.
VOB subtitle palette moved from per-title to per-track.
Discussion leading up to commit can be referenced here: http://forum.handbrake.fr/viewtopic.php?f=4&t=16267
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3308 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
and fix a couple more corner case titles.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3246 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
| |
scans the dvd menus and presses buttons to see where they might lead.
when a button press leads to a title, i check to see if it is the
longest seen thus far and save it's index.
this only applies when dvdnav is enabled. when dvdread is in use,
the longest title of all the titles is flagged as the "main feature"
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3245 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
| |
title changes seem to confuse the vm sometimes. so do a dvdnav_reset
whenever a title change is going to happen.
Also, fix dvdnav_reset since it would deadlock on a mutex when called.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3240 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
| |
The code that was in place to handle this did not allow for the
possibility that there could be sector gaps between the segments
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3098 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
the error count was being reset on dvdnav events that didn't involve
any actual reading. So we got caught in an very long loop alternating
between read failures and valid events.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3022 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
| |
When a directory is specified as the source, first we attempt to open as a dvd,
then if that fails, we attempt to open each file in the directory as a stream
source. Since opening a large directory of files can take a really long time,
you can also now cancel a scan.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2980 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
| |
message. Repeats will be counted and presented as a count when 1 second has elapsed since the first error of a sequence, or an error message with a different string.
Also modified dvdnav to use hb_error() to take advantage of the limiting.
This works around a real bug from dvdnav where the Mac GUI becomes unresponsive during the output of large numbers of errors.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2971 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
| |
Removed the code that dropped titles if there was no audio.
Do not add a default audio track in the CLI if there are no audios in the source
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2822 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
- patch libdvdnav seek to guarantee the position will move forward when making
a seek request to a position that is after the current position
- when a read error is detected, seek forward and retry.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2815 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
Read and log the region mask of the DVD drive.
We get the occasional linux user that has an unset region. Logging
the region will help isolate the problem more quickly.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2675 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
- revert read error recovery
Attempting to seek one sector forward doesn't work. dvdnav rounds the seek
request *down* to the nearest vobu. So the seek actually goes backwards.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2644 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
| |
- a single read error was causing early encode termination.
try to continue reading at next sector on an error.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2639 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2619 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
| |
- fixed ports.c to use a more portable method of getting integral pthread_t representation; resolves mingw crash.
- added GCC attribute to generate compiler warnings for invalid usage of hb_log, hb_deep_log and hb_errror;
see new macro HB_WPRINTF(s,v) in common.h.
- fixed various invalid usage of above functions on osx i386/x86_64, and mingw.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2618 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
signedness.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2612 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
otherwise, we don't get the initial chapter marker event
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2528 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
d->chapter needs to be initialized in hb_dvdnav_start. chapter loop detection
was triggering on chapters from previous title scans
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2527 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
which makes HB encode forever. If we move to an earlier chapter say we're done.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2499 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- when doing an indepth scan, do not scan CC tracks
- separate subtitle configureation attributes into separate
hb_subtitle_config_t. Add an instance of this to hb_job_t for
setting the attributes of the subtitle found through an indepth scan
- Add a default_track flag to hb_subtitle_config_t that tells the muxer
that the track should be flaged as the default. muxmkv uses this.
- When an indepth scan is complete, check to see if the autoselected
subtitle matchces (by id) one of the manually selected subtitles.
If a match is found, the autoselected subtitle with all the attributes
the user assigned to it replaces the manually selected subtitle.
- LinGui: Add "Default" column to subtitle tab. This is a radio that lets
the user choose which subtitle should be displayed by default.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2468 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2457 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- new libmkv 0.6.4 with subtitle track support
- muxmkv supports vobsub and closed caption subtitles
- added subtitle format, source, and dest initialization to dvdnav
- moved subtitle_force flag into hb_subtitle_t struct as it needs to
be settable per subtitle
- gtk ui added subtitle tab which allows selection of multiple subtitles
- reorgainize subtitle sync code to prevent dropping of subtitles when
multiple subtitles are enabled
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2428 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
detection array too small. Thanks to JAS for pointing out the problem!
- Fix bonehead error in pgc-relative offset calculation that broke seeking for titles with one pgc (e.g., almost everything).
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2423 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
| |
http://forum.handbrake.fr/viewtopic.php?f=5&t=10678&p=55575&hilit=genesis#p55620).
- Make pgcn_map local rather than static since there can be simultaneous scans from both GUI and queue service threads and statics aren't thread safe. Also make map 32 bytes since standard allows only 255 PGCs per title.
- Fix minor bugs in NextPgcn (used pgcn rather than next_pgcn so tested wrong bit) and dvdnav_seek (missing 'break' & extraneous 'while').
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2420 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
| |
- looks for ptt with longest pgc sequence instead of just picking first ptt
solves many 'short title' problems
- constructs chapters from the pg's within the pgc's instead of using ptt's
solve the problem of ptt's that point to an intro pgc instead of
to the actual chapter position in the title.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2361 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
| |
when the vm enters the stopped state, there's no way to recover
you must close and re-open dvdnav. dvdnav_reset() doesn't help.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2360 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
emulates the vm of a dvd player in order to navigate the disc more reliably
it is optional and disabled by default
CLI option '--dvdnav' enables. GUI's have a new option in preferences.
When dvdnav is enabled, you can also select angles (cli '--angle')
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2355 b64f7644-9d1e-0410-96f1-a4d463321fa5
|