jstebbins [Thu, 1 Jan 2009 17:33:21 +0000 (17:33 +0000)]
LinGui: fix a problem with saving specific max-width/height to a preset.
Legacy UsesMaxPictureSettings tag didn't get converted properly when
new preset is based on an old preset that used it.
sr55 [Tue, 30 Dec 2008 22:47:48 +0000 (22:47 +0000)]
WinGui:
- Set Default now set's the currently selected preset to default, not the current settings.
- Add Preset can now optionally add a flag to allow saving of picture size information (just like the macgui)
jbrjake [Tue, 30 Dec 2008 21:12:02 +0000 (21:12 +0000)]
Adds --start-at-preview and --stop-at-duration and --stop-at-pts options. These correspond to the job->start_at_preview and job->pts_to_stop variables the MacGui and LinGui use to achieve live preview encodes.
While of course starting at a certain preview is not an optimal way of choosing a starting position for an encode (especially in a CLI), it is fast, and flexible. By altering the number of previews to scan with --previews, it is possible to start an encode at any percentage of the video.
sr55 [Tue, 30 Dec 2008 21:04:29 +0000 (21:04 +0000)]
WinGui:
- Preview Video setup for Encodes for any of the 10 previews that you'd find in the mac gui, for durations from 5 to 60 seconds.
- Removed some old code
dynaflash [Mon, 29 Dec 2008 15:42:39 +0000 (15:42 +0000)]
Bumps x264 from to r1063
- Many enhancements since the last r1028
- http://git.videolan.org/gitweb.cgi?p=x264.git;a=commit;h=84a1ca6ce70fe7bad4922ddc5a72c2e9cd73703b
sr55 [Sun, 28 Dec 2008 17:25:07 +0000 (17:25 +0000)]
WinGui:
- Option to hide the Query Editor tab.
- Fixed small issue with remove button on the new audio tab. Would error if no track was selected.
- Fixed an issue with the preset bar where selecting an already selected preset wouldn't reset the GUI settings for that preset.
sr55 [Sun, 21 Dec 2008 17:31:36 +0000 (17:31 +0000)]
Changes to the Cygwin section of the make file. Allows building of zip packages for official and snapshot builds of the CLI using "make official" and "make snapshot"
sr55 [Fri, 19 Dec 2008 13:57:08 +0000 (13:57 +0000)]
WinGui:
- Fixes for a few rather stupid issues with the new queue/mainwindow encode link.
- Got rid of the queue encode progress bar. It's just a pain to keep it working and doesn't really offer much.
sr55 [Wed, 17 Dec 2008 00:11:23 +0000 (00:11 +0000)]
WinGui:
- Some fixes in the new code which handles encoding across the Queue and MainWindow.
- Small UI tweaks on Activity Window and Generate Preview Window
sr55 [Tue, 16 Dec 2008 20:51:46 +0000 (20:51 +0000)]
WinGui:
- Minimize to system tray is now optional and can be set in tools > options > advanced.
- Removed the minimize to system tray button since it's not really needed. The windows minimize button performs the same task
sr55 [Tue, 16 Dec 2008 18:01:48 +0000 (18:01 +0000)]
WinGui:
- Preview Generator Window. Can generate previews form 5 to 60 seconds long. Will launch VLC (from a user specified (in options) install path) to play back the clip.
Note: Clip duration is currently waiting for a patch to the CLI, so this part won't work yet.
- Experimental in-gui VLC media player via ActiveX. (This causes a Blue Screen of Death (See comments in code), however if anyone can fix this and submit a patch, id be grateful) Alternative suggestions welcome!
dynaflash [Mon, 15 Dec 2008 15:11:49 +0000 (15:11 +0000)]
MacGui: Picture window now uses a subclass of HBController to access the main controller.
- fixed issue where preview movie keeps playing even if the picture window is closed
- Removed deprecated -ClosePanel method since we now use the windows native close button.
sr55 [Mon, 15 Dec 2008 12:58:04 +0000 (12:58 +0000)]
WinGui:
- MainWindow now uses the Queue for encoding. Essentially works the same as the MacGUI. You start an encode in either window, and the other shows the encoding status. This prevents users from starting 2 encodes at once (1 Queue, 1 Main Window)
van [Sat, 13 Dec 2008 07:43:42 +0000 (07:43 +0000)]
- have to account for a non-zero start time when we're seeking in ffmpeg files.
- try harder to get keyframes from ffmpeg files: if we've just done a seek, search the next 50 frames for a keyframe.
- detect WMV3 keyframes since ffmpeg doesn't.
van [Sat, 13 Dec 2008 06:59:50 +0000 (06:59 +0000)]
- try to determine the sample rate, channels, etc., of audio streams rather than hardwiring 48KHz & 2 channels.
- have to discard audio that starts before video time zero otherwise we desync the audio & video.
van [Sat, 13 Dec 2008 06:55:01 +0000 (06:55 +0000)]
Consolidate all the ffmpeg-related includes into libhb/hbffmpeg.h then prototype hb_avcodec_{init,open,close} so that we don't get gcc warnings from a dozen modules.
jstebbins [Fri, 12 Dec 2008 18:54:36 +0000 (18:54 +0000)]
fix a threading issue with avcodec_open/close
these functions can not be called from 2 threads simultaneosly.
made a wrapper function that holds a lock while making the call
dynaflash [Fri, 12 Dec 2008 17:31:16 +0000 (17:31 +0000)]
MacGui: Add to queue fix so that it not only checks that a file does not already exist at the destination path, but also check through the existing queue items and warn of an overwrite.
dynaflash [Fri, 12 Dec 2008 15:53:15 +0000 (15:53 +0000)]
MacGui: Add "Picture Settings" toolbar item to main window toolbar
- Currently uses the same icon as the picture item in the preferences toolbar
- Performs same function as the "Picture Settings ..." button in the video tab which is to say it opens the picture settings window
- Removed the "Picture Settings ..." button in the video tab
dynaflash [Fri, 12 Dec 2008 02:40:21 +0000 (02:40 +0000)]
MacGui: Add a preference so we can specify what we do at launch, choices are:
- Do Nothing
- Open Source
- Open Source (Title Specific)
- Pref defaults to Open Source
dynaflash [Thu, 11 Dec 2008 15:59:55 +0000 (15:59 +0000)]
MacGui: Fix destination path so that last one used in the destination choice window is saved and reused upon the next opening instead of the last destination path encoded.
- Addressed here http://forum.handbrake.fr/viewtopic.php?f=12&t=8281
van [Thu, 11 Dec 2008 01:06:43 +0000 (01:06 +0000)]
Don't reject MPEG PS files just because they're missing a SYS header (clips won't have one). The standard says we just need a PACK header followed by some other legal start code.
sr55 [Sun, 7 Dec 2008 23:24:27 +0000 (23:24 +0000)]
WinGui:
- Fixes an issue where if there are no presets, that is, the user removed them all, then the GUI would throw a null pointer exception after scanning a source.
dynaflash [Fri, 5 Dec 2008 18:20:05 +0000 (18:20 +0000)]
MacGui: Live Preview fixes
- Fix proper sizing when max source size and loose anamorphic is selected in presets
- Fix vertical alignment issue when the move height is >= the still preview height.
van [Fri, 5 Dec 2008 05:09:05 +0000 (05:09 +0000)]
More code to deal with the flakey streams from NZ TV. They like to change the PCR without sending a new PCR and we get big timestamp changes but no new reference clock. So now we look at the PTS and if its change is outside a tolerance window we use the new PTS as a PCR & declare a clock discontinuity.
sr55 [Thu, 4 Dec 2008 20:57:31 +0000 (20:57 +0000)]
libhb:
The malloc() function in cygwin doesn't return 16-byte aligned memory which causes it to randomly crash. Replaced with memalign() for the cygwin platform only.
dynaflash [Thu, 4 Dec 2008 18:58:03 +0000 (18:58 +0000)]
MacGui: correct month output in the names of the individual encode logs
- Duh! In struct tm, tm_mon is the month number from 0 to 11, so we needed to be using tm_mon + 1
dynaflash [Thu, 4 Dec 2008 16:25:42 +0000 (16:25 +0000)]
MacGui: Remove legacy preset code
- Be aware this makes an 0.9.2 or earlier presets completely deprecated 0.9.3 presets are fine (including any made with the five preceding snapshots).
- Removed almost 300 lines of code
van [Thu, 4 Dec 2008 09:24:33 +0000 (09:24 +0000)]
- validate frame sync the way the standard suggests (via checking the frame crc) rather than looking at multiple frames. This should reduce the probability of mis-identifying random junk as AC-3 to less than 1 in 2^32.
- check the crc on every frame so we don't let corrupted data into the decoder.
- interpret the PTS as per the standard (it's the time of the first frame that starts in the packet, not the time of the first byte of the packet). Incorrect interpretation was resulting in an average 15ms timing error (worse case 31ms).
- do all the PTS calculations in doubles so we don't get round-off error that will desync the audio & video with 44.1KHz audio sources (these can't appear on DVDs but do show up in avi/mkv/... files).
- don't rely on the container to give us large enough frame fragments to validate the sync (some containers split audio frames into really small pieces). Instead use the 8K of unused space in the esconfig of the audio object as an accumulation buffer.
van [Thu, 4 Dec 2008 08:22:37 +0000 (08:22 +0000)]
- Elementary streams that scan couldn't type as audio streams have to be completely ignored - some of these don't follow the normal PES packet encoding so feeding them downstream to the demuxer will cause strange timing and other problems.
- make log message correctly reflect our uncertainty about audio stream type so people don't complain about missing AC-3 audio when it isn't really there.
- add missing av_free_packet in VC-1 keyframe search.
eddyg [Tue, 2 Dec 2008 01:07:02 +0000 (01:07 +0000)]
Add metadata support to libhb, add importing of MP4 metadata, add export of MP4 metadata, add importing of MP4 chapters, add seek to chapter for input files, add new libmp4v2, remove old MP4 chapter muxing - now in libmp4v2.
dynaflash [Sun, 30 Nov 2008 05:02:38 +0000 (05:02 +0000)]
MacGui: Remove custome decomb option from preferences and Picture Settings
- Remove the text field to enter a custom decomb string in the Preferences > Picture window
- Change the NSPopup for decomb to a checkbox in Picture Settings.
dynaflash [Sun, 30 Nov 2008 04:09:33 +0000 (04:09 +0000)]
MacGui: Implement variable number of preview frames
- Set in Preferences -> Advanced and defaulted to 10
- Allows for up to 20 previews per title for now.
jbrjake [Sun, 30 Nov 2008 04:00:11 +0000 (04:00 +0000)]
Adds two new parameters to hb_scan, to control the number of preview frames generated during scan, and whether or not they're written to disk for later display. This will break any interfaces that use hb_scan until the new params are specified...sorry. Also adds a new job->seek_points setting (set this to the same as the number of previews) to be used with job->start_at_preview when doing live preview encodes, so the seek function has a frame of reference.
Wires up the CLI with a --previews option (long option only) to control the new scan parameters, and defaults the CLI to not writing previews to disk.
van [Sat, 29 Nov 2008 20:06:26 +0000 (20:06 +0000)]
Don't allow multiple decodes of the same ffmpeg audio stream. Because ffmpeg mixes stream reader state with decoder state we only have one decoder instance for the streamso multiple decode requests will garble the audio and/or cause an abort.
(Since the Universal preset specifies AC-3 passthru, using it on non-ac3 audio caused a second decode of the first audio track to be requested which triggered this bug and resulted in lots of aborts for wmv & avi conversions.)
sr55 [Sat, 29 Nov 2008 14:44:26 +0000 (14:44 +0000)]
WinGui:
- Small display issue fixed. If audio tracks have no sub format. (e.g Director's Commentary), "()" would be displayed. Thanks Canvas (http://forum.handbrake.fr/viewforum.php?f=12)
sr55 [Thu, 27 Nov 2008 14:39:02 +0000 (14:39 +0000)]
WinGui:
- Removed RAM limitation code on startup.
- Gets rid of the SystemInfo Class. It's no longer required. Since the ram limitation code has been remove, only the activity window needs access to the information, so, the code has been moved to frmActivityWindow.cs
- Removed some redundant code from frmMain.cs. Cleaned the startup code block up a bit.
- Re-structured frmMain.cs. Moved the code around into more logical regions.