Видео из YouTube имеет формат flv и кодировано кодеком avc. Перекодированное ffmpeg'ом в mpeg-4 asp a в том же битрейте оно воспроизводится без задержек и не нагружает одноядерный Atom с GMA 3150 до 100% в отличие от неперекодированного avc.
Например имеется клип размером 112,9 Мб: avc, 1920x1080p min 3417 Kbps, max 6198 Kbps. На Atom без дополнительного декодера такой клип будет воспроизводиться рывками.
Но с помощью ffmpeg, легким движением руки клип становится возможным вопроизводить на таких системах без каких-дибо рывков и зависаний.
ffmpeg -i Eminem.flv -ab 128k -ac 1 -vcodec mpeg4 -b 4808k -acodec libmp3lame hd2.avi
Узнать битрейт можно с помощью mediainfo.
Пример, где из переменного битрейта получен постотянный, путем сложнения общего (overall) значения с максимальным и делением на два (перекодирование клипа Eminem - Live the way you lie ft. Rihanna).
Вывод mediainfo:
user@pc:~/Загрузки$ mediainfo Eminem.flv
General
Complete name : Eminem.flv
Format : MPEG-4
Format profile : Base Media / Version 2
Codec ID : mp42
File size : 113 MiB
Duration : 4mn 26s
Overall bit rate : 3 549 Kbps
Encoded date : UTC 2010-08-04 19:13:59
Tagged date : UTC 2010-08-04 19:13:59
gsst : 0
gstd : 266916
gssd : BD075E247HH1315121798035960
gshh : o-o.preferred.ams03g05.v15.lscache4.c.youtube.com
Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L4.0
Format settings, CABAC : No
Format settings, ReFrames : 1 frame
Format settings, GOP : M=1, N=33
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 4mn 26s
Bit rate mode : Variable
Bit rate : 3 417 Kbps
Maximum bit rate : 6 198 Kbps
Width : 1 920 pixels
Height : 1 080 pixels
Display aspect ratio : 16:9
Frame rate mode : Variable
Frame rate : 23.976 fps
Original frame rate : 24.000 fps
Minimum frame rate : 17.241 fps
Maximum frame rate : 24.390 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.069
Stream size : 109 MiB (96%)
Tagged date : UTC 2010-08-04 19:14:02
Audio
ID : 2
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 4mn 26s
Bit rate mode : Variable
Bit rate : 127 Kbps
Maximum bit rate : 201 Kbps
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 44.1 KHz
Compression mode : Lossy
Stream size : 4.03 MiB (4%)
Title : (C) 2007 Google Inc. v08.13.2007.
Encoded date : UTC 2010-08-04 19:14:01
Tagged date : UTC 2010-08-04 19:14:02
Вывод ffmpeg:
user@pc:~/Загрузки$ ffmpeg -i Eminem.flv -ab 128k -ac 1 -vcodec mpeg4 -b 4808k -acodec libmp3lame hd2.avi
FFmpeg version SVN-r0.5.1-4:0.5.1-1ubuntu1.1, Copyright (c) 2000-2009 Fabrice Bellard, et al.
configuration: --extra-version=4:0.5.1-1ubuntu1.1 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --disable-stripping --disable-vhook --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --enable-shared --disable-static
libavutil 49.15. 0 / 49.15. 0
libavcodec 52.20. 1 / 52.20. 1
libavformat 52.31. 0 / 52.31. 0
libavdevice 52. 1. 0 / 52. 1. 0
libavfilter 0. 4. 0 / 0. 4. 0
libswscale 0. 7. 1 / 0. 7. 1
libpostproc 51. 2. 0 / 51. 2. 0
built on Mar 31 2011 18:53:20, gcc: 4.4.3
Seems stream 0 codec frame rate differs from container frame rate: 2000.00 (2000/1) -> 24.00 (24/1)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Eminem.flv':
Duration: 00:04:26.91, start: 0.000000, bitrate: 3549 kb/s
Stream #0.0(und): Video: h264, yuv420p, 1920x1080, 24 tbr, 1k tbn, 2k tbc
Stream #0.1(und): Audio: aac, 44100 Hz, stereo, s16
Output #0, avi, to 'hd2.avi':
Stream #0.0(und): Video: mpeg4, yuv420p, 1920x1080, q=2-31, 4808 kb/s, 90k tbn, 24 tbc
Stream #0.1(und): Audio: libmp3lame, 44100 Hz, mono, s16, 128 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Press [q] to stop encoding
frame= 6400 fps= 6 q=2.0 Lsize= 159469kB time=266.89 bitrate=4894.7kbits/s
video:154896kB audio:4170kB global headers:0kB muxing overhead 0.253222%
user@pc:~/Загрузки$
Разницы между ними нет практически никакой, кроме того, что размер файла увеличился относительно исходного на 37,9%.
Рекомендуется просматривать с помощью totem, т.к. vlc может некорректно воспроизводить перекодированный экземпляр.