Try StreamFab Downloader and download from Netflix, Amazon, Youtube! Or Try DVDFab and copy Blu-rays! or rip iTunes movies!
+ Reply to Thread
Results 1 to 25 of 25
Thread
-
Last edited by lonrot; 30th Jun 2014 at 16:51.
-
-
Okay, but in your first post you said:
Implying the frameserving itself was at fault.
But If I render as MPEG2 inside vegas there's no interlacing. -
How do you know that? By playing the resulting video? And you're sure your player isn't deinterlacing it? I don't use Vegas but I'm sure people can tell you that if you're feeding it a progressive video how you can get progressive video out of it. Was making the MPEG-2 video just a test since your final output will be MKV or MP4 (I think)?
I was able to fix it by selecting Project Settings > Match Media Settings in Vegas.
-
The reason is file size beyond anything. I upload videos to Youtube and my internet speed is very slow, getting an MPEG2 file from 500 MBs to 130 MBs as MP4 is a time saver. With Ripbot/Handbrake they look virtually the same.
The videos encoded in Vegas using H264 are nowhere near Handbrake or Ripbot in terms of quality to my experience.
Unless I'm missing something... -
Nothing wrong with Frameserving out of Vegas into an external encoder, I've been doing it for many years without issues. The OP had incorrect project settings in Vegas, it's a typical rookie mistake......................
Got my retirement plans all set. Looks like I only have to work another 5 years after I die........ -
Agree there's nothing inherently wrong with it, just that it's not necessary. After correcting the rookie mistake and adjusting output settings properly, I bet there's little or no difference. (In a quick test I just ran the Vegas internal compressor looked marginally better at the same bitrate, but of course YMMV.)
Last edited by smrpix; 30th Jun 2014 at 19:01.
-
frame server is a must because Vegas does not encode CRF, or , for example, does not encode well (efficiently) 1pass web stream, doesn't matter what you do, you see "pumping" coming from Vegas and quality is worse using lower bitrates
frame server exports Vegas project Properties not clip properties, so those two must match, post mediainfo of your clips as well -
Have you tried rendering at lower bitrates, for example 3500kbps?
There is a difference.
Here's how it looks using Vega's Sony Tablet 720p Preset. Two passes, average and max bitrate: 3500Kbps.
Ripbot at 3500kpbps, two passes, x264 default preset at 720p. Notice that the glow detail is retained.
Again Vegas
And Ripbot: Notice how it retains detail specially in the dark areas of the helmet.
-
You do not have to encode to some magic number, in your case 3500kbps, you can use CRF, find your quantizer number, start with 18 or 17 and you are set. You also save some time, because CRF is 1pass.
For that gradient part in your clip, I'd increase bitrate, just for that part, assuming it is your video signature or something and it is short. I'd use zones , something like :
--zones 1000,2000,b=1.5
this will increase bitrate from frame 1000 to 2000 1.5 times, as oppose it would normally distribute for that part, so you do not need to encode the whole video with higher bitrate if you just feel that only one part of video or couple of parts need to get slight push in bitrate
you can add that in ripbot where "profile" button is, and then you add it into commands,.., kind of neat tuning that cannot be done in Vegas also ... -
-
Thanks for your great input. Is CRF enabled by default in the CQ Mode?
Disable SMART RESAMPLE only. -
CQ in ripbot is encoding using CRF,
terminology here could be tricky, I was mislead once also, because:
Constant Quality, as it is named in Megui, uses CRF, Constant Rate factor, the same way as in Ripbot
but there is also Constant Quantizer encoding, that can ad to confusion as soon as you start using shortcuts,
CRF uses human perception capability and does not try to stick to given quantizer at all times, for example , crazy motion scene, action scene where things get blurred, it might increase quantizer because we cannot perceive detail anyway, and it saves bitrate, -
For the record, the MainConcept mpeg-2 encoder in Vegas is pretty good. I read a long time ago that the Vegas mpeg-2 encoder was blu-ray compliant, while the AVC encoder was not. Don't know if that is still true in newest version.
Got my retirement plans all set. Looks like I only have to work another 5 years after I die........ -
If anyone is interested, here is a .js script for Vegas, (which even has a nice little GUI & all ) to disable Resampling in your project.
You can choose to apply to all events, only selected ones, or only those with .xxx extension, for instance.
Its called FlickerBuddy, and its juste so simple and well done...plz let me share !
Copy and save it as FlickerBuddy.js
Code:/* * Copyright (c) 2004, Folding Rain Filmworks Inc. * * author: Joe Howes (joeh@guild1.com) * * Sometimes Vegas' Smart Resample doesn't do a great job of determining * when a video event in fact needs to be resampled. * * One area it fails in is taking certain Quicktime media in PAL format * and placing them in an NTSC project or rendering them out as NTSC. * Sometimes it's ok, but if you've ever used Quicktime media captured * by another NLE (FCP, for instance), you'll notice severe * flicker on your output monitor even if you check the "Reduce Interlace * Flicker" switch. This can be a HUGE problem if you've got a large * project in multiple files and you'll be outputting various formats * (web, NTSC, PAL). * * The Flicker Buddy is a quick way to set your flicker and resample * settings for either selected media or media with a certain type of * extension (of course it defaults to 'mov' since I'm using it in a * setting with lots of media captured in FCP). * * In my case, going from PAL Quicktimes captured in FCP and rendering * to NTSC on Vegas, I had to reduce interlace flicker and disable * resampling. All other media (AVI, other animations) were fine. * When outputting PAL, I wanted to turn off 'Reduce Interlace Flicker' * and enable 'Smart Resample' to get the render times back down. * * * USAGE: * If you have a certain set of media on the timeline you want to affect, * select them and run the script. If you want to affect all media of a * certain extension, just run the script. Set your options in the dialog * box and click 'Apply'. * * v1.0: Oct. 23, 2004 */ import System.Windows.Forms; import System.Text; import System.Collections; import Sony.Vegas; /** * MAIN */ try { var done = false; // If nothing is done, let the user know var dlog = new FlickerBuddyDialog(); // The GUI // Show the GUI if (DialogResult.OK == dlog.ShowDialog()) { // For each track for (var track in Vegas.Project.Tracks) { // If the track is not video, skip it if (!track.IsVideo()) { continue; } // For each event for (var evnt in track.Events) { var go = false; var filePath = evnt.ActiveTake.Media.FilePath; // If the user wants to affect selected events, and this // event is selected, GO. if (dlog.applyToSelectedEventsRadio.Checked && evnt.Selected) { go = true; // Otherwise if they want to affect certain file types and this // event is that type, GO. } else if (dlog.applyToEventsWExtRadio && filePath.EndsWith(dlog.extensionTextBox.Text)) { go = true; } if (!go) { continue; } // Update the settings done = true; evnt.ReduceInterlace = dlog.reduceInterlaceFlicker.Checked; if (dlog.smartResampleRadio.Checked) { evnt.ResampleMode = VideoResampleMode.Smart; } else if (dlog.forceResampleRadio.Checked) { evnt.ResampleMode = VideoResampleMode.Force; } else if (dlog.disableResampleRadio.Checked) { evnt.ResampleMode = VideoResampleMode.Disable; } } } } // Only bother the user if no events or media were changed. if (!done) { MessageBox.Show("No events affected.", "Done!"); } } catch (e) { MessageBox.Show(e); } /** * CLASS: FlickerBuddyDialog * The GUI. */ class FlickerBuddyDialog extends Form { var applyToSelectedEventsRadio : RadioButton; var applyToEventsWExtRadio : RadioButton; var extensionTextBox : TextBox; var reduceInterlaceFlicker : CheckBox; var smartResampleRadio : RadioButton; var forceResampleRadio : RadioButton; var disableResampleRadio : RadioButton; var addFXButton : Button; var removeFXButton : Button; var applyButton : Button; var cancelButton : Button; var eventsGroup : GroupBox; var settingsGroup : GroupBox; /** * CONSTRUCTOR * Init everything. */ function FlickerBuddyDialog() { this.Text = "Flicker Buddy"; this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; this.MaximizeBox = false; this.StartPosition = FormStartPosition.CenterScreen; this.Width = 272; this.Height = 265; // Events applyToSelectedEventsRadio = new RadioButton(); applyToSelectedEventsRadio.Location = new System.Drawing.Point(10, 20); applyToSelectedEventsRadio.Size = new System.Drawing.Size(200, 16); applyToSelectedEventsRadio.Name = "applyToSelectedEventsRadio"; applyToSelectedEventsRadio.TabIndex = 1; applyToSelectedEventsRadio.add_Click(this.selectedEventsOnClick); applyToSelectedEventsRadio.Text = "Apply to Selected Events"; applyToEventsWExtRadio = new RadioButton(); applyToEventsWExtRadio.Location = new System.Drawing.Point(10, 40); applyToEventsWExtRadio.Size = new System.Drawing.Size(180, 16); applyToEventsWExtRadio.Name = "applyToEventsWExtRadio"; applyToEventsWExtRadio.TabIndex = 1; applyToEventsWExtRadio.Checked = true; applyToEventsWExtRadio.add_Click(this.eventsWExtOnClick); applyToEventsWExtRadio.Text = "Apply to Events with Extension: "; extensionTextBox = new TextBox(); extensionTextBox.Location = new System.Drawing.Point(190, 38); extensionTextBox.Size = new System.Drawing.Size(45, 16); extensionTextBox.Name = "extensionTextBox"; extensionTextBox.TabIndex = 1; extensionTextBox.Text = "mov"; // Events ParamGroup eventsGroup = new GroupBox(); eventsGroup.Controls.Add(applyToSelectedEventsRadio); eventsGroup.Controls.Add(applyToEventsWExtRadio); eventsGroup.Controls.Add(extensionTextBox); eventsGroup.Location = new System.Drawing.Point(8, 8); eventsGroup.Name = "eventsGroup"; eventsGroup.Size = new System.Drawing.Size(250, 70); eventsGroup.TabIndex = 4; eventsGroup.TabStop = false; eventsGroup.Text = "Events"; this.Controls.Add(eventsGroup); // Settings reduceInterlaceFlicker = new CheckBox(); reduceInterlaceFlicker.Location = new System.Drawing.Point(10, 20); reduceInterlaceFlicker.Size = new System.Drawing.Size(145, 18); reduceInterlaceFlicker.Name = "replaceExistingFXCheck"; reduceInterlaceFlicker.TabIndex = 6; reduceInterlaceFlicker.Checked = true; reduceInterlaceFlicker.Text = "Reduce Interlace Flicker"; smartResampleRadio = new RadioButton(); smartResampleRadio.Location = new System.Drawing.Point(10, 50); smartResampleRadio.Size = new System.Drawing.Size(200, 16); smartResampleRadio.Name = "smartResampleRadio"; smartResampleRadio.TabIndex = 1; smartResampleRadio.add_Click(this.selectedEventsOnClick); smartResampleRadio.Text = "Smart Resample"; forceResampleRadio = new RadioButton(); forceResampleRadio.Location = new System.Drawing.Point(10, 70); forceResampleRadio.Size = new System.Drawing.Size(200, 16); forceResampleRadio.Name = "forceResampleRadio"; forceResampleRadio.TabIndex = 1; forceResampleRadio.add_Click(this.selectedEventsOnClick); forceResampleRadio.Text = "Force Resample"; disableResampleRadio = new RadioButton(); disableResampleRadio.Location = new System.Drawing.Point(10, 90); disableResampleRadio.Size = new System.Drawing.Size(200, 16); disableResampleRadio.Name = "disableResampleRadio"; disableResampleRadio.TabIndex = 1; disableResampleRadio.add_Click(this.selectedEventsOnClick); disableResampleRadio.Checked = true; disableResampleRadio.Text = "Disable Resample"; // Settings ParamGroup settingsGroup = new GroupBox(); settingsGroup.Controls.Add(reduceInterlaceFlicker); settingsGroup.Controls.Add(smartResampleRadio); settingsGroup.Controls.Add(forceResampleRadio); settingsGroup.Controls.Add(disableResampleRadio); settingsGroup.Location = new System.Drawing.Point(8, 90); settingsGroup.Name = "settingsGroup"; settingsGroup.Size = new System.Drawing.Size(250, 115); settingsGroup.TabIndex = 4; settingsGroup.TabStop = false; settingsGroup.Text = "Events"; this.Controls.Add(settingsGroup); // Apply button applyButton = new Button(); applyButton.DialogResult = System.Windows.Forms.DialogResult.OK; applyButton.Text = "Assign"; applyButton.Left = 100; applyButton.Top = 210; AcceptButton = applyButton; Controls.Add(applyButton); // Cancel button cancelButton = new Button(); cancelButton.DialogResult = System.Windows.Forms.DialogResult.Cancel; cancelButton.Text = "Cancel"; cancelButton.Left = 182; cancelButton.Top = 210; CancelButton = cancelButton; Controls.Add(cancelButton); } /** * FUNCTION: selectedEventsOnClick */ function selectedEventsOnClick(sender : Object, evt : System.EventArgs) { extensionTextBox.Enabled = false; } /** * FUNCTION: eventsWExtOnClick */ function eventsWExtOnClick(sender : Object, evt : System.EventArgs) { extensionTextBox.Enabled = true; } }
-
That scripts works OK, but I like my simple one better. It disables resample on everything on all tracks. I have a custom button for this script and other heavily used scripts on my Vegas Tool Bar for quick access.
Copy and save as Resample Disable.cs and place it in you Vegas Script Menu folder.
/**
* This script Disables Resampling on all tracks.
*
* Revision Date: January 14, 2012.
**/
using System;
using System.IO;
using System.Text;
using System.Drawing;
using System.Reflection;
using System.Diagnostics;
using System.Collections;
using System.Windows.Forms;
using System.ComponentModel;
using System.Runtime.InteropServices;
using Microsoft.Win32;
using Sony.Vegas;
public class EntryPoint
{
Vegas myVegas;
public void FromVegas(Vegas vegas)
{
myVegas = vegas;
foreach (Track track in myVegas.Project.Tracks)
{
if (track.IsVideo())
{
foreach (TrackEvent evnt in track.Events)
{
VideoEvent videoEvent = (VideoEvent)evnt;
VideoResampleMode VRMode = VideoResampleMode.Disable;
// VideoResampleMode.Force;
// VideoResampleMode.Disable;
videoEvent.ResampleMode = VRMode;
}
}
}
}
}Got my retirement plans all set. Looks like I only have to work another 5 years after I die........ -
I didn't write that script, I found it somewhere...........
Got my retirement plans all set. Looks like I only have to work another 5 years after I die........ -
-
the catch is, there can be a great amount of time spent, looking for that right bitrate, not using CRF, because every video is different ... in this example you disregard (not taking into account) the fact , that it took a while to come up with 3500 value, and who says , it is the right one ... , you might even change resolution, type of video, and you are back with your quest for right bitrate with 2pass VBR
Vegas tend to smear those problematic parts, which could look better in cases, because banding is not that obvious ...,
using CRF use bitrate viewer occasionally and check actual distributed bitrates for particular scenes, that too is kind of eye opener, because sometimes intuition could be contrary to how actually x264 distributes bitrate