text:
Best render options for custom size movie in after effects
I have a composition of 1500 x 643. I need this format for a moviebanner in a website. My assets are in 4K, very good quality.
I can render it as an AVI, best quality. Then it's almost 4 GB for 30 seconds.
When I choose H264, it has problems with framerate and the size (it resizes, ...). What do I have to choose as render settings to have a good quality movie (+30mb? instead of 4Gb), for web with my custom size?
I use After Effects CS5.
EDIT: After changing the settings to an odd resolution, I can export as H.264..
But I don't like the quality. The size is 3.3Mb, it could be a little bit more.
How can I get better quality for this export?
My screens:

The results can you find here: https://wetransfer.com/downloads/a15013dad2f4bc5c0b4ce0aa92cb821c20170508063926/347bd4

Are you using the inbuilt After Effects render queue? It's a bit easier to use custom settings when you use the Adobe Media Encoder instead. AME comes with After Effects and is installed automatically when you install AE. Simply open the composition you want to export in After Effects and select Composition → Add to Adobe Media Encoder Queue. This will open AME and add the current state of your composition to the render queue (this might take some time). Once you see the item in the render queue, press the highlighted format designation to open the Export Settings dialogue.

In the Export Settings, you can change the format (codec/container) as well as the other export parameters. Make sure to set the dimensions (Width/Height) to whatever you need them to be. To bring down the size, the most important option is the bitrate setting (Target / Maximum Bitrate for H.264).
Read this for an explanation of bitrate and it's relation to the resolution of your video and this for the math you need to figure out the appopriate bitrate dependent of your desired output size. Since you mentioned you need the video for your website, you might also be interested in my post here regarding recommended encoding settings for web video.

I can export with odd resolution.
But the quality isn't super good. See my post.

@Finduilas Your bitrate is way too low, that's why you get the crappy quality. Please read the posts I linked in my answer, I don't want to write the same thing twice. Also you don't need to use level 5.1, 4.2 should be sufficient for your resolution and bitrate. Keep stib's answer regarding video dimensions in mind as well when setting up your export.

Sorry, I readed it, and now it seems to be clear.. Hope this will result in a good quality.

It works like a charm ;-).
Thanks to everyone for the help.

You won't be able to render it to h.264 because of the odd number of pixels in the vertical resolution (odd as in not even, not odd as in unusual).
You simply can't encode h.264 video with odd numbers as either one of the frame dimensions, that's just part of the codec. This is true for quite a few codecs (any that use macroblocks).
I actually can't think of a codec where I'd be confident that you can encode. Maybe uncompressed, something like v210, or Apple Animation. Certainly nothing that you could deliver over the internet.
You need to lose or gain one row of pixels, because it will make your encoding waaaay simpler.

And if I use odd number, then H264 will be available? Thats necessary because I want to use it in html5 video..

No, h.264 can only accept pixel dimensions that are even numbers. Theoretically you'll get the best compression if the dimensions are multiples of 8. 1496 x 640 would be good for example, and close to your original aspect ratio.

I can export with odd resolution.
But the quality isn't super good. See my post.

if the dimensions are multiples of 8 --> 16, since that's the MB size. that's just part of the codec. --> it's not a H.264 restriction. Normally video is 4:2:0 i.e. chroma is subsampled at half the luma rate, so H.264 encoders enforce a mod 2 requirement, so that decoders expecting to apply a chroma sample to a 2x2 luma grid don't fail. But if you encode to 4:4:4, odd values aren't an issue. What Adobe is probably doing is setting a cropping flag that the H.264 spec allows for, to discard one pixel row/column from the decoded output. But I haven't checked Adobe's bitstream output, though.

I will try this!

Thanks mulvya, I always thought it was because of the macroblocking, rather than the chroma subsampling that caused the even pixel restriction, but I guess it makes more sense. I somehow doubt that the OP is encoding 4:4:4 though.


text:
dvd menu with single text field that can change
I've been making a DVD menu with DVDstyler, and I'm fairly happy with how it looks. However, since space is limited and I have 5 scenes on one page, I want to have a single text box at the bottom that contains the name of the scene that is currently in focus. This doesn't seem possible with DVDstyler. Or is it?
If not, which other DVD authoring software should I acquire in order to have this.
Any ideas?

Please break this up in to two questions.  The first part and the second part are distinct questions and someone that knows the answer to one may not know the answer to the other.

fair point, done :)

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

sort: votes


text:
mp4 file will not play video, only audio on quicktime, fine on VLC
I have an mp4 file that will not play video, only audio, on QuickTime (10.4 on Yosemite) - and by extension does not show the correct icon in Finder not will it play properly on iOS devices.
Others play fine. Video encoding is H264, audio is AAC, so it should work. I tried remuxing it with ffmpeg, no luck.
Mac console shows "QuickTime Player: ava error: fail in SeqAndPicParamSetFromCFDictionaryRef"
Happy to remux (prefer not to re-encode, but I will if I have to) using ffmpeg, mp4box, whatever.
Below is file information:

 * Movie Info *
    Timescale 600 - Duration 02:15:51.210
    Fragmented File no - 2 track(s)
    File Brand M4A  - version 0
    Created: GMT Sun Nov 27 14:25:55 2011

File has root IOD
Scene PL 0xff - Graphics PL 0xff - OD PL 0xff
Visual PL: AVC/H264 Profile (0x15)
Audio PL: AAC Profile @ Level 2 (0x29)
No streams included in root OD

Track # 1 Info - TrackID 1 - TimeScale 48000 - Duration 02:15:51.210
Media Info: Language "Undetermined" - Type "soun:mp4a" - 382088 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
MPEG-4 Audio AAC LC - 2 Channel(s) - SampleRate 48000
Self-synchronized

Track # 2 Info - TrackID 2 - TimeScale 24000 - Duration 02:15:51.143
Media Info: Language "Undetermined" - Type "vide:avc1" - 195432 samples
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size 1216 x 544 - Profile High @ Level 4.1
NAL Unit length bits: 24
Pixel Aspect Ratio 1:1 - Indicated track size 1216 x 544
Synchronized on stream 1

I cannot imagine it is the order of tracks, audio before video. I have a suspicion it has something to do with the ftyp, but unsure?
EDIT:
After the suggestion by #ProfessorSparkles below, I changed the Profile Level using subler... but it still doesn't work, same problem. Sound is fine, no video. Here is the updated mp4 info:

* Movie Info *
    Timescale 600 - Duration 02:15:51.210
    Fragmented File no - 2 track(s)
    File Brand M4A  - version 0
    Created: GMT Sun Nov 27 14:25:55 2011

File has root IOD
Scene PL 0xff - Graphics PL 0xff - OD PL 0xff
Visual PL: AVC/H264 Profile (0x15)
Audio PL: AAC Profile @ Level 2 (0x29)
No streams included in root OD

Track # 1 Info - TrackID 1 - TimeScale 48000 - Duration 02:15:51.210
Media Info: Language "Undetermined" - Type "soun:mp4a" - 382088 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
MPEG-4 Audio AAC LC - 2 Channel(s) - SampleRate 48000
Self-synchronized
Alternate Group ID 1

Track # 2 Info - TrackID 2 - TimeScale 24000 - Duration 02:15:51.143
Media Info: Language "Undetermined" - Type "vide:avc1" - 195432 samples
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size 1216 x 544 - Profile Main @ Level 3.1
NAL Unit length bits: 24
Pixel Aspect Ratio 1:1 - Indicated track size 1216 x 544
Synchronized on stream 1

You will have to re-encode or use a tool to change your h264 level, f.e. this one http://coolsoft.altervista.org/en/h264leveleditor but its windows only, there might also be a Mac tool that does the same. Your video is encoded with High Profile Level 4.1. iOS only support Level 3.1 and probably the same with QuickTime on Yosemite.

I see that in the info, thanks. Exactly what I was looking for. Based on reading the link to h264level editor, it is a piece of metadata that indicates the max, so it is possible to change the editor level without reencoding the video file?

So Subler does his on the Mac... but still no luck. I will update the post with new output. Any ideas?

In that case transcode with Handbrake with the normal preset selected.

I was hoping to avoid that.. no ideas as to what it might be?

Apple software has always been very picky about h264 files. There are a ton of parameters that can cause this.
I mean why don't you just re-export your project as an intermediate and encode to h264 with handbrake? Even if it takes some time, its not worth the hassle to debug your broken file.

In the end, that is what I did. Thanks for your help.

Btw. if you want to analyze video files in the future I recommend using the tool "MediaInfo" it gives you a lot more usefull and human readable information.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
Canon C100 mk1 AVCHD vs MP4
I recently bought a Canon C100 mk1 after lots of comparing, specs etc.
Now I have a question which I cannot really find a final answer for on the interweb.
The Canon C100 can record in either AVCHD or MP4. Which one is better to use?
AVCHD is a single wrapped file with all the clips in
MP4 is just all the clips (Currently like my Canon 7D)
Most people seem to use the AVCHD, but I have seen screenshots or images of the cameras that are set to MP4, and I am unable to find a reason why people choose one over the other.
I shot a wedding in AVCHD and edited it with FCPX (not the most recent version), and I have done all the options of trans-coding, changing the 50i to progressive, etc. that others have recommended online, but some of my shots are still giving me interlacing.
Would shooting in MP4 eliminate these issues? When I shoot on my Canon 7D, it is not there - only a bit of jello.
The most I can find is a comparison between AVCHD and MP4 for quality (to which I cannot see much difference) or a comparison between the mk1 and the mk2 which is not really answering my question.
I have a wedding coming up next weekend and would like to shoot with the best option. I don't think I'm going to have enough spare time to do a test using both codecs.

did you find your answer?

Well first off, the C100 Mk I DOES NOT offer an MP4 option, only a AVCHD option. I'm assuming you meant the MKII as you said 'recently bought'.
If you look at the specs of the C100 MK II you'll see in MP4 mode you can't record interlaced, but in AVCHD you can (but you don't have to if you are at 28 mbps). So basically you can't go wrong (aka get interlaced files) with MP4, with that being said, you can also use the AVCHD wrapper @ 28 mbps and not get interlaced files (look out for the 'i' next to the framerates).
People primarily use the MP4 wrapper in the C100 MK II because it has the capability of recording at a higher bit rate (35 mbps) which means you have more information to work with when you get into the editing room, its good for color grading, and in some cases has less noise. I also find that MP4 works better inside of PP CC.
Also shooting in MP4 will probably not have much an effect on jello (although its never something I've experience in my C100's) but not shooting in interlaced will definitely help due to the way interlaced works (capturing every other line).
I'm a C100 MK I & MK II user ;)

Avchd has better audio and MP4 is easier to work with and will play on more devices without transcoding. If you can edit Avchd easily use it. They use the same codec so quality will be about the same(you wouldn't notice it in use)

Quality wise they are the same

AVCHD = great for in-camera editing, and very flexible. Limited
compatibility with devices/softare
MP4 = great compatibility, can only be edited with
external software on computer

If you have experience with editing, and your editing software supports avchd then choose that (as you already have done)

Both have comparable quality. Not going to repeat anything already said but a lot of it comes down to what are you going to edit with, are there other cameras, and what type of editing. Avchd degrades quicker with color correction and heavy effects. Though mp4 is not much better. One thing to not is both avchd and mp4 are wrappers and not the codec which is what codes the video. Both on the c100 are h264 codec which means basically the same quality. As also said the bit rates differ some because of compression and storing method. You want to stick with all the same media when editing so it other media is avchd then use that or likewise with mp4. Also the software you use can influence your decision certain editors handle different formats better. Premiere typically handle mp4 better same with final cut.


text:
Davinci Resolve 12 (Editing)
So, Im starting a project in Davinci Resolve 12 (DR12) but I am used to using FCPX and they way I can change the Field Dominance for the clips as I use a Canon C100 which records in 25p (50i) AVCHD, but playing back it is not in progressive format. In FCPX I can just select all the clips and change the field dominance in the inspector, now I cannot find out how to do this in DR12 or am I just being over ambitious?
Can anyone help or advise.
EDIT
Images below
DR12 Clip Properties - no option to change the clip to PROGRESSIVE like in FCPX
DR12 clip in timeline =- Notice the lines / interlacing

EDIT 2
Added FCPX images

EDIT 3

In the Media View window, select all the clips you want to change.  Right click one of the selected clips and choose "Clip Attributes".  In the Video portion of the Clip Attributes, tell Resolve what you want it to do.

Hi, I have tried this but it doesn't work, I have some screenshots if thats any help

Go ahead and post the screenshots.  What Clip Attributes are default for your clips?  What Clip Attributes have you attempted to override?

added screenshots to the main question

You did not answer the question with respect to Clip Attributes.

Hi. I thought that's what the screenshots are of. Is there a different section. If so how do I get to them ?

In the Media View window, not the Edit Window, select a clip, right-click the clip, and choose "Clip Attributes" from the dialog box that appears.

I still don't see a "Progressive" option in the clip attributes in the media window, am I missing something really simple

Is that option - "Field Dominance" context sensitive i.e. do the same choices appear with a known progressive clip?


text:
Sony AVC vs. MAGIX AVC vs. MainConcept MPEG-2: what's the difference?
In VEGAS Pro 16.0 I'm given (at least) three options if I want to render a 1080p 30fps video for YouTube upload:

Sony AVC/MVC, template "Internet 1920x1080-30p"

Use this setting to create the highest quality 16:9 file suitable for uploading to Internet sites.
  Audio: 128 Kbps, 48,000 Hz, 16 Bit, Stereo, AAC
  Video: 29.970 fps, 1920x1080 Progressive, YUV, 16 Mbps
  Pixel Aspect Ratio: 1.000

MAGIX AVC/AAC, template "Internet HD 1080p 29.97fps"

Use this setting to create an MP4 (AVC/AAC) file for progressive internet downloads.
  Audio: 192 Kbps, 48,000 Hz, 16 Bit, Stereo, AAC
  Video: 29.970 fps, 1920x1080 Progressive, YUV, 12 Mbps
  Pixel Aspect Ratio: 1.000

MainConcept MPEG-2, template :HDV 1080-25p (Note 4:3 aspect ratio)

Audio: 384 Kbps, 48,000 Hz, 16 Bit, Stereo, MPEG
  Video: 25 fps, 1440x1080 Progressive, YUV, 25 Mbps
  Pixel Aspect Ratio: 1.333

These are just templates and it seems each can be customized (for example, MainConcept template can be customized to be 30fps and 1920x1080). So is there any big difference between each format? I noticed MAGIX can support VBR to reduce filesize.
Resources:

https://www.reddit.com/r/letsplay/comments/3j1y3x/sony_avc_or_mainconcept_avc/
https://forums.creativecow.net/docs/forums/post.php?forumid=24&postid=927083&univpostid=927083&pview=t

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Kdenlive VFR to CFR
When using videos taken on my phone (Pixel 4a) kdenlive reports variable framerate and asks to transcode with several options,

Lossless (huge files)
Intermediate DNxHR HQ (large files)
x264 I frame only

How does I-frame only work? If it really is only keyframes, then wouldn't the output would be a 1 fps slideshow? Are frames interpolated or dropped?
Discussion

https://www.reddit.com/r/kdenlive/comments/un4njd/what_is_exactly_is_to_transcode_videos_and_is_it/
https://discuss.kde.org/t/transcoding-clips-due-to-vfr-samsung-s21settings/4784

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
How much recording time at 1080p30 on a 32GB card on a GoPro Hero (1)?
Is there a generic data recording rate for the different capture options on GoPro Heroes?
I'm trying to determine what size of SD card I should buy for my GoPro and I'd like to get an approximation. Is there a grid somewhere that details this?

Have you try to go to the product web site and check?
http://gopro.com/support/articles/recording-time-in-each-video-setting
I know it is about Hero2, but i think the values will not change much. Be aware fully charged battery will power the camera for no more than 3 hours

Nice, I missed it because I was looking at the original Hero product page. I'm aware of the battery life :)


text:
Remove light reflection from eyes
I have a video with a man speaking (very stable, motion tracking on his eyes works perfectly)
The problem is each eye has reflections of 4 light sources, so each eye looks like it has 4 white pupils inside the iris. The black pupil suffers from these reflections too. I hope you can understand what i mean. See the following photo.
What effect i need to apply to remove these light reflections and make his iris look natural brown (his original color)? Tried lowering brightness, but his eyes became like big black eyes of a shark.
What to do? Do i need some sort of effect and an artificial black pupil on top?
I'm asking this question hoping this is a somewhat common problem so maybe there is a solution already for that.
Here is what it looks like

Would be nice if you could add an image to your question...?

Ditto.  Could you post a pic?  Perhaps you're being too critical.  Usually, these sort of reflections are desirable.  Are you familiar with the expression, "the apple of someone's eye"?

@poor added photo, will add an answer shortly, since i managed to solve this, of course answers are welcome! :D

@JasonConrad added photo, yes 1 reflection is desirable, but these are way too much ouch!

I solved my problem using 1) motion tracking and 2) a good picture of an eye.

With adobe after effects i managed to track the motion of the problematic iris. The result was a very precise motion path of the iris for the whole video. Great.
Then i used a good picture of brown eyes (google images) from which i cropped a circular selection which had "some" iris and the pupil. I made that circular selection a little transparent around the edges and finally had this result:

Using that image (2) on the motion path (1), the result was excellent. I had to play a bit with the colors to make the new iris blend with the original iris which "embraced" the new one.

(Fortunately, person wasn't blinking.)
p.s. More answers are welcome!

authors: Радослав Дундаков


text:
3D composition shows up as 2D in main project view?
Camera
[comp 3D]
  ellipse mask in z-axis
  layer1 2D
  layer2 2D
  layerN 2D

The layers are aligned in the Z-axis along the ellipse, forming a 3D text by the layers.
When I'm inside the composition, I can actually see a aligned layers in the 3D space.
But when I go to my main project view just seing the "comp 3D" layer, everything is plain 2D! Also moving the camera I can just see a plain 2D image, even though inside the comp it is 3D. Why?
Update:

There are 3 lights being aligned differently in the z-axis (see TOP view).
When I move a camera around inside the "light comp", everything is fine and I can see also my lights moving.
When I move the camera in my main layout, the lights are static! No movement is reflected to the light comp layer! I can just see the camera mask moving, not the comp content.

The issue could be Optical Flares, it doesn't fully integrate into AE's 3D space but has its own coordinate system. The usage of AE lights is somewhat of an workaround for that.
Have a look at this plugin/script, that could help:
http://www.videocopilot.net/tutorials/3d_pre-compose_script/
It's exactly made for what you want to do.

OK so you're saying I have to keep a copy of my camera and especially of all my lights in my main as well as in my composition?

I assume it's not necessary to keep any lights or layers targeting the optical flare stuff in the main view. The important fact is the camera link with all it's properties here. And it works!

Exactly, you just need to link the cameras. Everything else is for more advanced effects.

You need to click the Collapse Transformations (sun icon) on your [Comp 3D] layer.
Otherwise your main comp will treat your other comp as a flat layer in a 3D space, if that makes sense?

If I do so, and move my camera, I'm just seeing the camera mask being moved, but not the precomp layer, which remains still. Will I have to make the camera animation inside the precomp? That would not make much sense. But no matter how I move the cam that is on the same level than my precomp, there is not layer movement.

I think all the layers in your precomp should either be 3D or 2D.  I think the problem is that you're mixing 3D and 2D layers.  In your main comp you have a 3D camera, and it won't be able to correctly render both sets of objects unless the 2D objects are in your main comp. (the camera movement will not affect the 2D objects - and you wouldn't want it to).

Hm, the problem is my layers are mainly lights, which are 2D be design and cannot be switched to 3D. Anyhow these lights are distributed along the 3D space inside my precomp. So, I cannot make my layers 3D, anyhow the are aligned in 3D and the cam outside the precomp should be animated in that space.

When you say they are lights, are they created by going to the Layer -> New -> Light menu? All lights are 3D by default. All items in a 3D space need to have the 3D cube icon enabled.  Maybe post some screenshots of your project to give a clearer idea?

please have a look on my updated image

authors: Георгий Мишарин


text:
How to to break down nested sequences into its components
I have a subsequence (or nested sequence), and I'm using only part of it a in a larger sequence. Is there any good way to break it down into its components so it will be cut exactly right? (I'm not using the entire nested sequence, just a part of it)

Figured it out minutes after posting. Like this:

Enable the Nest Source Sequence option.
Put marker on the beginning frame of nested sequence. double click to go inside it (it will put the marker on the right spot), and then do Ctrl+C.
Go back to the main sequence, and drag the subsequence\nested sequence from the source monitor. You'll get the individual parts from the nested sequence that match the trimmed version you already have.

Hope this helps anyone.
P.S
Adobe, can you please streamline this? I mean, it's ridiculous

See http://video.stackexchange.com/q/18550/1871


text:
Any nice tool for replacing all black frames in a video with another frame
My video file has some blackish frames (it's almost black, but not exactly black, i.e. #000000), and I want to filter out them, replacing them with neighboring frames.
However, I can't find a simple way to do that.
Of course, I can extract all the frame images from the video file with FFmpeg:
ffmpeg -i foo.mp4 -an -framerate 30 -s 1280x720 -f image2 foo-%05d.jpeg
and then list all the blackish images with some image tools, replace them with neighboring-numbered files, and merge them:
ffmpeg -i foo.mp4 -vn -acodec copy foo.m4a
ffmpeg -i foo.m4a -f image2 -framerate 30 -i foo-%05d.jpeg -r 30 -s 1280x720 output.mp4
but this will create over 10,000 intermediate image files and it is also time-consuming.
Is there any software or programming language that helps this work?
I am using Windows x64.

Remember that to do the image processing, whatever software you use is going to have to decode each frame so it's always going to be time consuming. Writing them to disk as separate image files will take more time I suppose, but you could perhaps use something like a named pipe to keep it in memory, depending on what image tools you use.

As a side note, you really want to interpolate a frame rather than just using the frame to one side.  2 frames in sequence being the same will be a noticeable stutter.

Using something like Twixtor would attempt to interpolate movement from the two frames either side - might be a better option than just repeating or interpolating a crossfade of two adjacent frames? http://www.revisionfx.com/products/twixtor/

Highly related: https://video.stackexchange.com/questions/23589/replace-black-frames-with-previous-frames https://video.stackexchange.com/questions/28407/replace-all-completely-black-frames-with-interpolated-frames

You could do this in After Effects.  There are lots of examples online where people use Expressions to examine the average brightness of each frame, then act upon it.  For example, you could add a marker to each frame that fell below a certain threshold level. Or make the frame's opacity go to 0%, to allow another track to show through from behind.
Tutorial examples here:
http://markos.co.nz/2012/05/after-effects-expression-use-the-luminance-of-one-layer-to-drive-another-layer/
http://blogs.adobe.com/aftereffects/2009/07/color-sampler-using-sampleimag.html
Here's an example expression I wrote based on the blog posts above -
threshold = 0.01;  // this is the threshold below which the track becomes transparent - black = 0.
driverLayer = thisComp.layer("Pre-comp 1");
samplePoint = [0,0]; // examine from the top left pixel
sampleSize = [640,360]; // examine the full comp size (in this case 640x360)
lightnessSample = driverLayer.sampleImage(samplePoint,sampleSize);  // this samples the image as rgb
driverLightness = rgbToHsl(lightnessSample)[2]; // converts to hue, saturation and lightness, then only takes lightness
if (driverLightness >=threshold) transform.opacity = 100 else 0; // tell opacity to be either 100 or zero depending upon the threshold point chosen in line 1

I applied this to the opacity layer.  You would need to adjust the threshold value, and the size of your comp ( in my case 640x360). (the red solid below was to see whether the opacity change was working.  I guess you would put a copy of your video showing the previous frame here?  Will look as though the video got stuck though...


text:
Is WonderShare's video editor a viable alternative to Camtasia Studio?
I wanted to experiment with creating YouTube video's, but Windows Movie Maker or Apple iMovie just don't cut it. Camtasia Studio looks like something that much more suits my needs, but is a little too pricy at this stage.
I found Wondershare's video editor, which has a more acceptable price, but was unsure whether it is good enough quality at a comparable level to Camtasia Studio (Windows).
I need:

An easy-to-use, time-saving interface
Switching, embedding and manipulating content like videos, images, texts.
Transitional effects.
Captions.
High quality screen capture.

I have not used it, but I would expect that Wondershare's product is rather poor.  They appear to be a cheap knock off brand that spends more of their time paying for fake reviews and spamming forums than they do with software development.  I'd recommend staying away.

If you are looking for software for windows then:
.Lightworks (free but you need an account)
.Jahashaka
.If you do not want to use either of those, use Windows Live, Blender, slowmoVideo, and GoPro Studio together in your workflow.
  Typically what I do is import the file using GoPro studio(which can be used on most video formats) and color correct the video, then either using GoPro studio or slowmoVideo I add slow motion effects if needed, and Blender can be use to add CG (something I've never done) or maybe camera movement. The final edit of clips, i.e syncing it to music, etc. is done in Windows Live Movie Maker.
If you are uploading to YouTube I highly recomend you check out GoPro studio.

Jahshaka is pretty much dead in the water at the moment. KDEnlive is probably the most active project at the moment but there's also kino, lumiera, LiVES and of course Blender.

Yeah but if he doesn't have Linux he can't use kden live.....that being said if he does have Linux good for him because kdenlive is pretty darn powerful....

kdenlive is also available for mac, but not for windows at the moment.


text:
ffmpeg drawtext filter problem with eif option
I want a countdown timer in my video in hours minute second format. I tried "drawtext" filter using eif option but it only provides me with countdown timer in seconds. I want complete H:M:S format.
Edit:
Currently I'm using
ffmpeg -i input_file -vf drawtext=fontfile=/address:text='%{eif:10-t:d}'

This will start countdown from 10 seconds

What's the current command you're using?

currently i m using ffmpeg -i input_file -vf drawtext=fontfile=/address:text='%{eif:10-t:d}'
this will start countdown from 10 seconds


text:
Adding a watermark with programming code on a video so that it gets activated if it does appear on a website instead of the original
Hello I would like to know if is there such a way has to inject programming code into a video, so that for example if the video gets ripped from different websites, that video loses all the video properties or becomes corrupted and displays a watermark like saying :  Do not support stealing video views.
Because I do know that many sites gets away stealing millions of views, and not crediting the proper content creators, so I wanted to know if there was such a way, so that it doesn't happen, and that if the video gets uploaded through another website and gets ripped the code that was injected on the video itself, gets activated and in that way corrupting the video , or disabling the video part.
There would still be a way of recording the screen with such a program, but it would become more difficult doing so.

My thoughts as a programmer:
You can make make watermark hardcoded in the video, and remove it with the script in your player. For example you add big text "STOLEN" in your video but not with white or semitransperent font color, but with inverted color of every pixel. Like that:

After that, player on your site will invert those pixels again on the fly. You will always put your "STOLEN" watermark in same place, so you will need to hardcore position of the text in the player only once.
In that way only player on your site will know how to correctly remove watermark.
However it will be pretty easy to look into code of your player, to find all hardcoded information, because player will be running in the user's browser, what means in the users PC.

it probably won't work quite that well as expected because of compression artifacts but the idea itself is pretty good

Thank you! Do you think that I should patent this idea? =)

There is fundamentally no way to do this. If you can display a video so that someone can see it, then it can be copied or stolen. Various types of DRM can push control to different areas, but even if you could control every part of the chain including the end user's PC and monitor, they could still use a video camera.
So your only realistic solution is to place a visible tag so you know where the video has come from. This still does not prevent piracy or copying (you can't) but it raises the awareness.

No. At the moment, there is no video container that can contain DRM code. You would have to build an entire DRM-system around it, which would result in a bad user experience. Also, every DRM can be cracked (Though this might not be true in the future. There is Denuvo which is used with game DRM and hasn't reliably been cracked yet). Just put your watermark on the video and inform the audience about their rights. If you see your video on another website, you can request a DMCA takedown or something similar depending on the jurisdiction of your country. You can also contact Google to have unauthorized publications of your content removed (from Youtube, Search Results et c.)
This answer is somewhat incomplete because you haven't mentioned how your video will be distributed.

I did put on my comment that it was youtube , but nowadays more and more people are ripping the videos from youtube downloading them and putting them on facebook, stealing and don't giving proper credit, and facebook doesn't do a single thing even if you tell them to remove.

I don't see that comment anyway. In this case, there is absolutely nothing you can do except the watermark thing. Even if there were a way to do this, Youtube would reject the video or the DRM would be lost upon Youtubes reencode. Well that's just how the internet works, can't really do anything about it. Again, if you see your video being used unauthorized, it's your intellectual property and you can take any legal steps you feel are appropriate


text:
How to make a “follow the bouncing ball” video?
I found easier to teach some score by reading it with the student while playing, and I saw that many people online use this priciple on videos as well:
Do you know how can I make that kind of karaoke-style animations for scores?
Is there a software better suited for it?
For reference, I'll put here a link to a video with the goal I'd like to reach:

There's a tutorial on how to make a bouncing ball karaoke-style lyric follower using After Effects here:
http://aescripts.com/beat-assistant/
The example you give should be simpler, as the ball only bounces on each quarter-note beat -there aren't any lyrics to worry about.

Hey Tom, could you include more detail about the contents of the link in your own words?  Currently this answer wouldn't give any help if the link were to go dead.


text:
Why deshaken video looks "wobbly" and how to fix it
When I filter a shaky video through deshaking filter (that fixes frames positions and rotations), the resulting video looks "wobbly" (example gif), i.e. while there are no per-frame displacements or tilt, there is still per-frame deformation.
How is it called and how do I get rid of it?
Note: The question is not about motion blur, it is about geometrical deformation that is not rotation and moves.
Update: I have experimented a bit with various videos and found out the case where the problem is visible the most.
If camera is held at right angle to the object (), I get only motion blur after deshaking.
But of camera is held at angle to the surface (), then I got this type of distorsion when moving the camera: .

Try Mercalli from ProDAD. They claim that it is able to remove wobble and jello.

@altarvic, I looking mostly for CLI-based FFmpeg-facing things like vidstabdetect/vidstabtransform. a stand-alone Windows application that works in Windows Vista, Windows 7 or Windows 8 is not nice too. Maybe I'll try this in Wine...

The problem is that this is what the original footage looked like.  While you can stabilize the objects themselves by tracking, you still have motion blur from the movement because the objects moved within the time each frame was being captured.  Additionally, you also have perspective changes if the camera is moving in 3d space in addition to having the angle change.
This motion blur appears regardless of the stabilization as the stabilization simply repositioned the video to keep objects in the same place, but you can't get rid of the motion blur without completely synthesizing the image to produce something that resembles what the frame would have looked like without any motion blur.  This is both exceedingly difficult and also extremely likely to introduce as many artifacts as it fixes.
Similarly, the perspective issues result in a shifting perspective without corresponding movement as the camera position changes are counteracted by providing a perspective correction, but the contents of the video are still viewing from the wrong angle, so what portion of the surface is visible changes very disconcertingly.
This is most obvious if we take a hypothetical situation where we have a camera looking at a dice.  We start looking straight down at two dots.  Then, after a few seconds, the camera suddenly gets jerked around to the front and we are looking at 4 dots.  To smooth that camera motion, we would need to make it look like the camera movement was smooth between the two positions, however, we don't actually know the 3d geometry of the dice, we just know that it shifted relative to other things in the scene.  We can't simply apply some distortion to each frame, because half of our frames only show the 2 dots and half our frames only show the 4 dots.
Most image stabilization is limited to working with whatever detail is available in frame and warping and adjusting it (and in advanced cases, independently warping individual objects on screen).  We can shift the perspective of the image so it seems kind of like the camera is moving, but we'll still see the two dots until suddenly it changes to 4 dots.  The camera movement will feel a bit more smooth, but the perspective was telling us we were looking at half way between the side and the top while the number of dots shows us to be looking at the top.  This disjoint can't be fixed without synthesizing new data, which is super hard.
The best bet to avoid motion blur is to use the fastest possible shutter speed when capturing footage.  This will reduce the amount of motion blur present and help make stabilized footage look much better.  After the fact, it is exceedingly far more difficult to correct for.
For perspective, there isn't much you can do other than trying to limit the amount of changes in position of the camera.
There are some interesting bits of research by organizations like Microsoft Research (there is also an interesting tidbit they have here about what the currently available state of the art is) can build point clouds that can be used to correct for perspective issues if the video is complete enough, but such research is exceedingly ground breaking and mind numbingly complex, so you won't find it in the open source world yet (or even the commercial one quite yet.)

The question is not about motion blur. Looks like vitstabtransform corrects: 1. position; 2. rotation; but it is not engouh. Other geometrical distorsion creeps in. I want to know how is it called and how do I get rid of it.

OK. That is a crappy stabilization algorithm plus motion blur plus perspective issues. It is doing a perspective transform but the image is still shot from off angle so the visual information is inconsistent with the angle it appears to be from.

So what should I look at when searching for non-crappy open source stabilization?

Stabilisation is such a complex problem, mathematically and programmatically, to put it bluntly: there ain't any open source project with enough research budget (or money full stop) to make anything close to the commercial products (referring to After Effects' Warp Stabiliser, which still would struggle with this shot - and it's got all of Adobe R& D behind it).

There are more professional programs that have largely solved the stabilization problem, Smoke and Nuke being two examples, but you're looking at thousands of dollars for that software unless you're a student.

@KCMcLaughlin - have they solved the perspective shift that Vi was talking about?  That MS research stuff is pretty recent and it was majorly ground breaking as nobody else has been even close to perspective correction as it involves having to completely rebuild the 3d scene and motion estimate from a single 2d viewpoint.  I would have expected to have heard about it if anyone had fully solved a perfect way to recreate and motion estimate it.

@AJHenderson I'm not aware that those companies have made use of that recent research, my comment was more in response to nchpmn who was using AE as his best example for stabilization when there are several much better programs.

@KCMcLaughlin - ah yeah, there are definitely better options than warp stabilizer.  There is a reason that Mocha was (is it still?) included with AE.

Since you've not accepted the other two answers (which I thought were very good) because they focus on motion blur and parallax/ perspective, I'm guessing that the "wobble" you're talking about due to the rolling shutter effect that CMOS sensors introduce to footage.
In a nutshell, CMOS sensors scan an each frame of an exposure very quickly from top to bottom.  While the entire exposure occurs within the 1/60th of a second it takes to capture a 30fps 180° shutter image, for example, the capture is not instantaneous.  This causes the image to skew temporally, an effect which is most visibly noticeable when the camera pans quickly or shakes.
The best way to avoid this problem is to use a camera with "global shutter".  CCD sensors in old camcorders did not suffer from rolling shutter, but because CMOS outpaced the development of CCD and because not many people noticed rolling shutter, global shutter cameras are now a niche market.
Congratulations.  You fall squarely within this niche.  But consider yourself in good company.  One of the primary markets for global shutter cameras is the VFX industry.  This is because rolling shutter is A) particularly problematic in matchmoving software like Boujou and B) particularly noticeable after software stabilization.
The trouble with rolling shutter, is that it doesn't actually cause a perspective shift, although it may appear to.  For example, point your cell phone camera out the driver's side window of a moving car and snap a picture (while someone else is driving, obviously).  The image will slant in one direction.  Now snap a picture out the passenger window.  The image will slant in the opposite direction.  So while you could easily correct this "slant" in Photoshop with edit->transform->skew or edit-transform->perspective, there's no way for software to perform the correction automatically, because it doesn't know which window you were shooting from.

Another example: Take a picture of a spinning propeller, and the blades will appear to curve, not slant.  Rolling shutter distorts images in ways that post software can't compensate because the variables include camera motion, scene motion, and direction of scan.

I realize this information doesn't help fix footage you've already shot, but hopefully it will help point you in the right direction.  I'm not too familiar with many software packages to fix this problem.  After Effects has a "rolling shutter" plugin which may be sufficient for your needs.  Perhaps someone can recommend some others.

I usually accept answers when I try things suggested and it's work. It can happen after a long time (i.e. the next time I need to deshake video). And the answers look edited recently, I still have to re-read them.

Maybe it's that parallax/perspective. The last time I was reading the answers it was not mentioned (or I was reading too carelessly).

Rolling shutter? Does it mean the distorsion in vertical movements and horisontal movements will be different?

@Vi - In fairness, I did kind of stealth add the parallax/perspective bit to mine in response to your comments.  Perspective shifting/parallax is what you are talking about from the images you added (which are super helpful by the way.)

I expect this perspective thing should not be too tricky to add to simplish stabilizer. Maybe I'll request the author of vid.stab to implement it (or even try myself). I'll revisit the question later...

There is a perspective shift. If you look at the water tank you'll see that it is more skewed than the poles in the background, because it moves more in the frame during the exposure. Applying a skew to the whole image would over-correct the background. To correct it completely you'd have to skew the foreground and background separately. This would require adding in the missing background. Motion analysis could tell you which parts of the frame are moving and correct them according to their speed, and content-sensitive fill could plug the gaps. So it's possible, but difficult.

When a camera is recording video, it takes many still photographs per second.
For each of these photographs, the camera opens its shutter (either mechanical or electronic), and allows light to hit the sensor for an amount of time. During this time, any object that moves, or any motion in the camera, is captured as motion blur. Imagine watching an athlete running - theirs legs, arms are blurred in the image.
Stabilising footage uses algorithms to detect and calculate the movement in the shot. It then moves and warps the image so the greatest amount possible doesn't move (I.e. The background - a "steady" shot). However, the motion blur captured in the image still exists - this creates the jitters and wobbles you are seeing.
Unfortunately, it's also (to my professional knowledge) impossible to remove - it's part of the original, recorded image.
If you have manual control over the camera, you can try changing the shutter speed to a faster value (1/big number or small number°) to reduce the amount of motion blur recorded. However, this can introduce other problems, including strobing, from a severe lack of motion blur, and making it more difficult to get an exposure in dark scenes.

It is not about motion blur. It is about remaining geometric deformations that are not rotation and moving. Motion blue is also a problem, but the separate one.

The common name for the effect you're talking about is "Jello" and it's caused by rolling shutter in combination with camera shake.
Each frame is distorted by the rolling shutter because, for example, the left edge of your fence is at a different place left to right as the "shutter" selects the pixels as it rolls from top to bottom of the frame, resulting in a trapeziodal distortion of that frame.  Next frame the shake may cause it to distort in the other direction.  Over the course of several frames this results in the "Jello" effect with vertical lines apparently wobbling side to side.  Running stabilising filters sometimes makes it look even worse because the wobble can be hidden a bit when there's a lot of other global motion going on.
Here's an OSS solution, it's a plugin for VirtualDub, it corrects shake, roll, and rolling shutter / Jello:
http://www.guthspot.se/video/deshaker.htm


text:
I'm having trouble with using a NAS with After Effects
Rendering files to my After Effects project from the NAS does not work. Also importing DNG files is not working. After Effects seems to be not able to write on the disk. The NAS is connected in a MAC via AFP. The NAS is Visible to After Effects as a Network Drive.
Error: After Effects error: File couldn't be opened for writing:"/xxx.dng".(3::0)
After Effects: CC2013 12.1.0.168
NAS: Thecus N5550 RAID 6 with 5x Western Digital WD30EFRX 5400rpm
NAS connection: tried AFP and SMB

Hello, and welcome to Stack Exchange! Could we have some more details please? How are you connected to your NAS (Ethernet?), what hard drives are installed in it (7200rpm?), what version of After Effects are you using (CC 2014?), etc. The more information we have, the more likely you are to get an answer.

Thanks for your advice added some more info in the description.

Additionally, what actual error are you getting?  What are the specific symptoms of the problem?  Is the NAS simply not visible to the program?  Have you mapped it to a drive?

Thanks for your advice switched my AE to English and added the Error message in the question.


text:
Premultiplication issue with two jpeg sequences
I have two (rgb) jpeg sequences one with the alpha information (black and white) the other one with the green screen footage. I keyed them with Keylight and they look perfect in AE before exporting.

When I import the jpeg sequences back in AE and apply the alpha, I get a green hallow.

It seems to be some premultiplication issue. What did I do wrong exporting / importing the jpeg sequences?

Do you've tried another format like png/tga with alpha?

I have tried exr with an alpha. Same problem in nuke! I need it as a jpeg format though.

You need the jpg alpha's for creating an alpha channel in nuke, right? Unfortunately can't test it at the moment. Can you provide an image to test with?

Added test footage. I need it for 3ds Max but it would be nice to know what to do in After Effects or Nuke.

Same with nuke... For now you can add an Erode(Filter) and a Blur node (quadratic) after that to move the mask/shape inside.

My solution for now is to render the keyed footage with a black background and not the original footage with green screen. I'm still wondering if could preserve the green screen in the footage and still not get the nasty halo.

Looks like you need to use a spill suppresser to kill the green in the areas where the alpha channel is not 100%.

Lossless compression for the alpha channel would be better, if you can use something other than JPEG.  JPEG has ringing on sharp edges, and the only thing that matters for alpha is edges.  (because interiors are solid color, trivial for any codec).  Image formats like webm have the option of lossy compression for the RGB, and lossless alpha, for example.  If you're at high enough rez and high enough bitrate, there's probably no visible problem, though.

(nvm, AJ already suggested that earlier)

Part of it may be the fact you are using JPEG sequences.  JPEG isn't a pixel accurate format and you are going to have some differences in block quantization that could potentially result in mismatches.
I don't think that is the only issue since it is a bit too regular for it to be the only issue, but I'd try to use an intermediate format that is a bit more lossless for doing things that need to be pixel accurate match up.

It has the same problem with a multichannel exr. So the jpeg shouldn't be the issue.

The problem is that my alpha Mask has a feather. Which results in greeen peaking through the Mask. So the only solutions are export an alpha mask with no feather or export the original image with a black or desaturated background.

I'm still wondering though, why it does not have that problem when it is still in After Effects. I guess Keylight automatically desaturates the green on the semitransparent areas of the Alpha.

If the feather is properly positioned it shouldn't matter, but if the feather is too far out it would be. You could try upping the edge growth or whatever the equivalent setting is to move the feather in to keep a soft edge.

What I'm wondering though is why it looks ok in After Effects though.

I'm not an expert at this, but you might be running into a problem because of working in a non-linear colorspace.  IDK if that's even the right term, but I've seen ffmpeg docs or something say something about color spaces being linear or not.  I assume that means something like alpha blending will suffer from color shifts if done naively (new = alpha-weighted sum of all inputs) in a non-linear colorspace.  So that's what you should google if you want to maybe figure out what Keylight did.


text:
How long should the maximum length of an exr sequence be?
I'm wondering if there is a maximum length for an exr image sequence or an image sequence in general. In After Effects I'm having trouble to load long exr image sequences
The Image sequence is loading fine to a certain length and then it doesn't load the following frames it either shows them like the footage is not connected (colored test screen) or it shows the last frame that was successfully loaded.

How long it is exactly?

10700 Frames long

There is no limit. Maybe there is a composition length maximum, but I think that's around 3 hours.

Sounds more like  a bug - do you get error messages? Can you explain your trouble in detail?

Thanks for updating the question - you can try to open up the frame(s) in another tool (blender, fusion, nuke, natron). If it works fine - send a bug report to adobe.

Seems like a bug it is loading fine in NUKE.

Nice :) Please report it for all of us and hopefully they will fix it soon.

I'm voting to close this question as off-topic because it's a bug report.

Found out that this was a problem with my hard drive formatting.

Thanks for sharing your experience @Benedikt! It was FAT32 formatted?

Maybe check the frame after it stops loading, it could be a corrupt file that causes After Effects to stop loading the rest of the files.

If I separate the frames in folders of 1000 frames and load them in one after the other it seems to work all fine.

That is a strange behavior. It really does sound like a bug. I've used image sequences that exceeded more than 10k frames.

In After Effects?

Yes, you might want to try to use a newer version of fnord'S OpenEXR plugin: http://www.fnordware.com/OpenEXR/
Its free and included in the trial download for ProEXR for PS.


text:
Can I multiply 3D cards in a Nuke 3d scene on top of each other, like i can multiply layers in After Effects?
I have a 3D Scene in Nuke with several cards behind each other in 3d space. Is there a way to multiply them on top of each other? Like with layer blending modes in After Effects but still keeping it a NUKE 3D scene?

I don't think it's possible without doing a 2D merge on two rendered elements

Figured out a solution. See answer on the bottom.

It is not possible to use  blending modes in a 3D scene. What can be done though, is to use several scenes or 3D objects with a scan line renderer and a cam. Each of those are merged with the blending mode of choice after the scan line renderer in 2d.

Yup that will work. But fair warning it can get slow really quickly if you have to do this a lot.

authors: Андрей Горбунов


text:
Is it possible to relight filmed footage with NUKE or After Effects?
I have a Video of a face that I filmed with soft lighting and almost no shadows. The camera is a static portrait shot. Now I want a spot light to move slowly around the head. Is something like this possible in NUKE or After Effects?

Note: Only the light should be done in post. The head should be real footage filmed by a static camera.

Do you have raw material? Can you add a styleframe to your question to understand what you are looking for?

It should look something like this: http://bit.ly/1s2awrJ But with a moving light and a filmed face.

I suggest build a real lighting rig and maybe stabilizing her neck.
If you decide to do it afterwards you have to:

Modeling the head and her hair (scan it if this is possible)
Tracking the shots with blender or pftrack
Replacing the head in your favourite package

There are some obstacles:

To get realistic shadows and highlights you probably need a better rendering engine for nuke
Detailed modeling is necessary to get the shadow right (espacially for the nose and the hair)
Modeling her hair can be a very difficult task

Im not sure if I have to model the hair in that much detail. Can't I make a rough head and if I shoot in front of a green screen mask out the rest of the head

I think you have to, because shadows don't fall Linear and highlights are not only a bright spot on her hair, see: https://i.sstatic.net/TCKXZ.jpg Maybe you can fake the shadow with a mask, but to animate highlights and shadows by hand sounds tricky.

Would a point cloud or a scan with photographs work?
https://vimeo.com/54931986
http://www.agisoft.com/

@eundd
Looks great, good idea. Unfortunately I don't have experience with the point cloud generator. With photo scans I have a bit, but for my purposes it never worked properly. If you decide to test it, let us know if it works. :)

Yes, it is possible in either, but the difficulty level is going to depend on how complete of an illusion you want.
The easiest effect is to simply setup a soft circle as an adjustment mask and apply an exposure increase to it.  This will result in looking like there is extra light on the masked area of the shot.  The problem is that it won't produce shadows or respect facial geometry, so it would look a bit more like shining a light on a painting.
You can compensate for this by roughly modeling the facial geometry and applying an actual light source in 3d in order to generate the brightening, but this would require modeling the face and matching the movements to those in the scene.  Both Nuke and After Effects support calculating camera movements, but it is a complex thing to do, as is the modeling of the face and the animation of the face to fit the scene.
If you don't have weeks to dedicate to the task, it probably isn't worth bothering to try the more accurate version.
This is one of those things that is far, far more practical to handle in camera than it is in post.

I know it would be better to do as much as possible in camera. What i wanna achieve is the light to move in slow motion around the head. So filming is kind of difficult. Modeling might be an option. Maybe a 3d point cloud. https://vimeo.com/89616610


text:
Is there a way to parent an objects position to another objects position in Nuke, so they move parallel to each other?
I want to move an object parallel to another object in Nuke. I managed to get the object to move to the same position as the other one. (Copy link paste absolute.) But I wasn't able to figure out how to move it relative to the other object. Copy link and paste relative did not work.

What about holding control and drag the position of one node to another?

@poor control(apple:command) puts it on the exact same position i want it to move relatively with the linked object. Like Object 1: y(0.045) Object 2: y(-0.66). If I move it up the new position would be 1:y(0.40) 2:y(-0.71). Both objects move 5 points down...

You don't want to have 2 transforms (one of them relative)? I think adding an example to the question would be nice for the community.

I simply want to objects wo move parallel to each other.
http://mathematicsi.com/wp-content/uploads/Angles-in-parallel-lines-01.png

You can simply edit the expression values:

create a new Transform Node by hitting T
drag and drop the translation values by holding CTRL from original transform node to the new one (this should create a green line between that nodes)
right click the translation curve icon of the new transform node to open up the Edit Expressions Window
in this window you can do some math with the existing y or x values to move the the child node


text:
Video format to get my comp to export under 50Kb
I have an approx. 8s long video in Adobe After Effects CC, res. 200x200px. I need to export it so it has <= 50Kb, which format should I choose so it keeps the most quality but falls under these constraints?
-> here is the .pdf, but it's in Czech. The relevant info is translated lower:
->
format   size (px)  kB   length (s)
Square   200x200    50   unconstrained

What is the frame rate and needed color bit depth?  50KB (assuming you mean kilobytes, not kilobits) is VERY small for any length of video.  Even 200 by 200 video that is 256 color.

Right now I have 23.98FPS, but I guess there are no constraints as for the frame rate. I just want to know the best way to produce a very small file size. I tried H.264 with quality of 50 and it produced ~500Kb, but I need to cut it down even further..

What is the use case and why does it have to be so small?

I made a videobanner for a client, it's going to be shown on a website in 200x200px resolution. The client sent me a .pdf that shows the constraints for videobanners on that website, and the filesize says 50Kb. Is it possible they mean a flash video? Would that make a difference?

Can you possibly cut and paste the relevant portion of the PDF in to the question.  This is next to impossible.  Something has to be wrong with how you are reading it.

updated, please check

After reviewing the PDF, I can confirm that you are misreading it.  They are looking for a flash animation, not a video.  You will not be able to use your After Effects assets at all.  You need to remake the ad as a flash animation in Adobe Flash using vector graphics in order to fit within their 50KB limitation.

Hello, so I redone the animation in Adobe Flash. What do you recommend on export settings so I get it within the limitation?

How close are you? Did you use vector animation and assets?

Anything except pictures is vector. I'm currently at 9,8Mb.. probably caused by the large occurence of images.

You need to down size you images a lot. 9.8mb is gigantic for a flash animation.

At 200px by 200px, you are looking at extreme levels of limitation.  You may want to consider something like a gif at that point unless you also need audio.  Just audio alone for 8 seconds completely blows your 50KB bandwidth budget.  50KB is a mind numbingly small amount of data.
At 8kbps, no raster video format will be usable, even at 10fps and 200 by 200 pixels with 256 color.  You might be able to use a swf animation to fit within that limitation, but even it would have to be stupidly highly optimized to fit within your limitation.
Are you sure you are reading the PDF correctly?  What you are talking about is virtually impossible.

I don't need audio. But in the .pdf I received, they're talking about a flash video. Is the needed filesize possible in Flash?

Which flash format is it talking about? FLV or SWF?

Either one I guess


text:
How do I convert a series of PNGs into an AVI using Avidemux?
I'd like to convert a series of PNGs (in this case 180 in total) into an AVI movie using Avidemux. I've tried opening the first of these numbered PNGs (starting at 1I090001.png ending at 1I090180.png) in Avidemux and then clicking File→Save and typing the AVIs name with the .avi extension at the end, but this created an unreadable avi (VLC gave an "No suitable decoder modulate" error).

Use ffmpeg instead, e.g.
ffmpeg audio.mp4 -framerate 50 -pattern_type glob -i 3_DucksTakeOff_720p50_CgrLevels_SINC_FILTER_SVTdec05_/'*'.sgi -sws_flags lanczos+print_info -c:a copy -c:v libx264 -preset slow -crf 22 -pix_fmt yuv420p output.mkv
adjust the input file naming as necessary.  ffmpeg can read png just fine.  If there are other PNGs in the same dir that you don't want to include, use
-start_number 090001 -i dir/1I%06d.png  -frames 180.  (Note that it matters what goes before -i input, and what goes after.  Stuff before is input options, stuff after is output options.)
leave out the audio file if you don't have an audio track to mux.
Decrease the CRF to get higher quality at higher bitrate.
Increase the preset to slower or veryslow to get higher quality at similar bitrate but slower encode time.
Leave out the -pix_fmt yuv420p to not force ffmpeg to subsample the chroma after converting from RGB (PNG's color format) to YUV.  (Most hardware players will only have hardware decoding for 8-bit 4:2:0 h.264, unfortunately.  Same for GPU-accelerated decoding on PCs.)
Hmm, I'm not sure whether ffmpeg defaults to the bt.709 or bt.601 color matrix for RGB -> YUV conversion.
If you really need to make an AVI (with a DIVX / MPEG4-ASP video stream, I assume) for compatibility with an old hardware player, then see the guide.  With avidemux, did you make a non-standard AVI, like h.264 in AVI?
I highly recommend against avidemux for video encoding.  Its x264 options dialog is ancient and terrible.

This did it for me:
avidemux --nogui --load 1.png `for i in {2..15}; do echo "--append $i.png"; done` --no-audio --fps 5 --video-codec Xvid --save-ogm out.ogm --quit

I only tried with 15 images, but you can increase the total number if you want. For whatever reason for me it messed up colours a little bit, and i was unable to save into AVI, but hopefully it will get you started on the right track.
You can do all of this manually, in fact every part of this command is a manual action (just automated). So let's take it apart:

--nogui, should theoretically tell the program to not show gui at all (although on my machine i still saw some windows popping up).
--load 1.png is equivalent to opening 1.png.
--append _.png appends a file to the end of the video. Since we need to do this several times, it's easiest to do this via a command line.
--no-audio turns off the audio (you can do that in the menu)
--fps 5 sets 5 frames per second. Since images don't have such a setting automatically, you should do it manually.
--video-codec Xvid selects Xvid as a video codec, other codecs are Divx, FFmpeg4, VCD, SVCD, DVD, XVCD, XSVCD, and COPY.
--save-ogm filename saves the OGM file. --save is there to save an AVI, but unfortunately you don't have others built in.
--quit this one quits the program at the end.

Now, if you wish to load all the files into AVIDemux, but not to encode them automatically, nor quit the program (you will be able to play in graphical environment with settings as you are used to) you can do the following:
avidemux --load 090001.png `for i in {090002..090180}; do echo "--append $i.png"; done` --no-audio

If you get an unreadable file when you save into AVI it can be because of the following reasons:

Width is not divisible by 8. Actually it's best if your width is divisible by 16, especially when you deal with such an old container as AVI. If this is your problem, try resizing the video, it can be done via video filters; resize or crop or border are your friends. Filters will actually warn you if your result is not divisible by the good value.
You have selected a codec that is not suitable for AVI.
You have forgotten to explain to AVIDemux that there is no audio in your output (that is why i have added --no-audio for you already).

Having said all that. I recommend that you give avconv a try. It will make many jobs much easier.


text:
Add image under the video with ffmepg
I want to extend basic usage of watermark and put it under the video.
That means. I have input video 720x480 and image 720x20.
On output i want to have video 720x500 where video aspect is preserved and positioned to top and image is added to bottom.
input video
|--------------------------|
|                          |
|                          |
|                          |
|          720*480         |
|                          |
|                          |
|                          |
|--------------------------|

input image
|--------------------------|
|          720x20          |
|--------------------------|

output video
|--------------------------|
|                          |
|                          |
|                          |
|          720*480         |
|                          |
|                          |
|                          |
|--------------------------|
|          720x20          |
|--------------------------|

Thanks

Can you upload an image to see what you need?

@poor - put another way, he is saying he wants to append the image to the bottom of the video.  So the output should be the entire original video with the image below it. (The top edge of the image would be directly next to the bottom edge of the video.)

I added some visualization :)

Use the vstack filter:

ffmpeg -i video.mp4 -i image.png -filter_complex vstack output.mp4

If the image is not the same width as the video then resize it with the scale filter:
ffmpeg -i video.mp4 -i image.png -filter_complex "[1:v]scale=320:-1[bottom];[0:v][bottom]vstack" output.mp4

This generates a warning "More than 1000 frames duplicated" and takes forever to compete

@DineshSingh Need to see your command and the complete log. You can use a pastebin site and provide the link in a comment.

I think it's probably easier to combine (stack) a full dimension background image (720x500px) with your video in ffmpeg instead of adding the 20px footer to the video. You can simply use the overlay filter for this:
ffmpeg \
    -loop 1 -i 720x500.jpg \
    -i 720x480.mp4 \
    -filter_complex overlay=0:0 \
    -t 0:01.48 \
    out.m4v

Note: In this example you have to set the duration of your output video manually with -t parameter.

If you don't want to specify the duration you can use shortest flag within the filter if you use -loop 1 as @LordNeckbeard mentioned in the comments below:
ffmpeg \
    -loop 1 -i 720x500.jpg \
    -i 720x480.mp4 \
    -filter_complex "overlay=0:0:shortest=1" \
    out.m4v

If you use -loop 1 then you can set shortest=1 in your overlay filter, as in overlay=0:0:shortest=1.

@LordNeckbeard Thanks for your ideas! I've updated my answer.


text:
change Lightworks folder [Linux]
I've installed Lightworks Free on Linux Debian.
When execute, it generates a Lightworks directory in /home/USER.
After move it to another directory where got all the programs, and execute it again, it keeps generating the previous folder on the same place.
How can change it to a preferred location?

Do you have the Free or Pro version?

Thx for answer. The free version.

According to the product comparison source, the free version does not allow to "User definable project locations". This is only possible for the Pro version.


text:
Why processor is "better" for encoding than GPU?
I was reading this article and I saw that a CPU is better for video compression than a GPU.
The article only says that happens because the processor can handle more complex algorithms than the GPU, but I want a more technical explanation, I did some search's on internet but I didn't find anything.
So, anyone know to explain or link a site to I had a more deep explanation of this?

The article you linked is not very good.

Normally, single pass bitrate encodings convert your bitrate into a RF
value with a maximum bitrate limit and takes it from there.

x264's one-pass ABR ratecontrol is not implemented as CRF + limit.  He's right that 2pass is by far the best way to hit a target bitrate, though.
And he apparently doesn't realize that he could start x264 with threads=3 or something, to leave some CPU time free for other tasks.  Or set x264's priority to verylow, so it only gets CPU time that no other task wants.
He also mixes up threads=1 with using CUDA, or something.  No wonder you have questions, because that article has a TERRIBLE explanation.  The whole article basically boils down to: use x264 --preset veryslow --tune film --crf 26 in.m2ts --out out.mkv, or maybe use some light filtering with an input AviSynth script.  He actually recommends "placebo".  That's hilarious.  I've never seen a pirated file encoded with placebo.  (you can tell from me=esa or me=tesa, instead of me=umh for all the good quality presets, right up to veryslow.
He also doesn't mention using 10bit color depth.  Slower to encode and decode, but even after downconverting back to 8bit, you get better 8-bit SSIM.  Having more precision for motion vectors apparently helps.  Also, not having to round off to exactly a whole 8 bit value helps.  You can think of 8-bit per component as a speed-hack; quantizing in the frequency-domain and then compressing that with CABAC means that higher bit-depth coefficients don't have to take more space.
(BTW, h.265 gets less benefit from 10-bit encodes for 8-bit video because it already has more precision for motion vectors.  If there is a benefit to using 10-bit x265 for 8-bit video inputs, it's smaller than with x264.  So it's less likely that the speed penalty will be worth it.)
To answer your actual question:
edit: doom9 is up again now, so I'll tidy up the link.  Go to it for proper quoting of who said what.
http://forum.doom9.org/showthread.php?p=1135399#post1135399
google only caches the stupid print version which doesn't properly show the quoting.  I'm not quite sure which parts of these messages are quotes, and which are attributed to the person themselves.

Highly irregular branching patterns (skip modes) and bit manipulation (quantization/entropy coding) don't suit present GPUs. IMO the only really good application at the moment are full search ME algorithms, in the end though accelerated full search is still slow even if it's faster than on the CPU.
-- MfA

Actually, basically everything can be reasonably done on the GPU except CABAC (which could be done, it just couldn't be parallelized).
x264 CUDA will implement a fullpel and subpel ME algorithm initially; later on we could do something like RDO with a bit-cost approximation instead of CABAC.

Because it has to do everything at single precision floating point
-- MfA

Wrong, CUDA supports integer math.
-- Dark Shikari

Dark Shikari is the x264 maintainer, and developer of most of the features since 2007 or so.
AFAIK, this CUDA project didn't pan out.  There is support for using OpenCL to offload some work from the lookahead thread (quick I/P/B decision, not a high quality final encode of the frame).

My understanding is that the search space for video encoding is SO big that smart heuristics for early-termination of search paths on CPUs beat the brute-force GPUs bring to the table, at least for high quality encoding.  It's only compared to -preset ultrafast where you might reasonably choose HW encoding over x264, esp. if you have a slow CPU (like laptop with dual core and no hyperthreading).  On a fast CPU (i7 quad core with hyperthreading), x264 superfast is probably going to be as fast, and look better (at the same bitrate).
If you're making an encode where rate-distortion (quality per file size) matters at all, you should use x264 -preset medium or slower.  If you're archiving something, spending a bit more CPU time now will save bytes for as long as you're keeping that file around.
side note, if you ever see messages from deadrats on a video forum, it's not going to be helpful.  He's been wrong about most stuff he's talking about in every thread I've ever seen.  His posts turned up in a couple threads I googled about x264 GPU encoding.  Apparently he doesn't understand why it isn't easy, and has posted several times to tell the x264 developers why they're dumb...

2017 update:
ffmpeg supports h264 and h265 NVENC GPU-accelerated video encoding. You can do 1-pass or 2-pass encoding at the quality that you choose, for either hevc_nvenc or h264_nvenc, or and even with an entry-level GPU it's much faster than non-accelerated encoding and Intel Quick Sync accelerated encoding.
2-pass high-quality encoding:
ffmpeg -i in.mp4 -vcodec h264_nvenc -preset slow out.mp4

1-pass default encoding:
ffmpeg -i in.mp4 -vcodec h264_nvenc out.mp4

NVENC ffmpeg help and options:
ffmpeg -h encoder=nvenc

Use it, it's much faster than CPU encoding.
If you don't have a GPU you can use Intel Quick Sync codec, h264_qsv, hevc_qsv, or mpeg2_qsv, which are also much faster than non-accelerated encoding.

Use it if you value speed (and low CPU usage) over quality per filesize.  In some use-cases, e.g. streaming to twitch, that's what you want (especially the low CPU usage).  In others, e.g. encode once to create a file that will be streamed / watched many times, you still aren't going to beat -c:v libx264 -preset slower (which is not that slow, like near realtime for 1920x1080p24 on a Skylake i7-6700k.)

Using ffmpeg with -vcodec h264_qsv on my old Intel notebook with a Intel HD Grpahics 4000 made the rendering much faster!

To elaborate a little further on what Peter says, in general using multiple processors helps in cases where you have several independent tasks that all need to be done but don't have dependencies on each other, or one task where you're performing the same math on massive amounts of data.
If, however, you need to the output of calculation A as the input of calculation B, and the output of calculation B as the input to calculation C, then you can't speed it up by having a different core work on each task (A, B, or C) because one can't start until the other finishes.
However, even in the above case, you may be able to parallelize it another way. If you can break your input data into chunks, you may have one core work on doing A, then B, then C with one chunk of data, while another core works on doing A, then B, then C on a different chunk of data.
There are other considerations, too. Maybe you could find a way to parallelize the calculations, but just reading the data from disk, or over the network, or sending it to the GPU will take longer than doing the calculations. In that case, it doesn't make sense to parallelize it because just getting the data into memory takes longer than the amount of time you save by doing the calculation in parallel.
In other words, it's as much an art as it is a science.

Oh, yes x264 parallelizes quite well on multicore CPUs.  I scales nearly linearly up to at least 8 cores, and decently even beyond 32.  Motion estimation can be done in parallel, leaving only the necessarily-serial work for another thread, and similar tricks.

The question isn't parallelism in general, it's GPUs in particular.  They're much more restrictive in the code you can get them to run than CPUs.   I think it's because you can't have code with branches that go different ways on different blocks of the image.  I don't understand exactly why, but I think it's something like that.  Each stream processor is so simple, and with such limited means of having it run independently of the others, that either you always have to wait for the slowest one to finish, or you are limited in branching at all, or both.

If you had a cluster of computers (CPUs with independent RAM that didn't compete with each other for memory bandwidth and CPU cache), you'd break your input video into GOPs, and send sections of the still-compressed input video to be decoded and compressed on other machines in the cluster.  So only compressed input or output video would have to be transfered.  One a multicore shared-cache/RAM system like even a multisocket x86 workstation, you have multiple threads operate on the same frames at once.  (also means you don't need new code to do global ratecontrol for segmenting encodes.)


text:
MP4 / h.264 patent issues?
I know this is not a legal forum but I'm assuming this is a daily issue for most people on this site since h.264 video (AVC / MPEG4 part10) is so ubiquitous (and there is a legal tag here).
I've read about patent issues with h.264 video, but am a bit confused about it. Is there any problem with creating a video (using ffmpeg or any other tool) for commercial use? Or is the problem only for anybody writing software that creates this video type?

Logically speaking many cameras record using the mp4 file formats such as the Go Pro, it can also be noted that many editing suites allow for a final render in many formats. Though I have not formally educated myself in legal matters, I recommend being on the safe side and consulting someone who knows law, however as far as I know it is ok.

I don't think there's any issue with mp4 the container.  There ARE big patent issues with h.264, and possibly also with AAC audio.  Those royalties don't change if you had those streams in a mkv container.

IANAL, but as far as I understand it, if you're charging viewers for h.264 / MPEG-4 AVC content you may need to pay license fees. Even though x264 / ffmpeg are Free with a big F, they are just software libraries for encoding video streams into the H.264/MPEG-4 AVC format, which is covered by the MPEG patent. But the threshold for when fees are applicable is fairly high.
According to MPEG-LA, the license holders for H.264 / MPEG-4 AVC, the license fees applicable are:

Where End User pays for AVC Video:
Subscription (not limited by title)

100,000 or fewer subscribers/yr = no royalty;

100,000 to 250,000 subscribers/yr = $25,000;

250,000 to 500,000 subscribers/yr = $50,000;

500,000 to 1M subscribers/yr = $75,000;

1M subscribers/yr = $100,000

Title by Title

12 minutes or less = no royalty;

12 minutes in length = lower of (a) 2% or (b) $0.02 per title

Enterprise cap:

$3.5M/yr 2006 - 07,
$4.25M/yr 2008 - 09,
$5M/yr 2010,
$6.5 million per year 2011 - 2015

They also stated that they:

…will continue not to charge royalties for Internet Video that is free to end users (known as “Internet Broadcast AVC Video”) during the entire life of this License.

So if you're putting it on the internet free you don't need to pay them license fees, ever.
There's other fee schedules for software developers (though Cisco have released free source code and binary implementations of h.264 encoding software and have said they will not pass on any licensing charges for it).

subscribers/yr or users?

@Albi It says subscribers on the mpegla site. You'll have to ask your lawyer.

Edit: I should probably remove some of the worrying conclusions about using x264 / ffmpeg that I now believe are unfounded.  I put a section at the end to clear it up.  For now I'm going to leave the whole mess here.  Don't panic, x264 and ffh264 appear to be fine, legally, even for producing commercial videos at the standard royalty rates.
Just to clear up some terminology:  mp4 (the container format) may be covered by some patents, but nobody charges license fees for software or content.
h.264, aka AVC aka MPEG-4 part10 is heavily patented, and software or hardware for encoding/decoding h.264 video streams needs a license from the MPEG Licensing Authority (MPEG LA).  Content also needs a license.  (free and automatic for content that's given away for free.)
h.265, aka HEVC (next gen video codec successor to h.264) has about the same patent licensing as h.264, also through the MPEG LA.
wikipedia says the MPEG LA also licenses MPEG2, VC-1, and for some reason IEEE-1394 (firewire).
AAC audio, aka MPEG-4 something something, also needs a license (from via licensing, not the MPEG LA) for implementations in software or hardware.  IDK about AAC content.
To answer the question raised by epiclapser's comment about royalties for software / hardware that can create h.264 video, software that can create or decode h.264 needs a license for implementing the patented algorithms that are part of the codec.  For commercial software, this is paid by the software authors / distributors to the MPEG LA, so it's legal for people to use the software they buy.
Most distributors of Free software, like x264 and ffmpeg, don't pay, so people that download x264 aren't legally allowed to use it without paying a patent royalty.  People use it anyway without actually getting sued, as long as they're not a big target.  For personal use, I don't think there's any reason to worry.
I haven't looked, but I haven't heard about anyone ever getting sued for using ffmpeg's h.264 decoder or x264's h.264 encoder.  x264 users are recommended to obtain a license for its use directly from the MPEG LA.  (x264licensing.com is for people that want to buy a non-GPL license for x264.  Using it unmodified through ffmpeg, the x264 CLI, or anything else the GPL allows, doesn't require you to pay the x264 copyright holders.  I linked it because their FAQ clarifies that they can't sell you a license to use the h.264 patents, you still need that separately.)  I have no idea how many small-budget users just fly under the radar and don't do anything about patents.
I don't expect you'd have a problem selling access to h.264 video as long as you paid the content royalties stib described, even if you created those streams with x264.  (Which you should, because it gets better quality per bitrate than any other h.264 encoder, esp. if you give it lots of CPU time to do a rate-distortion optimal encode, with the slower or even veryslow preset.  Spend CPU time once when encoding, save bandwidth every time someone downloads.)
In an attempt to provide royalty-paid binaries for an h.264 encoder/decoder library to enable better interoperability, Cisco released Open H264.  It's compiled from BSD-licensed source code.  Unfortunately, it isn't actually much use for most applications because both the encoder and decoder are limited to Baseline profile.  And it's not changed very much from the reference implementation, so the encoder quality is bad compared to x264, and the decoder probably isn't fast.
This blog post has some interesting comments about the royalty setup for h.264 software implementations.
If the MPEG LA started seriously harassing Free software users / distributors, people would probably take advantage of Cisco's royalty-paid binaries.  Until then, nobody wants to let software patents force them to use worse software.
If you think these patent licensing issues are a load of crap for something that's supposed to be interoperable and a worldwide standard, use VP9 video and Opus audio.  VP9's current encoder equals or beats x264 on most content.  Last I saw, a blind listening test found Opus was at least as good as anything else (including Apple HE-AAC) at 64kb/s.  Web browser support for it is still weak, outside of Google Chrome, though.  IDK what's wrong with firefox being so slow to add an open-source audio decoder library.
edit:
I may be misinterpreting things.  This discussion of how to license x264 for use in the US (with replies from Dark Shikari, x264 maintainer) seems to only focus on use by broadcasting corporations.  I still can't figure out why Firefox would be on the hook for 5M$ for including an h.264 decoder other than Cisco's openh264, but somehow x264 and ffmpeg are distributed for free.  I mplayer (and I think ffmpeg) still have their website hosted in Hungary (http://www.mplayerhq.hu), I think for reasons of US Patent, DMCA, and similar sillyness.
This article makes me think that the MPEG LA only wants money from people distributing implementations.  I didn't find anything about how to license your personal copy of x264 to be legal for personal or non-profit use.  (mixed opinions in the comments thread on the exact meaning  of the non-commercial use clause in Final Cut Pro, for example.  I tend to believe the interpretation that it's only intended to stop you from running a stream through it as a broadcaster, or similar.)
edit2: Distributing source code doesn't count as distributing a "product", which is why pre-built binaries of x264 and ffmpeg are hosted outside the US, in countries with less restrictive laws.  There is much discussion about this exact issue in a thread on doom9 that I wish I'd found yesterday.  >.<  At least one guy on that thread actually did get a reply from his lawyer, for his x264 GUI.
It's probably not a bad idea to ask the MPEG LA if you need to pay extra for using x264 / ffmpeg, as well as selling the output h.264 content, if you're talking to them anyway.  I guess compiling your own copy of x264 counts as making only a single instance of a "product".  Under 100k units, there are no royalty fees for h.264.  Otherwise you might be safer downloading a binary, so if anyone's on the hook, it's not you.  But that's just silly.  I am NOT a lawyer.
I'd love to see a comment from anyone that can shed some light on whether you had to pay extra to the MPEG LA if you were using x264 to make your for-pay content, vs. a commercial royalty-paid encoder.
EDIT3:
I think I've made sense of this now.  There was never a need for a patent license to operate an h.264 decoder/encoder, just to distribute.  That was the confusion that led to this post.
So if you have a copy of x264 and ffmpeg, you're fine.  You can use them just as you would use any commercial software.  (With fewer restrictions, too, since some commercial software is only licensed for distribution to non-commercial users.  Don't panic about this, they say their EULAs are over-broad to make sure they don't leave loopholes...)
And if you downloaded them as source, or binaries from a server in a country without annoying software-patent laws, the people you downloaded it from are also fine.

a) Thanks. b) You wrote: commercial software that can create h.264 needs a license for it. ... Most distributors of Free software like x264 don't pay... - Since it's free - isn't it not "commercial"?

err, yeah I see how that was misleading.  All software legally needs a license, to use in countries where US and/or EU patents are valid.  Only commercial software distributors actually pay for a license.

AAC is MPEG-2 Part 7 and also MPEG4 Part 3. Wikipedia says: The reference software for MPEG-4 Part 3 is specified in MPEG-4 Part 5 and the conformance bit-streams are specified in MPEG-4 Part 4. MPEG-4 Audio remains backward-compatible with MPEG-2 Part 7. Confused yet?

Also, I should add that I'm not sure about the legal requirements for paying patent licenses for various use-cases of ffmpeg's h264 decoder, or x264.  IDK if there are any specific exceptions for personal or non-profit use.  This is just what I figured out when reading up on why openh264 existed in the first place.  If anyone has asked a lawyer about it recently, it'd be great to have a less hand-wavy they-probably-won't-sue-you answer.  I only see this from the "holy crap this is dumb" Free software point of view.

Found this article.  http://www.engadget.com/2010/05/04/know-your-rights-h-264-patent-licensing-and-you/ which makes it clear that firefox would have had to pay 5M$/yr for distributing an h.264 decoder.  (They now ship openh264.)  Still no clue whether x264 and ffh264 are legal to distribute.  But I think it's the distributor that's supposed to be on the hook, not end-users.

Made a (probably final) edit after thinking some more about what I dug up.  And tried to make sure nobody is scared away from Free software, by putting bold at the front explaining how the rambling in the middle is wrong.


text:
Player support for video DVD stored on a CD-R?
I want to produce many playable DVDs using a few burners (setting up a computer lab with each computer having an image of the same)
I have close to no budget for this and am curious if a standard CD (the kind that have around 700mb) can be formatted as a DVD, and then played in standard DVD players?
Obviously it would have to be a short and or low bitrate encoded video.
But will this work?
(This is based on the idea that bulk CDs being an older technology can be obtained in bulk for less money than the same of DVD-5s)

Easy enough to try, right? Create the DVD structure on a hard drive and copy it to the CD. It'll probably depend on the player though.

Are you sure blank CDs are actually cheaper?  Better check, because they're both mature techs, and spreading dye on a piece of plastic is pretty much the same whether it's a dvd+r or a cd-r.  Also, the real question is player support for DVD-VIDEO on a CDR.  Making a set of .VOBs holding your video and menus and putting them in a disc image shouldn't be a problem (except for the quality at low bitrate problem), regardless of size.

If you're authoring DVDs to be played on DVD players, then this won't work. I checked it out way back when there was a significant price difference between CD and DVD media.
If the end users are all going to be playing on computers you could send them instructions on how to open the DVD media folders, but realistically what you'd save (if anything) on media costs would be eaten up in time spent answering queries from disgruntled users who can't get it to play.
Just for reference - the first site I saw when I searched for "bulk DVD CD media" has 100 DVDs for $19.90 and 100 CDs for $18.90. So the difference in price is 1¢ per disk.

authors: Михаил Байраков


text:
How to encode video to profile high using ffmpeg?
This is my first post here. I am in a situation where my original file is of profile High and transcoding profile is High10. I am suspecting that this is the cause my video is not getting played in jwplayer. I have also tried to set profile to -profile:v high
but no help . I am using ffmpeg version
ffmpeg version 2.6.2
No pixel format specified, yuv420p10le for H.264 encoding chosen.
Use -pix_fmt yuv420p for compatibility with outdated media players.
x264 [error]: high profile doesn't support a bit depth of 10
[libx264 @ 0x350d960] Error setting profile high.
[libx264 @ 0x350d960] Possible profiles: baseline main high high10 high422 high444

Please help me.

Like the error message says, use "-pix_fmt yuv420p" and place it after "-profile:v high"

Tried but ended in italic Incompatible pixel format 'yuv420p' for codec 'libx264', auto-selecting format 'yuv420p10le'
x264 [error]: high profile doesn't support a bit depth of 10
[libx264 @ 0x3acb980] Error setting profile high.
[libx264 @ 0x3acb980] Possible profiles: baseline main high high10 high422 high444

maybe I need to compile and install ffmpeg than using a build. libx264 seems to be a problem, maybe does not have required codec

Can you post the entire command you used? And also the output of "ffprobe -i "

Here is the shortest command I am using to check if my "High" video is getting converted to "High" again ----- ffmpeg -i 50_Cent___My_Life_ft__Eminem__Adam_Levine_hd720.mp4 -profile:v high -pix_fmt yuv420p  arvind34.mp4 . The original video downloaded from youtube is of "High " profile which after above command is converted to "High10". ffprobe gives segmentation fault on the input video

Try ffmpeg -i 50_Cent...mp4 -c:v libx264 -crf 23 -profile:v high -pix_fmt yuv420p -c:a copy arvind34.mp4 2> log.txt      ---   and paste log.txt here

here it is, short link to this http://pastebin.com/p9y5qqEu

Ok. Run "ffmpeg -h encoder=libx264 > x264.txt" and paste the line from that textfile starting with 'Supported pixel formats'

here  it is > http://pastebin.com/hQrPZMKZ

There you go. the ffmpeg build you have uses libx264 compiled for 10-bit. Apparently one can only build with support for either 8-bit OR 10-bit. So, you'll need a build where libx264 supports 8-bit. Now, the archive that you downloaded includes separate ffmpeg builds for both 8-bit and 10-bit. Can you confirm if you aren't actually running the 10-bit version. And if the build compiler has made a mistake, just download the latest iteration.

Yes that is what initially suspected. Thanks for making this discussion so far. I compiled ffmpeg from source and it seems to be solving my problem.Please post your last comment as an answer so that I can mark and close it. Thanks!

Answer posted. Glad it worked out.

Just a FWIW - In the OP's first comment (above), mention is made of a Incompatible pixel format 'yuv420p' for codec 'libx264', auto-selecting format 'yuv420p10le'  error being thrown.  This can most likely be obviated by using yuv420p10le as the option for the -pix_fmt option, vice yuv420p.  IHTH someone!

The ffmpeg build you have uses libx264 compiled for 10-bit. Apparently one can only build with support for either 8-bit OR 10-bit. So, you'll need a build where libx264 supports 8-bit.


text:
FFmpeg pan filter and clipping
I have a file that has one video stream and one audio stream with 8 channels. I want to create a new file that will only contain the first 2 channels of the audio stream (no video). I can do this using the pan filter. I also want to clip the file. I can do this using the -ss and -t options. However, when I try to do both together, I get an error.
So, if I run:
ffmpeg -i a.mov -filter_complex "[0:1]pan=2c|c0=c0|c1=c1[stereo]" -map "[stereo]" "a.audio.mov"

It works fine - I get the audio file with the correct channels.
But when I run:
ffmpeg -i a.mov -filter_complex "[0:1]pan=2c|c0=c0|c1=c1[stereo]" -map "[stereo]" -ss 00:00:01 "a.audio.mov"

I get the following error

[trim for output stream 0:0 @ 0000000002145720] Cannot select channel
  layout for the link between filters trim for output stream 0:0 and
  output stream 0:0.
  [trim for output stream 0:0 @ 0000000002145720]
  Unknown channel layouts not supported, try specifying a channel layout
  using 'aformat=channel_layouts=something'.

Anyone have any ideas what I'm doing wrong and how to fix it?

Your 2nd command works for me on a movie with a 6-channel AC3 track.  BTW, you probably want to use -c:a libfdk_aac, not the default AAC encoder.  Is your ffmpeg version old?  Does -ss work on that input stream when you aren't using that filter?

Thanks @PeterCordes! I had an older version of FFmpeg - it works in the latest version!