рдЕрдВрдЧреНрд░реЗрдЬрд╝реАрдлреНрд░реЗрдВрдЪрд╕реНрдкреЗрдирд┐рд╢

Ad


рдСрдирд╡рд░реНрдХреНрд╕ рдлрд╝реЗрд╡рд┐рдХреЙрди

ffmpeg-devices - рдХреНрд▓рд╛рдЙрдб рдореЗрдВ рдСрдирд▓рд╛рдЗрди

рдЙрдмрдВрдЯреВ рдСрдирд▓рд╛рдЗрди, рдлреЗрдбреЛрд░рд╛ рдСрдирд▓рд╛рдЗрди, рд╡рд┐рдВрдбреЛрдЬ рдСрдирд▓рд╛рдЗрди рдПрдореБрд▓реЗрдЯрд░ рдпрд╛ рдореИрдХ рдУрдПрд╕ рдСрдирд▓рд╛рдЗрди рдПрдореБрд▓реЗрдЯрд░ рдкрд░ рдСрдирд╡рд░реНрдХреНрд╕ рдореБрдлреНрдд рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдкреНрд░рджрд╛рддрд╛ рдореЗрдВ рдПрдлрдПрдлрдПрдордкреАрдИрдЬреА-рдбрд┐рд╡рд╛рдЗрд╕ рдЪрд▓рд╛рдПрдВ

рдпрд╣ рдХрдорд╛рдВрдб ffmpeg-devices рд╣реИ рдЬрд┐рд╕реЗ рд╣рдорд╛рд░реЗ рдХрдИ рдореБрдлреНрдд рдСрдирд▓рд╛рдЗрди рд╡рд░реНрдХрд╕реНрдЯреЗрд╢рди рдЬреИрд╕реЗ рдЙрдмрдВрдЯреВ рдСрдирд▓рд╛рдЗрди, рдлреЗрдбреЛрд░рд╛ рдСрдирд▓рд╛рдЗрди, рд╡рд┐рдВрдбреЛрдЬ рдСрдирд▓рд╛рдЗрди рдПрдореБрд▓реЗрдЯрд░ рдпрд╛ рдореИрдХ рдУрдПрд╕ рдСрдирд▓рд╛рдЗрди рдПрдореБрд▓реЗрдЯрд░ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдСрдирд╡рд░реНрдХреНрд╕ рдлреНрд░реА рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдкреНрд░рджрд╛рддрд╛ рдореЗрдВ рдЪрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдХрд╛рд░реНрдпрдХреНрд░рдо:

рдирд╛рдо


рдПрдлрдПрдлрдПрдордкреАрдИрдЬреА-рдбрд┐рд╡рд╛рдЗрд╕реЗрд╕ - рдПрдлрдПрдлрдПрдордкреАрдИрдЬреА рдбрд┐рд╡рд╛рдЗрд╕

рд╡рд░реНрдгрди


рдпрд╣ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ libavdevice рд▓рд╛рдЗрдмреНрд░реЗрд░реА рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдЗрдирдкреБрдЯ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред

рдЙрдкрдХрд░рдг рд╡рд┐рдХрд▓реНрдк


libavdevice рдкреБрд╕реНрддрдХрд╛рд▓рдп libavformat рдХреЗ рд╕рдорд╛рди рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЕрд░реНрдерд╛рддреН, рдПрдХ рдЗрдирдкреБрдЯ
рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдПрдХ рдбреАрдордХреНрд╕рд░ рдХреА рддрд░рд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдЬреИрд╕реЗ рдордХреНрд╕рд░, рдФрд░ рдЗрдВрдЯрд░рдлрд╝реЗрд╕
рдФрд░ рдЬреЗрдиреЗрд░рд┐рдХ рдбрд┐рд╡рд╛рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рд╡рд╣реА рд╣реИрдВ рдЬреЛ libavformat рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рд╣реИрдВ (рджреЗрдЦреЗрдВ ffmpeg-formats
рдореИрдиреБрдЕрд▓)ред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдкреНрд░рддреНрдпреЗрдХ рдЗрдирдкреБрдЯ рдпрд╛ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рддрдерд╛рдХрдерд┐рдд рдирд┐рдЬреА рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рд╣реИрдВ
рдЙрд╕ рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯред

рд╡рд┐рдХрд▓реНрдк рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ -рд╡рд┐рдХрд▓реНрдк рдореВрд▓реНрдп FFmpeg рдЯреВрд▓ рдореЗрдВ, рдпрд╛ рд╕реЗрдЯрд┐рдВрдЧ рдХрд░рдХреЗ
рдбрд┐рд╡рд╛рдЗрд╕ "AVFormatContext" рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдореВрд▓реНрдп рдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ libavutil/opt.h API
рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдПред

рдЗрдирдкреБрдЯ рдЙрдкрдХрд░рдг


рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ FFmpeg рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЧрдП рддрддреНрд╡ рд╣реИрдВ рдЬреЛ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдХреЛ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддреЗ рд╣реИрдВ
рдЖрдкрдХреЗ рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рдЬреБрдбрд╝реЗ рдорд▓реНрдЯреАрдореАрдбрд┐рдпрд╛ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗред

рдЬрдм рдЖрдк рдЕрдкрдиреЗ FFmpeg рдмрд┐рд▓реНрдб рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рднреА рд╕рдорд░реНрдерд┐рдд рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдЗрд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕рдХреНрд╖рдо рд╣реЛрддреЗ рд╣реИрдВ
рдЪреВрдХ рдЬрд╛рдирд╛ред рдЖрдк рд╕рднреА рдЙрдкрд▓рдмреНрдз рд▓реЛрдЧреЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рд╡рд┐рдХрд▓реНрдк "--list-indevs" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реВрдЪреАрдмрджреНрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЖрдк рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╡рд┐рдХрд▓реНрдк "--disable-indevs" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рднреА рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░
"--enable-indev= . рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдЪреБрдирд┐рдВрджрд╛ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рдХрд░реЗрдВрдЗрдВрджреЗрд╡", рдпрд╛ рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реЛ
рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ "--disable-indev=рдЗрдВрджреЗрд╡".

ff* рдЯреВрд▓ рдХрд╛ рд╡рд┐рдХрд▓реНрдк "-рдбрд┐рд╡рд╛рдЗрд╕" рд╕рдорд░реНрдерд┐рдд рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреА рд╕реВрдЪреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧрд╛ред

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдЗрдирдкреБрдЯ рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рд╡рд┐рд╡рд░рдг рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИред

рдЕрд▓рд╕рд╛
ALSA (рдЙрдиреНрдирдд рд▓рд┐рдирдХреНрд╕ рд╕рд╛рдЙрдВрдб рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░) рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рдЗрд╕ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд libasound рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдкреНрд░рдгрд╛рд▓реАред

рдпрд╣ рдбрд┐рд╡рд╛рдЗрд╕ ALSA рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рдХреИрдкреНрдЪрд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдХреИрдкреНрдЪрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдирд╛рдо рд╣реИ
ALSA рдХрд╛рд░реНрдб рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдмрдиреЗрдВред

ALSA рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реЛрддрд╛ рд╣реИ:

рдПрдЪрдбрдмреНрд▓реНрдпреВ: [, [, ]]

рдЬрд╣рд╛рдВ рджреЗрд╡ рдФрд░ рд╕реБрдмрджреЗрд╡ рдШрдЯрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИрдВред

рддреАрди рддрд░реНрдХ (рдХреНрд░рдо рдореЗрдВ: рдХрд╛рд░реНрдб,рджреЗрд╡,рд╕реБрдмрджреЗрд╡) рдХрд╛рд░реНрдб рдирдВрдмрд░ рдпрд╛ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛, рдбрд┐рд╡рд╛рдЗрд╕ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ
рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдЙрдк-рдЙрдкрдХрд░рдг рд╕рдВрдЦреНрдпрд╛ (-1 рдХрд╛ рдЕрд░реНрде рд╣реИ рдХреЛрдИ рднреА)ред

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЖрдкрдХреЗ рд╕рд┐рд╕реНрдЯрдо рджреНрд╡рд╛рд░рд╛ рдорд╛рдиреНрдпрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд╛рд░реНрдбреЛрдВ рдХреА рд╕реВрдЪреА рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╛рдЗрд▓реЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ
/ proc / asound / рдХрд╛рд░реНрдб рдФрд░ /рдкреНрд░реЛрдХ/рдПрд╕рд╛рдЙрдВрдб/рдбрд┐рд╡рд╛рдЗрд╕.

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдХреЗ рд╕рд╛рде рдХрдмреНрдЬрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ffmpeg рдХрд╛рд░реНрдб рдЖрдИрдбреА 0 рд╡рд╛рд▓реЗ ALSA рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ, рдЖрдк рдЗрд╕реЗ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ
рдЖрджреЗрд╢:

ffmpeg -f alsa -i hw:0 alsaout.wav

рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рджреЗрдЦреЗрдВ:http://www.alsa-project.org/alsa-doc/alsa-lib/pcm.html>

рдСрдкреНрд╢рдВрд╕

рдирдореВрдирд╛ рджрд░
рдирдореВрдирд╛ рджрд░ рд╣рд░реНрдЯреНрдЬ рдореЗрдВ рд╕реЗрдЯ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 48000 рд╣реИред

рдЪреИрдирд▓реЛрдВ
рдЪреИрдирд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 2 рд╣реИред

рдЖрдзрд╛рд░
AVFoundation рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

AVFoundation OSX>= . рдкрд░ рд╕реНрдЯреНрд░реАрдо рд╣рдерд┐рдпрд╛рдиреЗ рдХреЗ рд▓рд┐рдП Apple рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЕрдиреБрд╢рдВрд╕рд┐рдд рдврд╛рдВрдЪрд╛ рд╣реИ
10.7 рдФрд░ рдЖрдИрдУрдПрд╕ рдкрд░ рднреАред рдкреБрд░рд╛рдиреЗ QTKit рдврд╛рдВрдЪреЗ рдХреЛ OSX рдХреЗ рдмрд╛рдж рд╕реЗ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
рд╕рдВрд╕реНрдХрд░рдг 10.7ред

рдЗрдирдкреБрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИ:

-рдореИрдВ "[[рд╡реАрдбрд┐рдпреЛ]: [рдСрдбрд┐рдпреЛ]]"

рдкрд╣рд▓реА рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╡реАрдбрд┐рдпреЛ рдЗрдирдкреБрдЯ рдХрд╛ рдЪрдпрди рдХрд░рддреА рд╣реИ рдЬрдмрдХрд┐ рдмрд╛рдж рд╡рд╛рд▓реА рдСрдбрд┐рдпреЛ рдЗрдирдкреБрдЯ рдХрд╛ рдЪрдпрди рдХрд░рддреА рд╣реИред NS
рд╕реНрдЯреНрд░реАрдо рдХреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдирд╛рдо рдпрд╛ рдбрд┐рд╡рд╛рдЗрд╕ рдЗрдВрдбреЗрдХреНрд╕ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреИрд╕рд╛ рдХрд┐ рдбрд┐рд╡рд╛рдЗрд╕ рджреНрд╡рд╛рд░рд╛ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ
рд╕реВрдЪреАред рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рд╡реАрдбрд┐рдпреЛ рдФрд░/рдпрд╛ рдСрдбрд┐рдпреЛ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрдВрдбреЗрдХреНрд╕ рджреНрд╡рд╛рд░рд╛ рдЪреБрдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

рдмреА<-video_device_index E рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ >

рдФрд░ / рдпрд╛

рдмреА<-рдСрдбрд┐рдпреЛ_рдбрд┐рд╡рд╛рдЗрд╕_рдЗрдВрдбреЗрдХреНрд╕ рдИ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ >

, рдЗрдирдкреБрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдореЗрдВ рджрд┐рдП рдЧрдП рдХрд┐рд╕реА рднреА рдбрд┐рд╡рд╛рдЗрд╕ рдирд╛рдо рдпрд╛ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдирд╛ред

рд╕рднреА рдЙрдкрд▓рдмреНрдз рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЧрдгрдирд╛ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ -рд╕реВрдЪреА_рдЙрдкрдХрд░рдг <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рд╕рднреА рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдирд╛
рдирд╛рдо рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рд╕реВрдЪрдХрд╛рдВрдХред

рджреЛ рдЙрдкрдХрд░рдг рдирд╛рдо рдЙрдкрдирд╛рдо рд╣реИрдВ:

"рдЪреВрдХ рдЬрд╛рдирд╛"
рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рдХрд╛рд░ рдХреЗ AVFoundation рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред

"рдХреЛрдИ рдирд╣реАрдВ"
рд╕рдВрдмрдВрдзрд┐рдд рдореАрдбрд┐рдпрд╛ рдкреНрд░рдХрд╛рд░ рдХреЛ рд░рд┐рдХреЙрд░реНрдб рди рдХрд░реЗрдВред рдпрд╣ рдПрдХ рдЦрд╛рд▓реА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ
рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдирд╛рдо рдпрд╛ index.

рдСрдкреНрд╢рдВрд╕

AVFoundation рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ:

-рд╕реВрдЪреА_рдЙрдкрдХрд░рдг
рдпрджрд┐ рд╕рд╣реА рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕рднреА рдЙрдкрд▓рдмреНрдз рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреА рдЬрд╛рддреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕рднреА рдбрд┐рд╡рд╛рдЗрд╕ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ
рдирд╛рдо рдФрд░ рд╕реВрдЪрдХрд╛рдВрдХред

-рд╡реАрдбрд┐рдпреЛ_рдбрд┐рд╡рд╛рдЗрд╕_рдЗрдВрдбреЗрдХреНрд╕
рд╡реАрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдЙрд╕рдХреЗ рдЗрдВрдбреЗрдХреНрд╕ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред рдЗрдирдкреБрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдореЗрдВ рджреА рдЧрдИ рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рддрд╛ рд╣реИред

-рдСрдбрд┐рдпреЛ_рдбрд┐рд╡рд╛рдЗрд╕_рдЗрдВрдбреЗрдХреНрд╕
рдСрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдЙрд╕рдХреЗ рдЗрдВрдбреЗрдХреНрд╕ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред рдЗрдирдкреБрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдореЗрдВ рджреА рдЧрдИ рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рддрд╛ рд╣реИред

-рдкрд┐рдХреНрд╕реЗрд▓_рдлреЙрд░реНрдореЗрдЯ
рд╡реАрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд┐рдХреНрд╕реЗрд▓ рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░реЗрдВред рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкреНрд░рд╛рд░реВрдк рд╣реИ
рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ, рдЙрдкрд▓рдмреНрдз рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреА рдЧрдИ рд╣реИ рдФрд░ рдЗрд╕ рд╕реВрдЪреА рдореЗрдВ рдкрд╣рд▓рд╛ рд╣реИ
рдмрдЬрд╛рдп рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ред рдЙрдкрд▓рдмреНрдз рдкрд┐рдХреНрд╕реЗрд▓ рдкреНрд░рд╛рд░реВрдк рд╣реИрдВ: "рдореЛрдиреЛрдм, rgb555be, rgb555le, rgb565be,
рдЖрд░рдЬреАрдмреА565рдПрд▓рдИ, рдЖрд░рдЬреАрдмреА24, рдмреАрдЬреАрдЖрд░24, 0рдЖрд░рдЬреАрдмреА, рдмреАрдЬреАрдЖрд░0, 0рдмреАрдЬреАрдЖрд░, рдЖрд░рдЬреАрдмреА0,
bgr48be, uyvy422, yuva444p, yuva444p16le, yuv444p, yuv422p16, yuv422p10, yuv444p10,
yuv420p, nv12, yuyv422, рдЧреНрд░реЗ"

-рдлреНрд░реЗрдо рд░реЗрдЯ
рд╣рдерд┐рдпрд╛рдиреЗ рдХреА рдлреНрд░реЗрдо рджрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ "ntsc" рд╣реИ, рдЬреЛ рдХреА рдлрд╝реНрд░реЗрдо рджрд░ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИ
"30000/1001"ред

-рд╡реАрдбрд┐рдпреЛ рдХрд╛ рдЖрдХрд╛рд░
рд╡реАрдбрд┐рдпреЛ рдлреНрд░реЗрдо рдХрд╛ рдЖрдХрд╛рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред

-рдХреИрдкреНрдЪрд░_рдХрд░реНрд╕рд░
рдорд╛рдЙрд╕ рдкреЙрдЗрдВрдЯрд░ рдХреЛ рдХреИрдкреНрдЪрд░ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 0 рд╣реИред

-рдХреИрдкреНрдЪрд░_рдорд╛рдЙрд╕_рдХреНрд▓рд┐рдХреНрд╕
рд╕реНрдХреНрд░реАрди рдорд╛рдЙрд╕ рдХреНрд▓рд┐рдХ рдХреИрдкреНрдЪрд░ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 0 рд╣реИред

рдЙрджрд╛рд╣рд░рдг

┬╖ AVFoundation рд╕рдорд░реНрдерд┐рдд рдЙрдкрдХрд░рдгреЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ:

$ ffmpeg -f avfoundation -list_devices true -i ""

┬╖ рд╡реАрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ 0 рд╕реЗ рд╡реАрдбрд┐рдпреЛ рд░рд┐рдХреЙрд░реНрдб рдХрд░реЗрдВ рдФрд░ рдСрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ 0 рд╕реЗ рдСрдбрд┐рдпреЛ рдЖрдЙрдЯ.рдПрд╡реА рдореЗрдВ:

$ ffmpeg -f avfoundation -i "0:0" out.avi

┬╖ рд╡реАрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ 2 рд╕реЗ рд╡реАрдбрд┐рдпреЛ рд░рд┐рдХреЙрд░реНрдб рдХрд░реЗрдВ рдФрд░ рдСрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ 1 рд╕реЗ рдСрдбрд┐рдпреЛ рдЖрдЙрдЯ.рдПрд╡реА рдореЗрдВ:

$ ffmpeg -f avfoundation -video_device_index 2 -i ":1" out.avi

┬╖ рдкрд┐рдХреНрд╕реЗрд▓ рдкреНрд░рд╛рд░реВрдк bgr0 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд┐рд╕реНрдЯрдо рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реАрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рд╡реАрдбрд┐рдпреЛ рд░рд┐рдХреЙрд░реНрдб рдХрд░реЗрдВ рдФрд░ рдХрд░реЗрдВ
рдХрд┐рд╕реА рднреА рдСрдбрд┐рдпреЛ рдХреЛ out.avi рдореЗрдВ рд░рд┐рдХреЙрд░реНрдб рди рдХрд░реЗрдВ:

$ ffmpeg -f avfoundation -pixel_format bgr0 -i "рдбрд┐рдлрд╝реЙрд▓реНрдЯ: рдХреЛрдИ рдирд╣реАрдВ" out.avi

рдмреАрдХреЗрдЯреАрдЖрд░
рдмреАрдПрд╕рдбреА рд╡реАрдбрд┐рдпреЛ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдСрдкреНрд╢рдВрд╕

framerate
рдлреНрд░реЗрдо рджрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред

рд╡реАрдбрд┐рдпреЛ рдХрд╛ рдЖрдХрд╛рд░
рд╡реАрдбрд┐рдпреЛ рдлреНрд░реЗрдо рдХрд╛ рдЖрдХрд╛рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ "рд╡реАрдЬреАрдП" рд╣реИред

рдорд╛рдирдХ
рдЙрдкрд▓рдмреНрдз рдорд╛рди рд╣реИрдВ:

рджреЛрд╕реНрдд
NTSC
рд╕реЗрдХреИрдо
рдкрд╛рд▓рди
рддрд╛рдбрд╝
рдПрдирдЯреАрдПрд╕рд╕реАрдЬреЗ

рдЪрд░рдо
рдбреЗрдХрд▓рд┐рдВрдХ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдмреНрд▓реИрдХрдореИрдЬрд┐рдХ рдбреЗрдХрд▓рд┐рдВрдХ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдХреИрдкреНрдЪрд░ рдХреНрд╖рдорддрд╛рдПрдВ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

рдЗрд╕ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдмреНрд▓реИрдХрдореИрдЬрд┐рдХ рдбреЗрдХрд▓рд┐рдВрдХ рдПрд╕рдбреАрдХреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдЙрдкрдпреБрдХреНрдд "--extra-cflags" рдФрд░ "--extra-ldflags" рдХреЗ рд╕рд╛рде рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░, рдЖрдк
рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдИрдбреАрдПрд▓ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рд╡рд┐рдбрд▓реА.

рдбреЗрдХрд▓рд┐рдВрдХ рдЕрдкрдиреЗ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдЙрдкрдпреБрдХреНрдд рд╣реИред рдкрд┐рдХреНрд╕реЗрд▓ рдкреНрд░рд╛рд░реВрдк uyvy422 рдпрд╛ v210 рд╣реИ,
рдлреНрд░реЗрдорд░реЗрдЯ рдФрд░ рд╡реАрдбрд┐рдпреЛ рдХрд╛ рдЖрдХрд╛рд░ рдЖрдкрдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП -рд╕реВрдЪреА_рдкреНрд░рд╛рд░реВрдк 1. рдСрдбрд┐рдпреЛ
рдирдореВрдирд╛ рджрд░ рд╣рдореЗрд╢рд╛ 48 kHz рд╣реЛрддреА рд╣реИ рдФрд░ рдЪреИрдирд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ 2, 8 рдпрд╛ 16 рд╣реЛ рд╕рдХрддреА рд╣реИред

рдСрдкреНрд╢рдВрд╕

рд╕реВрдЪреА_рдЙрдкрдХрд░рдг
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рдЙрдкрдХрд░рдгреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╕рддреНрдп.

рд╕реВрдЪреА_рдкреНрд░рд╛рд░реВрдк
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рд╕рдорд░реНрдерд┐рдд рд╕реНрд╡рд░реВрдкреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╕рддреНрдп.

bm_v210
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ 1, рд╡реАрдбрд┐рдпреЛ uyvy10 рдХреЗ рдмрдЬрд╛рдп 210 рдмрд┐рдЯ v422 рдореЗрдВ рдХреИрдкреНрдЪрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╕рднреА рдирд╣реАрдВ Blackmagic
рдбрд┐рд╡рд╛рдЗрд╕ рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред

рдЙрджрд╛рд╣рд░рдг

┬╖ рд╕реВрдЪреА рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕:

ffmpeg -f рдбреЗрдХрд▓рд┐рдВрдХ -list_devices 1-i рдбрдореА

┬╖ рд╕рдорд░реНрдерд┐рдд рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдПрдВ:

ffmpeg -f рдбреЗрдХрд▓рд┐рдВрдХ -list_formats 1-i 'рдЗрдВрдЯреЗрдВрд╕рд┐рдЯреА рдкреНрд░реЛ'

┬╖ 1080i50 рдкрд░ рд╡реАрдбрд┐рдпреЛ рдХреНрд▓рд┐рдк рдХреИрдкреНрдЪрд░ рдХрд░реЗрдВ (рдкреНрд░рд╛рд░реВрдк 11):

ffmpeg -f рдбреЗрдХрд▓рд┐рдВрдХ -i 'рдЗрдВрдЯреЗрдВрд╕рд┐рдЯреА рдкреНрд░реЛ@11' -рдПрдХреЛрдбреЗрдХ рдХреЙрдкреА -vcodec рдХреЙрдкреА output.avi

1080i50 10 рдмрд┐рдЯ рдкрд░ рд╡реАрдбрд┐рдпреЛ рдХреНрд▓рд┐рдк рдХреИрдкреНрдЪрд░ рдХрд░реЗрдВ:

ffmpeg -bm_v210 1-f рдбреЗрдХрд▓рд┐рдВрдХ -i 'рдЕрд▓реНрдЯреНрд░рд╛рд╕реНрдЯреВрдбрд┐рдпреЛ рдорд┐рдиреА рд░рд┐рдХреЙрд░реНрдбрд░@11' -рдПрдХреЛрдбреЗрдХ рдХреЙрдкреА -vcodec рдХреЙрдкреА output.avi

dshow
рд╡рд┐рдВрдбреЛрдЬ рдбрд╛рдпрд░реЗрдХреНрдЯрд╢реЛ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

DirectShow рд╕рдорд░реНрдерди рд╕рдХреНрд╖рдо рд╣реИ рдЬрдм FFmpeg рдХреЛ mingw-w64 рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ
рдХреЗрд╡рд▓ рдСрдбрд┐рдпреЛ рдФрд░ рд╡реАрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рд╕рдорд░реНрдерд┐рдд рд╣реИрдВред

рдПрдХрд╛рдзрд┐рдХ рдбрд┐рд╡рд╛рдЗрд╕ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЗрдирдкреБрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЦреЛрд▓реЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡реЗ рдЙрд╕реА рдкрд░ рднреА рдЦреЛрд▓реЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ
рдЗрдирдкреБрдЯ, рдЬреЛ рдЙрдирдХреЗ рдмреАрдЪ рд╕рдордХрд╛рд▓рд┐рдХрддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЗрдирдкреБрдЯ рдирд╛рдо рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:

= [: = ]

рдЬрд╣рд╛рдВ TYPE рджреЛрдиреЛрдВрдореЗрд╕реЗ рдПрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдСрдбрд┐рдпреЛ or рд╡реАрдбрд┐рдпреЛ, рддрдерд╛ рдирд╛рдо рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдирд╛рдо рдпрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИ
рдирд╛рдо ..

рдСрдкреНрд╢рдВрд╕

рдпрджрд┐ рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдЧрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ
рдЕрдиреБрд░реЛрдзрд┐рдд рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ, рдпрд╣ рдЦреБрд▓рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣реЗрдЧрд╛ред

рд╡реАрдбрд┐рдпреЛ рдХрд╛ рдЖрдХрд╛рд░
рдХреИрдкреНрдЪрд░ рдХрд┐рдП рдЧрдП рд╡реАрдбрд┐рдпреЛ рдореЗрдВ рд╡реАрдбрд┐рдпреЛ рдХрд╛ рдЖрдХрд╛рд░ рд╕реЗрдЯ рдХрд░реЗрдВред

framerate
рдХреИрдкреНрдЪрд░ рдХрд┐рдП рдЧрдП рд╡реАрдбрд┐рдпреЛ рдореЗрдВ рдлреНрд░реЗрдо рджрд░ рд╕реЗрдЯ рдХрд░реЗрдВред

рдирдореВрдирд╛ рджрд░
рдХреИрдкреНрдЪрд░ рдХрд┐рдП рдЧрдП рдСрдбрд┐рдпреЛ рдХрд╛ рдирдореВрдирд╛ рджрд░ (рд╣рд░реНрдЯреНрдЬ рдореЗрдВ) рд╕реЗрдЯ рдХрд░реЗрдВред

рдирдореВрдиреЗ рдХрд╛ рдЖрдХрд╛рд░
рдХреИрдкреНрдЪрд░ рдХрд┐рдП рдЧрдП рдСрдбрд┐рдпреЛ рдХрд╛ рдирдореВрдирд╛ рдЖрдХрд╛рд░ (рдмрд┐рдЯреНрд╕ рдореЗрдВ) рд╕реЗрдЯ рдХрд░реЗрдВред

рдЪреИрдирд▓реЛрдВ
рдХреИрдкреНрдЪрд░ рдХрд┐рдП рдЧрдП рдСрдбрд┐рдпреЛ рдореЗрдВ рдЪреИрдирд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗрдЯ рдХрд░реЗрдВред

рд╕реВрдЪреА_рдЙрдкрдХрд░рдг
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рдЙрдкрдХрд░рдгреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред

рд╕реВрдЪреА_рд╡рд┐рдХрд▓реНрдк
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рдЪрдпрдирд┐рдд рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред

рд╡реАрдбрд┐рдпреЛ_рдбрд┐рд╡рд╛рдЗрд╕_рдирдВрдмрд░
рд╕рдорд╛рди рдирд╛рдо рд╡рд╛рд▓реЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдП рд╡реАрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдирдВрдмрд░ рд╕реЗрдЯ рдХрд░реЗрдВ (0 рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ 0 рдкрд░)ред

рдСрдбрд┐рдпреЛ_рдбрд┐рд╡рд╛рдЗрд╕_рдирдВрдмрд░
рд╕рдорд╛рди рдирд╛рдо рд╡рд╛рд▓реЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдП рдСрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдирдВрдмрд░ рд╕реЗрдЯ рдХрд░реЗрдВ (0 рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ 0 рдкрд░)ред

рдкрд┐рдХреНрд╕реЗрд▓_рдлреЙрд░реНрдореЗрдЯ
DirectShow рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкрд┐рдХреНрд╕реЗрд▓ рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред рдпрд╣ рдХреЗрд╡рд▓ рддрднреА рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рд╡реАрдбрд┐рдпреЛ
рдХреЛрдбреЗрдХ рд░реЙрд╡реАрдбрд┐рдпреЛ рдкрд░ рд╕реЗрдЯ рдпрд╛ рд╕реЗрдЯ рдирд╣реАрдВ рд╣реИред

рдСрдбрд┐рдпреЛ_рдмрдлрд╝рд░_рд╕рд╛рдЗрдЬрд╝
рдСрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдмрдлрд░ рдЖрдХрд╛рд░ рдХреЛ рдорд┐рд▓реАрд╕реЗрдХрдВрдб рдореЗрдВ рд╕реЗрдЯ рдХрд░реЗрдВ (рдЬреЛ рд╕реАрдзреЗ рд╡рд┐рд▓рдВрдмрддрд╛ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ,
рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдЖрдзрд╛рд░ рдкрд░)ред рдСрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдмрдлрд░ рдЖрдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ
(рдЖрдорддреМрд░ рдкрд░ 500ms рдХреЗ рдХреБрдЫ рдЧреБрдгрдХ)ред рдЗрд╕ рдорд╛рди рдХреЛ рдмрд╣реБрдд рдХрдо рд╕реЗрдЯ рдХрд░рдирд╛ рдиреАрдЪрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдкреНрд░рджрд░реНрд╢рдиред рдпрд╣ рд╕рднреА рджреЗрдЦреЗрдВ
<http://msdn.microsoft.com/en-us/library/windows/desktop/dd377582(v=рдмрдирд╛рдо.85).aspx>

рд╡реАрдбрд┐рдпреЛ_рдкрд┐рди_рдирд╛рдо
рдирд╛рдо рдпрд╛ рд╡реИрдХрд▓реНрдкрд┐рдХ рдирд╛рдо рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реАрдбрд┐рдпреЛ рдХреИрдкреНрдЪрд░ рдкрд┐рди рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред

рдСрдбрд┐рдпреЛ_рдкрд┐рди_рдирд╛рдо
рдирд╛рдо рдпрд╛ рд╡реИрдХрд▓реНрдкрд┐рдХ рдирд╛рдо рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдСрдбрд┐рдпреЛ рдХреИрдкреНрдЪрд░ рдкрд┐рди рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред

рдХреНрд░реЙрд╕рдмрд╛рд░_рд╡реАрдбрд┐рдпреЛ_рдЗрдирдкреБрдЯ_рдкрд┐рди_рдирдВрдмрд░
рдХреНрд░реЙрд╕рдмрд╛рд░ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдП рд╡реАрдбрд┐рдпреЛ рдЗрдирдкреБрдЯ рдкрд┐рди рдирдВрдмрд░ рдЪреБрдиреЗрдВред рдЗрд╕реЗ рдХреНрд░реЙрд╕рдмрд╛рд░ рдкрд░ рднреЗрдЬрд╛ рдЬрд╛рдПрдЧрд╛
рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рд╡реАрдбрд┐рдпреЛ рдбрд┐рдХреЛрдбрд░ рдЖрдЙрдЯрдкреБрдЯ рдкрд┐рдиред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЗрд╕ рдорд╛рди рдХреЛ рдмрджрд▓рдиреЗ рд╕реЗ рднрд╡рд┐рд╖реНрдп рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдЗрдирд╡реЛрдХреЗрд╢рди (рдПрдХ рдирдпрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ) рдЬрдм рддрдХ рдХрд┐ рд╕рд┐рд╕реНрдЯрдо рд░рд┐рдмреВрдЯ рди тАЛтАЛрд╣реЛ рдЬрд╛рдПред

рдХреНрд░реЙрд╕рдмрд╛рд░_рдСрдбрд┐рдпреЛ_рдЗрдирдкреБрдЯ_рдкрд┐рди_рдирдВрдмрд░
рдХреНрд░реЙрд╕рдмрд╛рд░ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдП рдСрдбрд┐рдпреЛ рдЗрдирдкреБрдЯ рдкрд┐рди рдирдВрдмрд░ рдЪреБрдиреЗрдВред рдЗрд╕реЗ рдХреНрд░реЙрд╕рдмрд╛рд░ рдкрд░ рднреЗрдЬрд╛ рдЬрд╛рдПрдЧрд╛
рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдСрдбрд┐рдпреЛ рдбрд┐рдХреЛрдбрд░ рдЖрдЙрдЯрдкреБрдЯ рдкрд┐рдиред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЗрд╕ рдорд╛рди рдХреЛ рдмрджрд▓рдиреЗ рд╕реЗ рднрд╡рд┐рд╖реНрдп рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдЗрдирд╡реЛрдХреЗрд╢рди (рдПрдХ рдирдпрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ) рдЬрдм рддрдХ рдХрд┐ рд╕рд┐рд╕реНрдЯрдо рд░рд┐рдмреВрдЯ рди тАЛтАЛрд╣реЛ рдЬрд╛рдПред

рд╢реЛ_рд╡реАрдбрд┐рдпреЛ_рдбрд┐рд╡рд╛рдЗрд╕_рдбрд╛рдпрд▓реЙрдЧ
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рдХреИрдкреНрдЪрд░ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдХ рдкреНрд░рджрд░реНрд╢рди рд╕рдВрд╡рд╛рдж рдкреЙрдкрдЕрдк рдХрд░реЗрдВ,
рдЙрдиреНрд╣реЗрдВ рд╡реАрдбрд┐рдпреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдЧреБрдгреЛрдВ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдзреНрдпрд╛рди рджреЗрдВ
рдХрд┐ рдХреНрд░реЙрд╕рдмрд╛рд░ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рдЗрд╕ рд╕рдВрд╡рд╛рдж рдореЗрдВ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрднреА-рдХрднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ
PAL (25 fps) рдФрд░ NTSC (29.97) рдЗрдирдкреБрдЯ рдлреНрд░реЗрдо рджрд░, рдЖрдХрд╛рд░, рдЗрдВрдЯрд░рд▓реЗрд╕рд┐рдВрдЧ рдХреЗ рдмреАрдЪ рдЯреЙрдЧрд▓ рдХрд░реЗрдВ,
рдЖрджрд┐ред рдЗрди рдореВрд▓реНрдпреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рд╕реЗ рд╡рд┐рднрд┐рдиреНрди рд╕реНрдХреИрди рджрд░реЛрдВ/рдлреНрд░реЗрдо рджрд░реЛрдВ рдХреЛ рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рд╕реЗ рдмрдЪрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдиреАрдЪреЗ рд╣рд░реА рдкрдЯреНрдЯрд┐рдпрд╛рдБ, рдЯрд┐рдордЯрд┐рдорд╛рддреА рд╕реНрдХреИрди рд▓рд╛рдЗрдиреЗрдВ, рдЖрджрд┐ред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдХреБрдЫ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде,
рдЗрди рдЧреБрдгреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рд╕реЗ рднрд╡рд┐рд╖реНрдп рдХреЗ рдЖрд╣реНрд╡рд╛рди рднреА рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ (рдирдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ) рдЬрдм рддрдХ
рд╕рд┐рд╕реНрдЯрдо рд░рд┐рдмреВрдЯ рд╣реЛрддрд╛ рд╣реИред

рд╢реЛ_рдСрдбрд┐рдпреЛ_рдбрд┐рд╡рд╛рдЗрд╕_рдбрд╛рдпрд▓реЙрдЧ
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рдХреИрдкреНрдЪрд░ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдХ рдкреНрд░рджрд░реНрд╢рди рд╕рдВрд╡рд╛рдж рдкреЙрдкрдЕрдк рдХрд░реЗрдВ,
рдЙрдиреНрд╣реЗрдВ рдСрдбрд┐рдпреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдЧреБрдгреЛрдВ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рд╢реЛ_рд╡реАрдбрд┐рдпреЛ_рдХреНрд░реЙрд╕рдмрд╛рд░_рдХрдиреЗрдХреНрд╢рди_рдбрд╛рдпрд▓реЙрдЧ
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рдХреИрдкреНрдЪрд░ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдХ рдкреНрд░рджрд░реНрд╢рди рд╕рдВрд╡рд╛рдж рдкреЙрдкрдЕрдк рдХрд░реЗрдВ,
рдЬрдм рд╡реЗ рд╡реАрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдЦреЛрд▓рддреЗ рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдХреНрд░реЙрд╕рдмрд╛рд░ рдкрд┐рди рд░реВрдЯрд┐рдВрдЧ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рд╢реЛ_рдСрдбрд┐рдпреЛ_рдХреНрд░реЙрд╕рдмрд╛рд░_рдХрдиреЗрдХреНрд╢рди_рдбрд╛рдпрд▓реЙрдЧ
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рдХреИрдкреНрдЪрд░ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдХ рдкреНрд░рджрд░реНрд╢рди рд╕рдВрд╡рд╛рдж рдкреЙрдкрдЕрдк рдХрд░реЗрдВ,
рдЙрдиреНрд╣реЗрдВ рдХреНрд░реЙрд╕рдмрд╛рд░ рдкрд┐рди рд░реВрдЯрд┐рдВрдЧ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬрдм рдпрд╣ рдПрдХ рдСрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдЦреЛрд▓рддрд╛ рд╣реИред

рд╢реЛ_рдПрдирд╛рд▓реЙрдЧ_рдЯреАрд╡реА_рдЯреНрдпреВрдирд░_рдбрд╛рдпрд▓реЙрдЧ
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рдХреИрдкреНрдЪрд░ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдХ рдкреНрд░рджрд░реНрд╢рди рд╕рдВрд╡рд╛рдж рдкреЙрдкрдЕрдк рдХрд░реЗрдВ,
рдЙрдиреНрд╣реЗрдВ рдЯреАрд╡реА рдЪреИрдирд▓реЛрдВ рдФрд░ рдЖрд╡реГрддреНрддрд┐рдпреЛрдВ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рд╢реЛ_рдПрдирд╛рд▓реЙрдЧ_рдЯреАрд╡реА_рдЯреНрдпреВрдирд░_рдСрдбрд┐рдпреЛ_рдбрд╛рдпрд▓реЙрдЧ
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рдХреИрдкреНрдЪрд░ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдХ рдкреНрд░рджрд░реНрд╢рди рд╕рдВрд╡рд╛рдж рдкреЙрдкрдЕрдк рдХрд░реЗрдВ,
рдЙрдиреНрд╣реЗрдВ рдЯреАрд╡реА рдСрдбрд┐рдпреЛ (рдЬреИрд╕реЗ рдореЛрдиреЛ рдмрдирд╛рдо рд╕реНрдЯреАрд░рд┐рдпреЛ, рднрд╛рд╖рд╛ рдП, рдмреА рдпрд╛ рд╕реА) рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдСрдбрд┐рдпреЛ_рдбрд┐рд╡рд╛рдЗрд╕_рд▓реЛрдб
рдирд╛рдо рд╕реЗ рдЦреЛрдЬрдиреЗ рдХреЗ рдмрдЬрд╛рдп рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдСрдбрд┐рдпреЛ рдХреИрдкреНрдЪрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдбрд┐рд╡рд╛рдЗрд╕ рд▓реЛрдб рдХрд░реЗрдВред рдпрд╣ рд╢рд╛рдпрдж
рдЕрддрд┐рд░рд┐рдХреНрдд рдкреИрд░рд╛рдореАрдЯрд░ рднреА рд▓реЛрдб рдХрд░реЗрдВ, рдпрджрд┐ рдлрд╝рд┐рд▓реНрдЯрд░ рдЗрд╕рдХреЗ рдХреНрд░рдорд╛рдВрдХрди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ
рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреБрдгред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдСрдбрд┐рдпреЛ рдХреИрдкреНрдЪрд░ рд╕реНрд░реЛрдд рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдХреБрдЫ рднреА рдирдХрд▓реА рдПрдХред

рдСрдбрд┐рдпреЛ_рдбрд┐рд╡рд╛рдЗрд╕_рд╕реЗрд╡
рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдСрдбрд┐рдпреЛ рдХреИрдкреНрдЪрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдФрд░ рдЙрд╕рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд╕рд╣реЗрдЬреЗрдВ (рдпрджрд┐ рдлрд╝рд┐рд▓реНрдЯрд░
рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ) рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдПред рдпрджрд┐ рд╕рдорд╛рди рдирд╛рдо рд╡рд╛рд▓реА рдХреЛрдИ рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рд╣реИ, рддреЛ рдЙрд╕реЗ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рд╡реАрдбрд┐рдпреЛ_рдбрд┐рд╡рд╛рдЗрд╕_рд▓реЛрдб
рдирд╛рдо рд╕реЗ рдЦреЛрдЬрдиреЗ рдХреЗ рдмрдЬрд╛рдп рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд╡реАрдбрд┐рдпреЛ рдХреИрдкреНрдЪрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдбрд┐рд╡рд╛рдЗрд╕ рд▓реЛрдб рдХрд░реЗрдВред рдпрд╣ рд╢рд╛рдпрдж
рдЕрддрд┐рд░рд┐рдХреНрдд рдкреИрд░рд╛рдореАрдЯрд░ рднреА рд▓реЛрдб рдХрд░реЗрдВ, рдпрджрд┐ рдлрд╝рд┐рд▓реНрдЯрд░ рдЗрд╕рдХреЗ рдХреНрд░рдорд╛рдВрдХрди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ
рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреБрдгред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реАрдбрд┐рдпреЛ рдХреИрдкреНрдЪрд░ рд╕реНрд░реЛрдд рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдХреБрдЫ рднреА рдирдХрд▓реА рдПрдХред

рд╡реАрдбрд┐рдпреЛ_рдбрд┐рд╡рд╛рдЗрд╕_рд╕реЗрд╡
рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд╡реАрдбрд┐рдпреЛ рдХреИрдкреНрдЪрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдФрд░ рдЙрд╕рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд╕рд╣реЗрдЬреЗрдВ (рдпрджрд┐ рдлрд╝рд┐рд▓реНрдЯрд░
рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ) рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдПред рдпрджрд┐ рд╕рдорд╛рди рдирд╛рдо рд╡рд╛рд▓реА рдХреЛрдИ рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рд╣реИ, рддреЛ рдЙрд╕реЗ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЙрджрд╛рд╣рд░рдг

┬╖ DirectShow рд╕рдорд░реНрдерд┐рдд рдЙрдкрдХрд░рдгреЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ:

$ ffmpeg -list_devices рд╕рдЪ -f dshow -i рдбрдореА

┬╖ рд╡реАрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдЦреЛрд▓реЗрдВ рдХреИрдорд░рд╛:

$ ffmpeg -f dshow -i video="Camera"

рдирд╛рдо рдХреЗ рд╕рд╛рде рджреВрд╕рд░рд╛ рд╡реАрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдЦреЛрд▓реЗрдВ рдХреИрдорд░рд╛:

$ ffmpeg -f dshow -video_device_number 1 -i video="Camera"

┬╖ рд╡реАрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдЦреЛрд▓реЗрдВ рдХреИрдорд░рд╛ рдФрд░ рдСрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдорд╛рдЗрдХреНрд░реЛрдлрд╝реЛрди:

$ ffmpeg -f dshow -i video="Camera":audio="Microphone"

┬╖ рдЪрдпрдирд┐рдд рдбрд┐рд╡рд╛рдЗрд╕ рдореЗрдВ рд╕рдорд░реНрдерд┐рдд рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ:

$ ffmpeg -list_options true -f dshow -i video="Camera"

┬╖ рдирд╛рдо рдпрд╛ рд╡реИрдХрд▓реНрдкрд┐рдХ рдирд╛рдо рд╕реЗ рдХреИрдкреНрдЪрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд┐рди рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ, рд╡реИрдХрд▓реНрдкрд┐рдХ рдЙрдкрдХрд░рдг рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ
рдирд╛рдо:

$ ffmpeg -f dshow -audio_pin_name "Audio Out" -video_pin_name 2 -i video=video="@device_pnp_\\?\pci#ven_1a0a&dev_6200&subsys_62021461&rev_01#4&e2c7dd6&0&00e1#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\{ca465100-deb0-4d59-818f-8c477184adf6}":audio="Microphone"

┬╖ рдХреНрд░реЙрд╕рдмрд╛рд░ рдкрд┐рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реБрдП рдХреНрд░реЙрд╕рдмрд╛рд░ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╡реАрдбрд┐рдпреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ
рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░ рдЧреБрдг рдХреИрдкреНрдЪрд░ рдХрд░реЗрдВ:

$ ffmpeg -f dshow -show_video_device_dialog рд╕рдЪ - crossbar_video_input_pin_number 0
-рдХреНрд░реЙрд╕рдмрд╛рд░_рдСрдбрд┐рдпреЛ_рдЗрдирдкреБрдЯ_рдкрд┐рди_рдирдВрдмрд░ 3 -рдЖрдИ рд╡реАрдбрд┐рдпреЛ = "рдПрд╡рд░рдореАрдбрд┐рдпрд╛ рдмреАрдбреАрдП рдПрдирд╛рд▓реЙрдЧ рдХреИрдкреНрдЪрд░": рдСрдбрд┐рдпреЛ = "рдПрд╡рд░рдореАрдбрд┐рдпрд╛ рдмреАрдбреАрдП рдПрдирд╛рд▓реЙрдЧ рдХреИрдкреНрдЪрд░"

dv1394
рд▓рд┐рдирдХреНрд╕ рдбреАрд╡реА 1394 рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдСрдкреНрд╢рдВрд╕

framerate
рдлреНрд░реЗрдо рджрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 25 рд╣реИред

рдорд╛рдирдХ
рдЙрдкрд▓рдмреНрдз рдорд╛рди рд╣реИрдВ:

рджреЛрд╕реНрдд
NTSC

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди "рдПрдирдЯреАрдПрд╕рд╕реА" рд╣реИред

рдПрдлрдмреАрджреЗрд╡
рд▓рд┐рдирдХреНрд╕ рдлреНрд░реЗрдордмрдлрд░ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рд▓рд┐рдирдХреНрд╕ рдлреНрд░реЗрдордмрдлрд░ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЧреНрд░рд╛рдлрд┐рдХ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░-рд╕реНрд╡рддрдВрддреНрд░ рдЕрдореВрд░реНрдд рдкрд░рдд рд╣реИ
рдХрдВрдкреНрдпреВрдЯрд░ рдореЙрдиреАрдЯрд░ рдкрд░, рдЖрдорддреМрд░ рдкрд░ рдХрдВрд╕реЛрд▓ рдкрд░ред рдЗрд╕реЗ рдПрдХ рдлрд╛рдЗрд▓ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдиреЛрдб, рдЖрдорддреМрд░ рдкрд░ /рджреЗрд╡/fb0.

рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрдврд╝реЗрдВ Documentation/fb/framebuffer.txt рдЗрд╕рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИ
рд▓рд┐рдирдХреНрд╕ рд╕реНрд░реЛрдд рдкреЗрдбрд╝ред

рдпрд╣ рд╕рднреА рджреЗрдЦреЗрдВhttp://linux-fbdev.sourceforge.net/>, рдФрд░ рдПрдлрдмреАрдПрд╕рдИрдЯреА(1).

рдлреНрд░реЗрдордмрдлрд░ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рд░рд┐рдХреЙрд░реНрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП /рджреЗрд╡/fb0 рд╕рд╛рде рдореЗрдВ ffmpeg:

ffmpeg -f fbdev -framerate 10 -i /dev/fb0 out.avi

рдЖрдк рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдЧрд▓ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдЗрдореЗрдЬ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ:

ffmpeg -f fbdev -framerate 1 -i /dev/fb0 -frames:v 1 Screenshot.jpeg

рдСрдкреНрд╢рдВрд╕

framerate
рдлреНрд░реЗрдо рджрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 25 рд╣реИред

рдЬреАрдбреАрдЧреНрд░реИрдм
Win32 GDI- рдЖрдзрд╛рд░рд┐рдд рд╕реНрдХреНрд░реАрди рдХреИрдкреНрдЪрд░ рдбрд┐рд╡рд╛рдЗрд╕ред

рдпрд╣ рдбрд┐рд╡рд╛рдЗрд╕ рдЖрдкрдХреЛ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдбрд┐рд╕реНрдкреНрд▓реЗ рдХреЗ рдПрдХ рдХреНрд╖реЗрддреНрд░ рдХреЛ рдХреИрдкреНрдЪрд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдЗрдирдкреБрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреЗ рд▓рд┐рдП рджреЛ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ:

рдбреЗрд╕реНрдХрдЯреЙрдк

or

рд╢реАрд░реНрд╖рдХ =

рдкрд╣рд▓рд╛ рд╡рд┐рдХрд▓реНрдк рд╕рдВрдкреВрд░реНрдг рдбреЗрд╕реНрдХрдЯреЙрдк, рдпрд╛ рдбреЗрд╕реНрдХрдЯреЙрдк рдХреЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдХреНрд╖реЗрддреНрд░ рдХреЛ рдХреИрдкреНрдЪрд░ рдХрд░реЗрдЧрд╛ред NS
рджреВрд╕рд░рд╛ рд╡рд┐рдХрд▓реНрдк рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдПрдХрд▓ рд╡рд┐рдВрдбреЛ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдХреИрдкреНрдЪрд░ рдХрд░реЗрдЧрд╛, рдЪрд╛рд╣реЗ рд╡рд╣ рдХреБрдЫ рднреА рд╣реЛ
рд╕реНрдХреНрд░реАрди рдкрд░ рд╕реНрдерд┐рддрд┐ред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдВрдкреВрд░реНрдг рдбреЗрд╕реНрдХрдЯреЙрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рдерд┐рдпрд╛рдиреЗ рдХреЗ рд▓рд┐рдП ffmpeg:

ffmpeg -f gdigrab -framerate 6 -i Desktop out.mpg

"640" рд╕реНрдерд┐рддрд┐ рдореЗрдВ 480x10,20 рдХреНрд╖реЗрддреНрд░ рдХреЛ рдкрдХрдбрд╝реЗрдВ:

ffmpeg -f gdigrab -framerate 6 -offset_x 10 -offset_y 20 -video_size vga -i Desktop out.mpg

"рдХреИрд▓рдХреБрд▓реЗрдЯрд░" рдирд╛рдордХ рд╡рд┐рдВрдбреЛ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдкрдХрдбрд╝реЛ

ffmpeg -f gdigrab -framerate 6 -i title=рдХреИрд▓рдХреБрд▓реЗрдЯрд░ out.mpg

рдСрдкреНрд╢рдВрд╕

рдбреНрд░рд╛_рдорд╛рдЙрд╕
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдХрд┐ рдорд╛рдЙрд╕ рдкреЙрдЗрдВрдЯрд░ рдЦреАрдВрдЪрдирд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдкреЙрдЗрдВрдЯрд░ рдХреЛ рдбреНрд░рд╛ рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рди 0 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди 1 рд╣реИред

framerate
рд╣рдерд┐рдпрд╛рдиреЗ рдХреА рдлреНрд░реЗрдо рджрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди "ntsc" рд╣реИ, рдЬреЛ рдХреА рдлрд╝реНрд░реЗрдо рджрд░ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИ
"30000/1001"ред

рд╢реЛ_рдХреНрд╖реЗрддреНрд░
рд╕реНрдХреНрд░реАрди рдкрд░ рдЧреНрд░реИрдмреНрдб рдХреНрд╖реЗрддреНрд░ рджрд┐рдЦрд╛рдПрдВред

If рд╢реЛ_рдХреНрд╖реЗрддреНрд░ 1 рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдлрд┐рд░ рд╣рдерд┐рдпрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХреНрд╖реЗрддреНрд░ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛
рд╕реНрдХреНрд░реАрдиред рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде, рдпрд╣ рдЬрд╛рдирдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣рдбрд╝рдк рд▓рд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдпрджрд┐ рдХреЗрд╡рд▓ рдПрдХ рднрд╛рдЧ
рд╕реНрдХреНрд░реАрди рдХрд╛ рдХрдмреНрдЬрд╛ рд╣реИред

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╢реЛ_рдХреНрд╖реЗрддреНрд░ рдПрдХрд▓ рд╡рд┐рдВрдбреЛ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╣рдерд┐рдпрд╛рдиреЗ рдХреЗ рд╕рд╛рде рдЕрд╕рдВрдЧрдд рд╣реИред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

ffmpeg -f gdigrab -show_region 1 -framerate 6 -video_size cif -offset_x 10 -offset_y 20 -i Desktop out.mpg

рд╡реАрдбрд┐рдпреЛ рдХрд╛ рдЖрдХрд╛рд░
рд╡реАрдбрд┐рдпреЛ рдлреНрд░реЗрдо рдХрд╛ рдЖрдХрд╛рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреВрд░реНрдг рд╕реНрдХреНрд░реАрди рдХреИрдкреНрдЪрд░ рдХрд░рдирд╛ рд╣реИ рдпрджрд┐ рдбреЗрд╕реНрдХрдЯреЙрдк is
рдЪрдпрдирд┐рдд, рдпрд╛ рдкреВрд░реНрдг рд╡рд┐рдВрдбреЛ рдЖрдХрд╛рд░ рдпрджрд┐ рд╢реАрд░реНрд╖рдХ=рд╡рд┐рдВрдбреЛ_рд╢реАрд░реНрд╖рдХ рдЪрдпрдирд┐рдд рд╣реИред

рдСрдлрд╕реЗрдЯ_рдПрдХреНрд╕
рдХрд┐рд╕реА рдХреНрд╖реЗрддреНрд░ рдХреЛ рдХреИрдкреНрдЪрд░ рдХрд░рддреЗ рд╕рдордп рд╡реАрдбрд┐рдпреЛ рдХрд╛ рдЖрдХрд╛рд░, рдХреЗ рдмрд╛рдПрдВ рдХрд┐рдирд╛рд░реЗ рд╕реЗ рджреВрд░реА рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВ
рд╕реНрдХреНрд░реАрди рдпрд╛ рдбреЗрд╕реНрдХрдЯреЙрдкред

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдСрдлрд╝рд╕реЗрдЯ рдЧрдгрдирд╛ рдкреНрд░рд╛рдердорд┐рдХ рдореЙрдиреАрдЯрд░ рдХреЗ рдКрдкрд░реА рдмрд╛рдПрдБ рдХреЛрдиреЗ рд╕реЗ рд╣реЛрддреА рд╣реИ
рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдБред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рдкреНрд░рд╛рдердорд┐рдХ рдореЙрдиреАрдЯрд░ рдХреЗ рдмрд╛рдИрдВ рдУрд░ рд╕реНрдерд┐рдд рдореЙрдиреАрдЯрд░ рд╣реИ, рддреЛ рдЖрдк
рдПрдХ рдирдХрд╛рд░рд╛рддреНрдордХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдСрдлрд╕реЗрдЯ_рдПрдХреНрд╕ рдХреНрд╖реЗрддреНрд░ рдХреЛ рдЙрд╕ рдореЙрдиреАрдЯрд░ рдкрд░ рд▓реЗ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдиред

рдСрдлрд╕реЗрдЯ_рд╡рд╛рдИ
рдХрд┐рд╕реА рдХреНрд╖реЗрддреНрд░ рдХреЛ рдХреИрдкреНрдЪрд░ рдХрд░рддреЗ рд╕рдордп рд╡реАрдбрд┐рдпреЛ рдХрд╛ рдЖрдХрд╛рд░, рдХреЗ рдКрдкрд░реА рдХрд┐рдирд╛рд░реЗ рд╕реЗ рджреВрд░реА рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВ
рд╕реНрдХреНрд░реАрди рдпрд╛ рдбреЗрд╕реНрдХрдЯреЙрдкред

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдСрдлрд╝рд╕реЗрдЯ рдЧрдгрдирд╛ рдкреНрд░рд╛рдердорд┐рдХ рдореЙрдиреАрдЯрд░ рдХреЗ рдКрдкрд░реА рдмрд╛рдПрдБ рдХреЛрдиреЗ рд╕реЗ рд╣реЛрддреА рд╣реИ
рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдБред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рдкреНрд░рд╛рдердорд┐рдХ рдореЙрдиреАрдЯрд░ рдХреЗ рдКрдкрд░ рдПрдХ рдореЙрдиреАрдЯрд░ рд╕реНрдерд┐рдд рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдирд┐рдореНрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА
рдПрдХ рдирдХрд╛рд░рд╛рддреНрдордХ рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд░реЗрдВ рдСрдлрд╕реЗрдЯ_рд╡рд╛рдИ рдХреНрд╖реЗрддреНрд░ рдХреЛ рдЙрд╕ рдореЙрдиреАрдЯрд░ рдкрд░ рд▓реЗ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдиред

IEC61883
рдлрд╛рдпрд░рд╡рд╛рдпрд░ DV/HDV рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ libiec61883 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдЗрд╕ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ libiec61883, libraw1394 рдФрд░ libavc1394 рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдЖрдкрдХреА рдкреНрд░рдгрд╛рд▓реАред рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рд╡рд┐рдХрд▓реНрдк "--enable-libiec61883" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЖрдИрдИрд╕реА61883 рдХреИрдкреНрдЪрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдЖрдИрдИрдИрдИ1394 . рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬреБрдбрд╝реЗ рд╡реАрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рдХреИрдкреНрдЪрд░рд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ
(рдлрд╛рдпрд░рд╡рд╛рдпрд░), libiec61883 рдФрд░ рдирдП Linux FireWire рд╕реНрдЯреИрдХ (juju) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдПред рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реИ
Linux рдХрд░реНрдиреЗрд▓ 2.6.37 рдФрд░ рдмрд╛рдж рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ DV/HDV рдЗрдирдкреБрдЯ рд╡рд┐рдзрд┐, рдХреНрдпреЛрдВрдХрд┐ рдкреБрд░рд╛рдиреЗ рдлрд╛рдпрд░рд╡рд╛рдпрд░ рд╕реНрдЯреИрдХ рдерд╛
рд╣рдЯрд╛ рджрд┐рдпрд╛ред

рдЗрдирдкреБрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдлрд╛рдпрд░рд╡рд╛рдпрд░ рдкреЛрд░реНрдЯ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ, рдпрд╛ рдкрд╣рд▓рд╛ рдкреЛрд░реНрдЯ рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП "рдСрдЯреЛ" рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ
рдЬреБрдбрд╝реЗ рд╣реБрдПред

рдСрдкреНрд╢рдВрд╕

рдбреАрд╡реАрдЯрд╛рдЗрдк
DV/HDV рдХреА рд╕реНрд╡рддрдГ рдкрд╣рдЪрд╛рди рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░реЗрдВред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рддрднреА рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрдм рдСрдЯреЛ рдбрд┐рдЯреЗрдХреНрд╢рди рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ
рдХрд╛рд░реНрдп, рдпрд╛ рдпрджрд┐ рдХрд┐рд╕реА рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдЙрдкрдХрд░рдг рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдПрдХ рдбреАрд╡реА . рдХрд╛ рдЗрд▓рд╛рдЬ
рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ HDV (рдпрд╛ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд) рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдФрд░ рдЗрд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реЛрдЧрд╛ред NS
рдорд╛рдиреЛрдВ рд╕реНрд╡рдд:, dv рдФрд░ рдПрдЪрдбреАрд╡реА рд╕рдорд░реНрдерд┐рдд рд╣реИрдВред

рдбреАрд╡реАрдмрдлрд░
рдЖрдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рдмрдлрд╝рд░ рдХрд╛ рдЕрдзрд┐рдХрддрдо рдЖрдХрд╛рд░ рдлрд╝реНрд░реЗрдо рдореЗрдВ рд╕реЗрдЯ рдХрд░реЗрдВред рдбреАрд╡реА рдХреЗ рд▓рд┐рдП, рдпрд╣ рдПрдХ рд╕рдЯреАрдХ рд╣реИ
рдореВрд▓реНрдпред рдХреЗ рд▓рд┐рдП HDV, рдпрд╣ рдлреНрд░реЗрдо рд╕рдЯреАрдХ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ HDV рдХрд╛ рдирд┐рд╢реНрдЪрд┐рдд рдлреНрд░реЗрдо рдЖрдХрд╛рд░ рдирд╣реАрдВ рд╣реИред

рдбреАрд╡реАрдЧрд╛рдЗрдб
рдХреИрдкреНрдЪрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ GUID рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ рдЪрдпрди рдХрд░реЗрдВред рдХреЗрд╡рд▓ рдХреИрдкреНрдЪрд░рд┐рдВрдЧ рдХреА рдЬрд╛рдПрдЧреА
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рдФрд░ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдпрджрд┐ рджрд┐рдП рдЧрдП GUID рдХреЗ рд╕рд╛рде рдХреЛрдИ рдЙрдкрдХрд░рдг рдирд╣реАрдВ рдорд┐рд▓рддрд╛ рд╣реИред рдпрд╣ рд╣реИ
рдпрджрд┐ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдХрдИ рдбрд┐рд╡рд╛рдЗрд╕ рдЬреБрдбрд╝реЗ рд╣реБрдП рд╣реИрдВ рддреЛ рдЗрдирдкреБрдЯ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИред рдирдЬрд╝рд░
GUID рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП /sys/bus/firewire/devices рдкрд░ред

рдЙрджрд╛рд╣рд░рдг

┬╖ рдПрдХ рдлрд╛рдпрд░рд╡рд╛рдпрд░ рдбреАрд╡реА/рдПрдЪрдбреАрд╡реА рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдЗрдирдкреБрдЯ рдХреЛ рдкрдХрдбрд╝реЛ рдФрд░ рджрд┐рдЦрд╛рдПрдВред

рдПрдлрдПрдлрдкреНрд▓реЗ-рдПрдл рдЖрдИрдИрд╕реА61883-рдЖрдИ рдСрдЯреЛ

100000 . рдХреЗ рдкреИрдХреЗрдЯ рдмрдлрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдлрд╛рдпрд░рд╡рд╛рдпрд░ рдбреАрд╡реА/рдПрдЪрдбреАрд╡реА рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдЗрдирдкреБрдЯ рдХреЛ рдкрдХрдбрд╝реЛ рдФрд░ рд░рд┐рдХреЙрд░реНрдб рдХрд░реЗрдВ
рдкреИрдХреЗрдЯ рдЕрдЧрд░ рд╕реНрд░реЛрдд рд╣реИ HDV.

ffmpeg -f iec61883 -i рдСрдЯреЛ -hdvbuffer 100000 out.mpg

рдЬреИрдХ
рдЬреИрдХ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рдЗрд╕ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд libjack рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдкреНрд░рдгрд╛рд▓реАред

рдПрдХ рдЬреИрдХ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдПрдХ рдпрд╛ рдЕрдзрд┐рдХ рдЬреИрдХ рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп рдХреНрд▓рд╛рдЗрдВрдЯ рдмрдирд╛рддрд╛ рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рдСрдбрд┐рдпреЛ рдЪреИрдирд▓ рдХреЗ рд▓рд┐рдП рдПрдХ,
рдирд╛рдо рдХреЗ рд╕рд╛рде рдЧреНрд░рд╛рд╣рдХ рдХрд╛ рдирд╛рдо: рдЗрдирдкреБрдЯ_N, рдЬрд╣рд╛рдВ рдЧреНрд░рд╛рд╣рдХ рдХрд╛ рдирд╛рдо рдЖрд╡реЗрджрди рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдирд╛рдо рд╣реИ,
рдФрд░ N рдПрдХ рд╕рдВрдЦреНрдпрд╛ рд╣реИ рдЬреЛ рдЪреИрдирд▓ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рддреА рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп рдЧреНрд░рд╛рд╣рдХ рднреЗрдЬреЗрдЧрд╛
FFmpeg рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдЧреНрд░рд╣реАрдд рдбреЗрдЯрд╛ред

рдПрдХ рдмрд╛рд░ рдЬрдм рдЖрдк рдПрдХ рдпрд╛ рдЕрдзрд┐рдХ JACK рдкрдврд╝рдиреЗ рдпреЛрдЧреНрдп рдХреНрд▓рд╛рдЗрдВрдЯ рдмрдирд╛ рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ
рдпрд╛ рдЕрдзрд┐рдХ JACK рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп рдХреНрд▓рд╛рдЗрдВрдЯред

JACK рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рдХрдиреЗрдХреНрдЯ рдпрд╛ рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреИрдХ_рдХрдиреЗрдХреНрдЯ рдФрд░ рдЬреИрдХ_рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ
рдкреНрд░реЛрдЧреНрд░рд╛рдо, рдпрд╛ рдЗрд╕реЗ рдЧреНрд░рд╛рдлрд┐рдХрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд░рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП qjackctl.

рдЬреИрдХ рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рдЙрдирдХреА рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рдХрдорд╛рдВрдб рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреИрдХ_рдПрд▓рдПрд╕рдкреА.

рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░рддрд╛ рд╣реИ рдЬреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ JACK рдкрдврд╝рдиреЗ рдпреЛрдЧреНрдп рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рдХреИрд╕реЗ рдХреИрдкреНрдЪрд░ рдХрд┐рдпрд╛ рдЬрд╛рдП ffmpeg.

# "ffmpeg" рдирд╛рдо рд╕реЗ рдПрдХ JACK рд░рд╛рдЗрдЯреЗрдмрд▓ рдХреНрд▓рд╛рдЗрдВрдЯ рдмрдирд╛рдПрдВред
$ ffmpeg -f рдЬреИрдХ -i ffmpeg -y out.wav

# рдЬреИрдХ_рдореЗрдЯреНрд░реЛ рдкрдврд╝рдиреЗ рдпреЛрдЧреНрдп рдХреНрд▓рд╛рдЗрдВрдЯ рдХрд╛ рдирдореВрдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВред
$ рдЬреИрдХ_рдореЗрдЯреНрд░реЛ -рдмреА 120 -рдбреА 0.2 -рдПрдл 4000

# рд╡рд░реНрддрдорд╛рди JACK рдХреНрд▓рд╛рдЗрдВрдЯ рдХреА рд╕реВрдЪреА рдмрдирд╛рдПрдВред
$ рдЬреИрдХ_рдПрд▓рдПрд╕рдкреА -рд╕реА
рд╕рд┐рд╕реНрдЯрдо: рдХреИрдкреНрдЪрд░_1
рд╕рд┐рд╕реНрдЯрдо: рдХреИрдкреНрдЪрд░_2
рд╕рд┐рд╕реНрдЯрдо: рдкреНрд▓реЗрдмреИрдХ_1
рд╕рд┐рд╕реНрдЯрдо: рдкреНрд▓реЗрдмреИрдХ_2
ffmpeg: рдЗрдирдкреБрдЯ_1
рдореЗрдЯреНрд░реЛ: 120_рдмреАрдкреАрдПрдо

# рдореЗрдЯреНрд░реЛ рдХреЛ ffmpeg рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВред
$ рдЬреИрдХ_рдХрдиреЗрдХреНрдЯ рдореЗрдЯреНрд░реЛ: 120_рдмреАрдкреАрдПрдо ffmpeg: рдЗрдирдкреБрдЯ_1

рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдкрдврд╝реЗрдВ:http://jackaudio.org/>

рдСрдкреНрд╢рдВрд╕

рдЪреИрдирд▓реЛрдВ
рдЪреИрдирд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 2 рд╣реИред

рд▓рд╡рдлреА
Libavfilter рдЗрдирдкреБрдЯ рд╡рд░реНрдЪреБрдЕрд▓ рдбрд┐рд╡рд╛рдЗрд╕ред

рдпрд╣ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдПрдХ рд▓рд┐рдмрд╛рд╡рдлрд┐рд▓реНрдЯрд░ рдлрд┐рд▓реНрдЯрд░рдЧреНрд░рд╛рдл рдХреЗ рдЦреБрд▓реЗ рдЖрдЙрдЯрдкреБрдЯ рдкреИрдб рд╕реЗ рдбреЗрдЯрд╛ рдкрдврд╝рддрд╛ рд╣реИред

рдкреНрд░рддреНрдпреЗрдХ рдлрд┐рд▓реНрдЯрд░рдЧреНрд░рд╛рдл рдУрдкрди рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд▓рд┐рдП, рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдПрдХ рд╕рдВрдмрдВрдзрд┐рдд рд╕реНрдЯреНрд░реАрдо рдмрдирд╛рдПрдЧрд╛
рдЬреЛ рдЙрддреНрдкрдиреНрди рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд▓рд┐рдП рдореИрдк рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЗрд╡рд▓ рд╡реАрдбрд┐рдпреЛ рдбреЗрдЯрд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИред
рдлрд╝рд┐рд▓реНрдЯрд░рдЧреНрд░рд╛рдл рд╡рд┐рдХрд▓реНрдк рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЧреНрд░рд╛рдл.

рдСрдкреНрд╢рдВрд╕

рдЧреНрд░рд╛рдл
рдЗрдирдкреБрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рд┐рд▓реНрдЯрд░рдЧреНрд░рд╛рдл рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред рдкреНрд░рддреНрдпреЗрдХ рд╡реАрдбрд┐рдпреЛ рдУрдкрди рдЖрдЙрдЯрдкреБрдЯ рдХреЛ a . рджреНрд╡рд╛рд░рд╛ рд▓реЗрдмрд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП
"рдЖрдЙрдЯ" рдлрд╝реЙрд░реНрдо рдХреА рдЕрдиреВрдареА рд╕реНрдЯреНрд░рд┐рдВрдЧN", рдХрд╣рд╛рдБ рдкреЗ N 0 рд╕реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдПрдХ рд╕рдВрдЦреНрдпрд╛ рд╣реИ
рдбрд┐рд╡рд╛рдЗрд╕ рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рдореИрдк рдХреА рдЧрдИ рдЗрдирдкреБрдЯ рд╕реНрдЯреНрд░реАрдоред рдкрд╣рд▓рд╛ рдмрд┐рдирд╛ рд▓реЗрдмрд▓ рд╡рд╛рд▓рд╛ рдЖрдЙрдЯрдкреБрдЯ рд╣реИ
рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ "рдЖрдЙрдЯ0" рд▓реЗрдмрд▓ рдХреЛ рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдиреНрдп рд╕рднреА рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗред

рдкреНрд░рддреНрдпрдп "+subcc" рдХреЗ рд╕рд╛рде рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрдЯреНрд░реАрдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЙрдЯрдкреБрдЯ рд▓реЗрдмрд▓ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдЙрд╕ рдЖрдЙрдЯрдкреБрдЯ рд╕реЗ рдЬреБрдбрд╝реЗ рдмрдВрдж рдХреИрдкреНрд╢рди рдкреИрдХреЗрдЯ (рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ; рдХреЗрд╡рд▓ EIA-608 / рдХреЗ рд▓рд┐рдП)
рд╕реАрдИрдП-708 рдЕрднреА рдХреЗ рд▓рд┐рдП)ред рд╕рдмрд╕реАрд╕реА рдзрд╛рд░рд╛рдПрдВ рд╕рднреА рд╕рд╛рдорд╛рдиреНрдп рдзрд╛рд░рд╛рдУрдВ рдХреЗ рдмрд╛рдж рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИрдВ
рд╕рдВрдмрдВрдзрд┐рдд рдзрд╛рд░рд╛ рдХрд╛ рдХреНрд░рдоред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ "out19+subcc" рд╣реИ, рддреЛ
"рдЖрдЙрдЯ7+рд╕рдмрд╕реАрд╕реА" рдФрд░ "рдЖрдЙрдЯ42" рддрдХ, рд╕реНрдЯреНрд░реАрдо #43 рд╕реНрдЯреНрд░реАрдо #7 рдФрд░ рд╕реНрдЯреНрд░реАрдо #44 рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реАрд╕реА рд╣реИ
рдзрд╛рд░рд╛ #19 рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реАрд╕реА рд╣реИред

рдпрджрд┐ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдирд╣реАрдВ рд╣реИред

рдЧреНрд░рд╛рдл_рдлрд╛рдЗрд▓
рдлрд╝рд┐рд▓реНрдЯрд░рдЧреНрд░рд╛рдл рдХрд╛ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдкрдврд╝рдиреЗ рдФрд░ рдЕрдиреНрдп рдлрд╝рд┐рд▓реНрдЯрд░реЛрдВ рдХреЛ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рдХрд░реЗрдВред рд╡рд╛рдХреНрдп - рд╡рд┐рдиреНрдпрд╛рд╕
рдлрд╝рд┐рд▓реНрдЯрд░рдЧреНрд░рд╛рдл рдХрд╛ рд╡рд┐рдХрд▓реНрдк рд╡рд╣реА рд╣реИ рдЬреЛ рд╡рд┐рдХрд▓реНрдк рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЧреНрд░рд╛рдл.

рдбрдВрдкрдЧреНрд░рд╛рдл
рдЧреНрд░рд╛рдлрд╝ рдХреЛ stderr рдкрд░ рдбрдВрдк рдХрд░реЗрдВред

рдЙрджрд╛рд╣рд░рдг

┬╖ рдПрдХ рд░рдВрдЧреАрди рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдмрдирд╛рдПрдВ рдФрд░ рдЗрд╕реЗ рд╡рд╛рдкрд╕ рдЪрд▓рд╛рдПрдВ ffplay:

ffplay -f рд▓рд╡рдлреА -рдЧреНрд░рд╛рдл "рд░рдВрдЧ = рд╕реА = рдЧреБрд▓рд╛рдмреА [рдЖрдЙрдЯ0]" рдбрдореА

рдкрд┐рдЫрд▓реЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рд▓реЗрдХрд┐рди рдЧреНрд░рд╛рдлрд╝ рд╡рд┐рд╡рд░рдг рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдФрд░
"рдЖрдЙрдЯ0" рд▓реЗрдмрд▓ рдХреЛ рдЫреЛрдбрд╝ рджреЗрдВ:

ffplay -f рд▓рд╡рдлреА рд░рдВрдЧ=рд╕реА=рдЧреБрд▓рд╛рдмреА

┬╖ рддреАрди рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡реАрдбрд┐рдпреЛ рдкрд░реАрдХреНрд╖рдг рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд┐рдП рдЧрдП рд╕реНрд░реЛрдд рдмрдирд╛рдПрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЪрд▓рд╛рдПрдВ:

ffplay -f lavfi -graph "testsrc [out0]; testrc, hflip [out1]; testrc, рдирдХрд╛рд░рд╛рддреНрдордХ [out2]" test3

┬╖ рдПрдореЛрд╡реА рд╕реНрд░реЛрдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдПрдХ рдСрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдкрдврд╝реЗрдВ рдФрд░ рдЗрд╕реЗ рд╡рд╛рдкрд╕ рдЪрд▓рд╛рдПрдВ ffplay:

ffplay -f рд▓рд╡рдлреА "amovie=test.wav"

┬╖ рдПрдХ рдСрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдФрд░ рдПрдХ рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдкрдврд╝реЗрдВ рдФрд░ рдЗрд╕реЗ рд╡рд╛рдкрд╕ рдЪрд▓рд╛рдПрдВ ffplay:

ffplay -f рд▓рд╡рдлреА "рдореВрд╡реА = рдЯреЗрд╕реНрдЯ.рдПрд╡реА [рдЖрдЙрдЯ0]; рдореВрд╡реА = рдЯреЗрд╕реНрдЯред рд╡реЗрд╡ [рдЖрдЙрдЯ 1]"

рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдбреАрдХреЛрдб рдХрд┐рдП рдЧрдП рдлрд╝реНрд░реЗрдо рдФрд░ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдмрдВрдж рдХреИрдкреНрд╢рди рдХреЛ рдбрдВрдк рдХрд░реЗрдВ (рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ):

ffmpeg -f lavfi -i "movie=test.ts[out0+subcc]" -рдореИрдк рд╡реА рдлреНрд░реЗрдо%08d.png -рдореИрдк s -c рдХреЙрдкреА -f rawvideo subcc.bin

libcdio
рдСрдбрд┐рдпреЛ-рд╕реАрдбреА рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ libcdio рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рдЗрд╕ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдкрд░ libcdio рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдкреНрд░рдгрд╛рд▓реАред рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рд╡рд┐рдХрд▓реНрдк "--enable-libcdio" рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдпрд╣ рдбрд┐рд╡рд╛рдЗрд╕ рдСрдбрд┐рдпреЛ-рд╕реАрдбреА рд╕реЗ рдЦреЗрд▓рдиреЗ рдФрд░ рдкрдХрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдХреЙрдкреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ffmpeg рд╕рдВрдкреВрд░реНрдг рдСрдбрд┐рдпреЛ-рд╕реАрдбреА / рджреЗрд╡ / рд╕рд░ реж, рдЖрдк рдХрдорд╛рдВрдб рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ:

ffmpeg -f libcdio -i /dev/sr0 cd.wav

рдСрдкреНрд╢рдВрд╕

рдЧрддрд┐
рдбреНрд░рд╛рдЗрд╡ рдкрдврд╝рдиреЗ рдХреА рдЧрддрд┐ рд╕реЗрдЯ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди 0 рд╣реИред

рдЧрддрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реАрдбреА-рд░реЛрдо рдЧрддрд┐ рдЗрдХрд╛рдЗрдпрд╛рдБ рд╣реИрдВред рдЧрддрд┐ libcdio рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ
"cdio_cddap_speed_set" рдлрд╝рдВрдХреНрд╢рдиред рдХрдИ рд╕реАрдбреА-рд░реЛрдо рдбреНрд░рд╛рдЗрд╡ рдкрд░, рдмрд╣реБрдд рдмрдбрд╝рд╛ рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛
рд╕рдмрд╕реЗ рддреЗрдЬ рдЧрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рд╣реЛрдЧрд╛ред

рд╡реНрдпрд╛рдореЛрд╣_рдореЛрдб
рд╡реНрдпрд╛рдореЛрд╣ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдореЛрдб рдлрд╝реНрд▓реИрдЧ рд╕реЗрдЯ рдХрд░реЗрдВред рдпрд╣ рдирд┐рдореНрди рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдорд╛рди рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ:

рдЕрдХреНрд╖рдо рдХрд░реЗрдВ
рд╕рддреНрдпрд╛рдкрд┐рдд
рдУрд╡рд░рд▓реИрдк
рдиреЗрд╡рд░рд╕реНрдХрд┐рдк
рдкреВрд░реНрдг

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рд╣реИ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ.

рдЙрдкрд▓рдмреНрдз рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдореЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рд╡реНрдпрд╛рдореЛрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рдкрд░рд╛рдорд░реНрд╢ рдХрд░реЗрдВ
рдкреНрд░рд▓реЗрдЦрдиред

libdc1394
IIDC1394 рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕, libdc1394 рдФрд░ libraw1394 рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рд╡рд┐рдХрд▓реНрдк рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ "--enable-libdc1394"ред

рдЦреБрд▓рд╛ рд╣реБрдЖ
OpenAL рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ OpenAL 1.1 . рдХреЗ рд╕рд╛рде рд╕рднреА рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдСрдбрд┐рдпреЛ рдХреИрдкреНрдЪрд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди.

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рдЗрд╕ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ OpenAL рд╣реЗрдбрд░ рдФрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ
рдЖрдкрдХреЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ, рдФрд░ FFmpeg рдХреЛ "--enable-openal" рдХреЗ рд╕рд╛рде рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

OpenAL рд╢реАрд░реНрд╖рд▓реЗрдЦ рдФрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЖрдкрдХреЗ OpenAL рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЬрд╛рдиреЗ рдЪрд╛рд╣рд┐рдП, рдпрд╛
рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдбрд╛рдЙрдирд▓реЛрдб (рдПрдХ рдПрд╕рдбреАрдХреЗ) рдХреЗ рд░реВрдк рдореЗрдВред рдЖрдкрдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЖрдкрдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ
рдирд┐рд░реНрдорд╛рдг рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП "--extra-cflags" рдФрд░ "--extra-ldflags" рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдлрд╝реНрд▓реИрдЧреНрд╕
рдУрдкрдирдПрдПрд▓ рд╣реЗрдбрд░ рдФрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рд╕реНрдЯрдоред

OpenAL рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рдПрдХ рдЕрдзреВрд░реА рд╕реВрдЪреА рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:

рдХреНрд░рд┐рдПрдЯрд┐рд╡
рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╡рд┐рдВрдбреЛрдЬ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди, рд╕рдорд░реНрдерд┐рдд рдХреЗ рд╕рд╛рде рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рддреНрд╡рд░рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ
рдбрд┐рд╡рд╛рдЗрд╕ рдФрд░ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдлрд╝реЙрд▓рдмреИрдХред рджреЗрдЦреЛhttp://openal.org/>.

рдЦреБрд▓рд╛ рд╣реБрдЖ рдирд░рдо
рдкреЛрд░реНрдЯреЗрдмрд▓, рдУрдкрди рд╕реЛрд░реНрд╕ (рдПрд▓рдЬреАрдкреАрдПрд▓) рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдиред рдЕрдзрд┐рдХрд╛рдВрд╢ рдХреЗ рд▓рд┐рдП рдмреИрдХрдПрдВрдб рд╢рд╛рдорд┐рд▓ рд╣реИрдВ
рд╡рд┐рдВрдбреЛрдЬ, рд▓рд┐рдирдХреНрд╕, рд╕реЛрд▓рд╛рд░рд┐рд╕ рдФрд░ рдмреАрдПрд╕рдбреА рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рд╕рд╛рдорд╛рдиреНрдп рдзреНрд╡рдирд┐ рдПрдкреАрдЖрдИред рджреЗрдЦреЛ
<http://kcat.strangesoft.net/openal.html>.

Apple
рдУрдкрдирдПрдПрд▓ рдХреЛрд░ рдСрдбрд┐рдпреЛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕ рдСрдбрд┐рдпреЛ рдЗрдВрдЯрд░рдлреЗрд╕ред рджреЗрдЦреЛ
<http://developer.apple.com/technologies/mac/audio-and-video.html>

рдпрд╣ рдбрд┐рд╡рд╛рдЗрд╕ рдУрдкрдирдПрдПрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдВрдЪрд╛рд▓рд┐рдд рдСрдбрд┐рдпреЛ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рдХреИрдкреНрдЪрд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдореЗрдВ рдХреИрдкреНрдЪрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЕрдЧрд░
рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреНрд░рджрд╛рди рдХреА рдЬрд╛рддреА рд╣реИ, рдбрд┐рд╡рд╛рдЗрд╕ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдЪрдпрди рдХрд░реЗрдЧрд╛ред рдЖрдк рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдорд░реНрдерд┐рдд рдЙрдкрдХрд░рдгреЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рд╕реВрдЪреА_рдЙрдкрдХрд░рдг.

рдСрдкреНрд╢рдВрд╕

рдЪреИрдирд▓реЛрдВ
рдХреИрдкреНрдЪрд░ рдХрд┐рдП рдЧрдП рдСрдбрд┐рдпреЛ рдореЗрдВ рдЪреИрдирд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗрдЯ рдХрд░реЗрдВред рдХреЗрд╡рд▓ рдорд╛рди 1 (рдореЛрдиреМрд░рд▓) рдФрд░ 2
(рд╕реНрдЯреАрд░рд┐рдпреЛ) рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕рдорд░реНрдерд┐рдд рд╣реИрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 2.

рдирдореВрдиреЗ рдХрд╛ рдЖрдХрд╛рд░
рдХреИрдкреНрдЪрд░ рдХрд┐рдП рдЧрдП рдСрдбрд┐рдпреЛ рдХрд╛ рдирдореВрдирд╛ рдЖрдХрд╛рд░ (рдмрд┐рдЯреНрд╕ рдореЗрдВ) рд╕реЗрдЯ рдХрд░реЗрдВред рдХреЗрд╡рд▓ рдорд╛рди 8 рдФрд░ 16 рд░рд╣реЗ
рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕рдорд░реНрдерд┐рдд рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 16.

рдирдореВрдирд╛ рджрд░
рдХреИрдкреНрдЪрд░ рдХрд┐рдП рдЧрдП рдСрдбрд┐рдпреЛ рдХрд╛ рдирдореВрдирд╛ рджрд░ (рд╣рд░реНрдЯреНрдЬ рдореЗрдВ) рд╕реЗрдЯ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 44.1k.

рд╕реВрдЪреА_рдЙрдкрдХрд░рдг
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рдЙрдкрдХрд░рдгреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╕рддреНрдп.

рдЙрджрд╛рд╣рд░рдг

OpenAL рд╕рдорд░реНрдерд┐рдд рдЙрдкрдХрд░рдгреЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ:

$ ffmpeg -list_devices рд╕рдЪ -рдПрдл рдУрдкрдирд▓ -рдЖрдИ рдбрдореА рдЖрдЙрдЯ.рдУрдЬреАрдЬреА

OpenAL рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рдХреИрдкреНрдЪрд░ рдХрд░реЗрдВ рдбреЙ-BT101 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд▓реНрд╕рдСрдбрд┐рдпреЛ:

$ ffmpeg -f openal -i 'DR-BT101 рд╡рд╛рдпрд╛ PulseAudio' out.ogg

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рдХреИрдкреНрдЪрд░ рдХрд░реЗрдВ (рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ '' рдХреЛ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рдиреЛрдЯ рдХрд░реЗрдВ):

$ ffmpeg -f openal -i '' out.ogg

рдПрдХ рд╕рд╛рде рджреЛ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рдХреИрдкреНрдЪрд░ рдХрд░реЗрдВ, рдПрдХ рд╣реА рдореЗрдВ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рд▓рд┐рдЦреЗрдВ
ffmpeg рдЖрджреЗрд╢:

$ ffmpeg -f openal -i 'DR-BT101 рд╡рд╛рдпрд╛ PulseAudio' out1.ogg -f openal -i 'ALSA Default' out2.ogg

рдиреЛрдЯ: рд╕рднреА OpenAL рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдПрдХ рд╕рд╛рде рдХрдИ рдХреИрдкреНрдЪрд░ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ - рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ
рдирд╡реАрдирддрдо рдУрдкрдирдПрдПрд▓ рд╕реЙрдлреНрдЯ рдЕрдЧрд░ рдЙрдкрд░реЛрдХреНрдд рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдХреЗрдВрджреНрд░
рд╕рд╛рдЙрдВрдб рд╕рд┐рд╕реНрдЯрдо рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдЦреЛрд▓реЗрдВред

рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдирд╛рдо OSS рдЗрдирдкреБрдЯ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдбрд┐рд╡рд╛рдЗрд╕ рдиреЛрдб рд╣реИ
рдбрд┐рд╡рд╛рдЗрд╕, рдФрд░ рдЖрдорддреМрд░ рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ /рджреЗрд╡/рдбреАрдПрд╕рдкреА.

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╕реЗ рд╣рдерд┐рдпрд╛рдиреЗ рдХреЗ рд▓рд┐рдП /рджреЗрд╡/рдбреАрдПрд╕рдкреА рдХрд╛ рдЙрдкрдпреЛрдЧ ffmpeg рдЖрджреЗрд╢ рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд░реЗрдВ:

ffmpeg -f oss -i /dev/dsp /tmp/oss.wav

рдУрдПрд╕рдПрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рджреЗрдЦреЗрдВ:http://manuals.opensound.com/usersguide/dsp.html>

рдСрдкреНрд╢рдВрд╕

рдирдореВрдирд╛ рджрд░
рдирдореВрдирд╛ рджрд░ рд╣рд░реНрдЯреНрдЬ рдореЗрдВ рд╕реЗрдЯ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 48000 рд╣реИред

рдЪреИрдирд▓реЛрдВ
рдЪреИрдирд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 2 рд╣реИред

рдирд╛рдбрд╝реА
рдкрд▓реНрд╕рдСрдбрд┐рдпреЛ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдЗрд╕ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ FFmpeg рдХреЛ "--enable-libpulse" рдХреЗ рд╕рд╛рде рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдПрдХ рд╕реНрд░реЛрдд рдбрд┐рд╡рд╛рдЗрд╕ рдпрд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ "рдбрд┐рдлрд╝реЙрд▓реНрдЯ" рд╣реИ

PulseAudio рд╕реНрд░реЛрдд рдЙрдкрдХрд░рдгреЛрдВ рдФрд░ рдЙрдирдХреЗ рдЧреБрдгреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рдХрдорд╛рдВрдб рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдкреИрдХреНрдЯрд▓реА рд╕реВрдЪреА рд╕реНрддреНрд░реЛрдд.

PulseAudio рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИhttp://www.pulseaudio.org>.

рдСрдкреНрд╢рдВрд╕

рд╕рд░реНрд╡рд░
IP рдкрддреЗ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ PulseAudio рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рд░реНрд╡рд░
рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдирд╛рдо
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдЬреЛ PulseAudio рд╕рдХреНрд░рд┐рдп рдХреНрд▓рд╛рдЗрдВрдЯ рджрд┐рдЦрд╛рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛, рджреНрд╡рд╛рд░рд╛
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдпрд╣ "LIBAVFORMAT_IDENT" рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реИред

рд╕реНрдЯреНрд░реАрдо_рдирд╛рдо
рдзрд╛рд░рд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ PulseAudio рд╕рдХреНрд░рд┐рдп рд╕реНрдЯреНрд░реАрдо рджрд┐рдЦрд╛рддреЗ рд╕рдордп рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛
"рд░рд┐рдХреЙрд░реНрдб" рд╣реИред

рдирдореВрдирд╛ рджрд░
Hz рдореЗрдВ рдирдореВрдирд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ 48kHz рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЪреИрдирд▓реЛрдВ
рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдЪреИрдирд▓ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ 2 (рд╕реНрдЯреАрд░рд┐рдпреЛ) рд╕реЗрдЯ рд╣реИред

рдврд╛рдВрдЪреЗ рдХрд╛ рдЖрдХрд░
рдкреНрд░рддрд┐ рдлреНрд░реЗрдо рдмрд╛рдЗрдЯреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдпрд╣ 1024 рдкрд░ рд╕реЗрдЯ рд╣реИред

рдЯреБрдХрдбрд╝рд╛_рдЖрдХрд╛рд░
PulseAudio рдореЗрдВ рдиреНрдпреВрдирддрдо рдмрдлрд░рд┐рдВрдЧ рдЦрдВрдб рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ, рдпрд╣ рдСрдбрд┐рдпреЛ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░реЗрдЧрд╛
рд╡рд┐рд▓рдВрдмрддрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдпрд╣ рдЕрдирд╕реЗрдЯ рд╣реИред

рджреАрд╡рд╛рд░ рдХреА рдШрдбреА
рд╡рд░реНрддрдорд╛рди рд╕рдордп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреАрдЯреАрдПрд╕ рд╕реЗрдЯ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 1 рд╣реИред

рдЙрджрд╛рд╣рд░рдг

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рд╕реНрдЯреНрд░реАрдо рд░рд┐рдХреЙрд░реНрдб рдХрд░реЗрдВ:

ffmpeg -f рдкрд▓реНрд╕ -i рдбрд┐рдлрд╝реЙрд▓реНрдЯ /tmp/pulse.wav

рдХреНрдпреВрдЯреАрдХрд┐рдЯ
рдХреНрдпреВрдЯреАрдХрд┐рдЯ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдЗрдирдкреБрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдирд╛рдо рдпрд╛ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рд░реНрд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдбрд┐рд╡рд╛рдЗрд╕ рдЗрдВрдбреЗрдХреНрд╕ -video_device_index рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рднреА рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рджрд┐рдпрд╛ рдЧрдпрд╛ рдбрд┐рд╡рд╛рдЗрд╕ рдЗрдВрдбреЗрдХреНрд╕ рд╣реЛрдЧрд╛
рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рдбрд┐рд╡рд╛рдЗрд╕ рдирд╛рдо рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░реЗрдВред рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рдЙрдкрдХрд░рдг рдореЗрдВ рдХреЗрд╡рд▓ рд╕рдВрдЦреНрдпрд╛рдПрдБ рд╣реЛрдВ, рддреЛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
-video_device_index рдЗрд╕реЗ рдкрд╣рдЪрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдПред рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реЛрдиреЗ рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдЪреБрдирд╛ рдЬрд╛рдПрдЧрд╛
рдпрд╛ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдирд╛рдо "рдбрд┐рдлрд╝реЙрд▓реНрдЯ" рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЙрдкрд▓рдмреНрдз рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЧрдгрдирд╛ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ
-рд╕реВрдЪреА_рдбрд┐рд╡рд╛рдЗрд╕.

ffmpeg -f qtkit -i "0" out.mpg

ffmpeg -f qtkit -video_device_index 0 -i "" out.mpg

ffmpeg -f qtkit -i "рдбрд┐рдлрд╝реЙрд▓реНрдЯ" out.mpg

ffmpeg -f qtkit -list_devices true -i ""

рдСрдкреНрд╢рдВрд╕

рдлреНрд░реЗрдо рд░реЗрдЯ
рдлреНрд░реЗрдо рджрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 30 рд╣реИред

рд╕реВрдЪреА_рдЙрдкрдХрд░рдг
рдпрджрд┐ "рд╕рддреНрдп" рдкрд░ рд╕реЗрдЯ рд╣реИ, рддреЛ рдЙрдкрдХрд░рдгреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ "рдЭреВрдард╛" рд╣реИред

рд╡реАрдбрд┐рдпреЛ_рдбрд┐рд╡рд╛рдЗрд╕_рдЗрдВрдбреЗрдХреНрд╕
рд╕рдорд╛рди рдирд╛рдо рд╡рд╛рд▓реЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рджреНрд╡рд╛рд░рд╛ рд╡реАрдбрд┐рдпреЛ рдЙрдкрдХрд░рдг рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ (0 рд╕реЗ рдкреНрд░рд╛рд░рдВрдн рд╣реЛрддрд╛ рд╣реИ)ред

рд╕рдВрдбрд┐рдпреЛ
sndio рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рдЗрд╕ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдкрд░ libsndio рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдкреНрд░рдгрд╛рд▓реАред

рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдирд╛рдо sndio рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдбрд┐рд╡рд╛рдЗрд╕ рдиреЛрдб рд╣реИ
рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕, рдФрд░ рдЖрдорддреМрд░ рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ /рджреЗрд╡/рдСрдбрд┐рдпреЛ0.

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╕реЗ рд╣рдерд┐рдпрд╛рдиреЗ рдХреЗ рд▓рд┐рдП /рджреЗрд╡/рдСрдбрд┐рдпреЛ0 рдХрд╛ рдЙрдкрдпреЛрдЧ ffmpeg рдЖрджреЗрд╢ рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд░реЗрдВ:

ffmpeg -f sndio -i /dev/audio0 /tmp/oss.wav

рдСрдкреНрд╢рдВрд╕

рдирдореВрдирд╛ рджрд░
рдирдореВрдирд╛ рджрд░ рд╣рд░реНрдЯреНрдЬ рдореЗрдВ рд╕реЗрдЯ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 48000 рд╣реИред

рдЪреИрдирд▓реЛрдВ
рдЪреИрдирд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 2 рд╣реИред

рд╡реАрдбрд┐рдпреЛ4рд▓рд┐рдирдХреНрд╕2, v4l2
Video4Linux2 рдЗрдирдкреБрдЯ рд╡реАрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ред

"v4l2" рдХрд╛ рдЙрдкрдпреЛрдЧ "video4linux2" рдХреЗ рд▓рд┐рдП рдЙрдкрдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдпрджрд┐ FFmpeg рдХреЛ v4l-utils рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ ("--enable-libv4l2" рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ
рд╡рд┐рдХрд▓реНрдк), рдЗрд╕реЗ "-use_libv4l2" рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред

рд╣рдерд┐рдпрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдирд╛рдо рдПрдХ рдлрд╝рд╛рдЗрд▓ рдбрд┐рд╡рд╛рдЗрд╕ рдиреЛрдб рд╣реИ, рдЖрдорддреМрд░ рдкрд░ рд▓рд┐рдирдХреНрд╕ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ
рдЬрдм рдбрд┐рд╡рд╛рдЗрд╕ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдпреВрдПрд╕рдмреА рд╡реЗрдм рдХреИрдорд░рд╛) рдХреЛ рдкреНрд▓рдЧ рдЗрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдРрд╕реЗ рдиреЛрдб рдмрдирд╛рддреЗ рд╣реИрдВ
рдкреНрд░рдгрд╛рд▓реА, рдФрд░ рдЗрд╕ рддрд░рд╣ рдХрд╛ рдПрдХ рдирд╛рдо рд╣реИ /рджреЗрд╡/рд╡реАрдбрд┐рдпреЛрдПрди, рдЬрд╣рд╛рдВ N рд╕реЗ рдЬреБрдбрд╝рд╛ рдПрдХ рдирдВрдмрд░ рд╣реИ
рдбрд┐рд╡рд╛рдЗрд╕.

Video4Linux2 рдбрд┐рд╡рд╛рдЗрд╕ рдЖрдорддреМрд░ рдкрд░ рд╕реАрдорд┐рдд рд╕реЗрдЯ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ рдЪреМрдбрд╛рдИxрдКрдВрдЪрд╛рдИ рдЖрдХрд╛рд░ рдФрд░ рдлреНрд░реЗрдо рджрд░ред
рдЖрдк рдЬрд╛рдВрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреМрди рд╕реЗ рд╕рдорд░реНрдерд┐рдд рд╣реИрдВ -рд╕реВрдЪреА_рдкреНрд░рд╛рд░реВрдк рд╕рдм Video4Linux2 рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдПред рдХреБрдЫ
рдбрд┐рд╡рд╛рдЗрд╕, рдЬреИрд╕реЗ рдЯреАрд╡реА рдХрд╛рд░реНрдб, рдПрдХ рдпрд╛ рдЕрдзрд┐рдХ рдорд╛рдирдХреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред рд╕рднреА рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ
рд╕рдорд░реНрдерд┐рдд рдорд╛рдирдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ -рд╕реВрдЪреА_рдорд╛рдирдХ рд╕рдм.

рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреЗ рд▓рд┐рдП рд╕рдордп рдЖрдзрд╛рд░ 1 рдорд╛рдЗрдХреНрд░реЛрд╕реЗрдХрдВрдб рд╣реИред рдХрд░реНрдиреЗрд▓ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдФрд░
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди, рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдШрдбрд╝реА (рдпреВрдирд┐рдХреНрд╕ рдкрд░ рдореВрд▓) рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдпреБрдЧ) рдпрд╛ рдореЛрдиреЛрдЯреЛрдирд┐рдХ рдШрдбрд╝реА (рдЖрдорддреМрд░ рдкрд░ рдмреВрдЯ рд╕рдордп рдкрд░ рдореВрд▓, рдПрдирдЯреАрдкреА рдпрд╛ рдореИрдиреБрдЕрд▓ рд╕реЗ рдЕрдкреНрд░рднрд╛рд╡рд┐рдд
рдШрдбрд╝реА рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди)ред -рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдкреЗрдЯ or -рдЯреАрдПрд╕ рдкреЗрдЯ рд╡рд┐рдХрд▓реНрдк рдХреЛ рдордЬрдмреВрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдШрдбрд╝реА рдореЗрдВ рд░реВрдкрд╛рдВрддрд░рдгред

рдХреЗ рд╕рд╛рде video4linux2 рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдХреБрдЫ рдЙрдкрдпреЛрдЧ рдЙрджрд╛рд╣рд░рдг ffmpeg рдФрд░ ffplay:

рдПрдХ video4linux2 рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерд┐рдд рд╕реНрд╡рд░реВрдкреЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдПрдВ:

ffplay -f video4linux2 -list_formats рд╕рднреА /dev/video0

┬╖ рдПрдХ video4linux2 рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдЗрдирдкреБрдЯ рд▓реЗрдВ рдФрд░ рджрд┐рдЦрд╛рдПрдВ:

ffplay -f video4linux2 -framerate 30 -video_size hd720 /dev/video0

┬╖ рдПрдХ video4linux2 рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдЗрдирдкреБрдЯ рдХреЛ рдкрдХрдбрд╝реЛ рдФрд░ рд░рд┐рдХреЙрд░реНрдб рдХрд░реЗрдВ, рдлреНрд░реЗрдо рджрд░ рдФрд░ рдЖрдХрд╛рд░ рдХреЛ рдЗрд╕ рддрд░рд╣ рдЫреЛрдбрд╝ рджреЗрдВ
рдкрд╣рд▓реЗ рд╕реЗрдЯ:

ffmpeg -f video4linux2 -input_format mjpeg -i /dev/video0 out.mpeg

Video4Linux рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рдЬрд╛рдБрдЪ рдХрд░реЗрдВhttp://linuxtv.org/>.

рдСрдкреНрд╢рдВрд╕

рдорд╛рдирдХ
рдорд╛рдирдХ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рд╕рдорд░реНрдерд┐рдд рдорд╛рдирдХ рдХрд╛ рдирд╛рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рд╕рдорд░реНрдерд┐рдд рдорд╛рдирдХреЛрдВ, рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рд╕реВрдЪреА_рдорд╛рдирдХ рд╡рд┐рдХрд▓реНрдк.

рдЪреИрдирд▓
рдЗрдирдкреБрдЯ рдЪреИрдирд▓ рдирдВрдмрд░ рд╕реЗрдЯ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ -1, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдкрд╣рд▓реЗ рдЪрдпрдирд┐рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рдЪреИрдирд▓.

рд╡реАрдбрд┐рдпреЛ рдХрд╛ рдЖрдХрд╛рд░
рд╡реАрдбрд┐рдпреЛ рдлреНрд░реЗрдо рдХрд╛ рдЖрдХрд╛рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рддрд░реНрдХ рдлрд╝реЙрд░реНрдо рдореЗрдВ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЪреМрдбрд╝рд╛рдИxHEIGHT рдпрд╛ рдПрдХ
рд╡реИрдз рдЖрдХрд╛рд░ рд╕рдВрдХреНрд╖рд┐рдкреНрддред

рдкрд┐рдХреНрд╕реЗрд▓_рдлреЙрд░реНрдореЗрдЯ
рдкрд┐рдХреНрд╕реЗрд▓ рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ (рдХреЗрд╡рд▓ рдХрдЪреНрдЪреЗ рд╡реАрдбрд┐рдпреЛ рдЗрдирдкреБрдЯ рдХреЗ рд▓рд┐рдП рдорд╛рдиреНрдп)ред

рдЗрдирдкреБрдЯ рдкреНрд░рд╛рд░реВрдк
рдкрд╕рдВрджреАрджрд╛ рдкрд┐рдХреНрд╕реЗрд▓ рдкреНрд░рд╛рд░реВрдк (рдХрдЪреНрдЪреЗ рд╡реАрдбрд┐рдпреЛ рдХреЗ рд▓рд┐рдП) рдпрд╛ рдХреЛрдбреЗрдХ рдирд╛рдо рд╕реЗрдЯ рдХрд░реЗрдВред рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
рдПрдХ рдЗрдирдкреБрдЯ рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЬрдм рдХрдИ рдЙрдкрд▓рдмреНрдз рд╣реЛрдВред

framerate
рдкрд╕рдВрджреАрджрд╛ рд╡реАрдбрд┐рдпреЛ рдлреНрд░реЗрдо рджрд░ рд╕реЗрдЯ рдХрд░реЗрдВред

рд╕реВрдЪреА_рдкреНрд░рд╛рд░реВрдк
рдЙрдкрд▓рдмреНрдз рд╕реНрд╡рд░реВрдкреЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдПрдВ (рд╕рдорд░реНрдерд┐рдд рдкрд┐рдХреНрд╕реЗрд▓ рдкреНрд░рд╛рд░реВрдк, рдХреЛрдбреЗрдХ рдФрд░ рдлрд╝реНрд░реЗрдо рдЖрдХрд╛рд░) рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред

рдЙрдкрд▓рдмреНрдз рдорд╛рди рд╣реИрдВ:

рд╕рдм рд╕рднреА рдЙрдкрд▓рдмреНрдз (рд╕рдВрдкреАрдбрд╝рд┐рдд рдФрд░ рдЧреИрд░-рд╕рдВрдкреАрдбрд╝рд┐рдд) рдкреНрд░рд╛рд░реВрдк рджрд┐рдЦрд╛рдПрдВред

рдХрдЪреНрдЪрд╛ рдХреЗрд╡рд▓ рдХрдЪреНрдЪреЗ рд╡реАрдбрд┐рдпреЛ (рдЧреИрд░-рд╕рдВрдкреАрдбрд╝рд┐рдд) рдкреНрд░рд╛рд░реВрдк рджрд┐рдЦрд╛рдПрдВред

рд╕рдВрдХреБрдЪрд┐рдд
рдХреЗрд╡рд▓ рд╕рдВрдкреАрдбрд╝рд┐рдд рдкреНрд░рд╛рд░реВрдк рджрд┐рдЦрд╛рдПрдВред

рд╕реВрдЪреА_рдорд╛рдирдХ
рд╕рдорд░реНрдерд┐рдд рдорд╛рдирдХреЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдПрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред

рдЙрдкрд▓рдмреНрдз рдорд╛рди рд╣реИрдВ:

рд╕рдм рд╕рднреА рд╕рдорд░реНрдерд┐рдд рдорд╛рдирдХ рджрд┐рдЦрд╛рдПрдВред

рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк, ts
рдкрдХрдбрд╝реЗ рдЧрдП рдлрд╝реНрд░реЗрдо рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХрд╛ рдкреНрд░рдХрд╛рд░ рд╕реЗрдЯ рдХрд░реЗрдВред

рдЙрдкрд▓рдмреНрдз рдорд╛рди рд╣реИрдВ:

рдЪреВрдХ
рдХрд░реНрдиреЗрд▓ рд╕реЗ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд░реЗрдВред

рдкреЗрдЯ рдкреВрд░реНрдг рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк (рджреАрд╡рд╛рд░ рдШрдбрд╝реА) рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд░реЗрдВред

рдореЛрдиреЛ2abs
рдореЛрдиреЛрдЯреЛрдирд┐рдХ рд╕реЗ рдирд┐рд░рдкреЗрдХреНрд╖ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдореЗрдВ рдмрд▓ рд░реВрдкрд╛рдВрддрд░рдгред

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди "рдбрд┐рдлрд╝реЙрд▓реНрдЯ" рд╣реИред

рдЙрдкрдпреЛрдЧ_libv4l2
libv4l2 (v4l-utils) рд░реВрдкрд╛рдВрддрд░рдг рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 0 рд╣реИред

рд╡реАрдПрдлрдбрдмреНрд▓реНрдпреВрдХреИрдк
VfW (Windows рдХреЗ рд▓рд┐рдП рд╡реАрдбрд┐рдпреЛ) рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдХреИрдкреНрдЪрд░ рдХрд░рддрд╛ рд╣реИред

рдЗрдирдкреБрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреИрдкреНрдЪрд░ рдбреНрд░рд╛рдЗрд╡рд░ рд╕рдВрдЦреНрдпрд╛ рд╣реИ, 0 рд╕реЗ 9 рддрдХред рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рдХреА рд╕реВрдЪреА рдореБрджреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ "рд╕реВрдЪреА" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдХрд┐рд╕реА рдЕрдиреНрдп рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреА рдЬрд╛рдПрдЧреА
рдбрд┐рд╡рд╛рдЗрд╕ рдирдВрдмрд░ 0 рдХреЗ рд░реВрдк рдореЗрдВред

рдСрдкреНрд╢рдВрд╕

рд╡реАрдбрд┐рдпреЛ рдХрд╛ рдЖрдХрд╛рд░
рд╡реАрдбрд┐рдпреЛ рдлреНрд░реЗрдо рдХрд╛ рдЖрдХрд╛рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред

framerate
рд╣рдерд┐рдпрд╛рдиреЗ рдХреА рдлреНрд░реЗрдо рджрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди "ntsc" рд╣реИ, рдЬреЛ рдХреА рдлрд╝реНрд░реЗрдо рджрд░ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИ
"30000/1001"ред

x11рдЧреНрд░реИрдм
X11 рд╡реАрдбрд┐рдпреЛ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рдЗрд╕ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ libxcb рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдпрд╣ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рд╡рд┐рдХрд▓реНрдк --рд╕рдХреНрд╖рдо-x11grab рд▓реАрдЧреЗрд╕реА Xlib рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрдж рд╣реИред

рдпрд╣ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд┐рд╕реА рдХреЛ X11 рдбрд┐рд╕реНрдкреНрд▓реЗ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдХреЛ рдХреИрдкреНрдЪрд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдЗрдирдкреБрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдореЗрдВ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реИ:

[ ]: . [+ , ]

рдореЗрдЬрдмрд╛рдирдирд╛рдо:рдбрд┐рд╕реНрдкреНрд▓реЗ_рдирдВрдмрд░.рд╕реНрдХреНрд░реАрди_рдирдВрдмрд░ рд╣рдерд┐рдпрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░реАрди рдХрд╛ X11 рдбрд┐рд╕реНрдкреНрд▓реЗ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ
рд╕реЗред рдореЗрдЬрдмрд╛рдирдирд╛рдо рдЫреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ "рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ" рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯред рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░
рдкреНрд░рджрд░реНрд╢рди рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░рджрд░реНрд╢рди рдирд╛рдо рд╢рд╛рдорд┐рд▓ рд╣реИред

x_рдСрдлрд╕реЗрдЯ рдФрд░ y_offset рдКрдкрд░реА-рдмрд╛рдПрдБ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рд╣рдбрд╝рдкрдиреЗ рд╡рд╛рд▓реЗ рдХреНрд╖реЗрддреНрд░ рдХреЗ рдСрдлрд╝рд╕реЗрдЯ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ
X11 рд╕реНрдХреНрд░реАрди рдХреА рд╕реАрдорд╛ред рд╡реЗ 0 рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реИрдВред

X11 рдкреНрд░рд▓реЗрдЦрди рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ (рдЬреИрд╕реЗ рдЖрджрдореА X) рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдПред

рдЙрдкрдпреЛрдЧ xdpyinfo рдЖрдкрдХреЗ X11 . рдХреЗ рдЧреБрдгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмреБрдирд┐рдпрд╛рджреА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд░рдо
рдкреНрд░рджрд░реНрд╢рди (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП "рдирд╛рдо" рдпрд╛ "рдЖрдпрд╛рдо" рдХреЗ рд▓рд┐рдП grep)ред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╕реЗ рд╣рдерд┐рдпрд╛рдиреЗ рдХреЗ рд▓рд┐рдП : 0.0 рдХрд╛ рдЙрдкрдпреЛрдЧ ffmpeg:

ffmpeg -f x11grab -framerate 25 -video_size cif -i :0.0 out.mpg

рд╕реНрдерд┐рддрд┐ "10,20" рдкрд░ рдкрдХрдбрд╝реЛ:

ffmpeg -f x11grab -framerate 25 -video_size cif -i :0.0+10,20 out.mpg

рдСрдкреНрд╢рдВрд╕

рдбреНрд░рд╛_рдорд╛рдЙрд╕
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдХрд┐ рдорд╛рдЙрд╕ рдкреЙрдЗрдВрдЯрд░ рдЦреАрдВрдЪрдирд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред 0 рдХрд╛ рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдХрд┐ рдбреНрд░рд╛ рди рдХрд░реЗрдВ
рд╕реВрдЪрдХред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди 1 рд╣реИред

рдлреЙрд▓реЛ_рдорд╛рдЙрд╕
рдкрдХрдбрд╝реЗ рдЧрдП рдХреНрд╖реЗрддреНрд░ рдХреЛ рдорд╛рдЙрд╕ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВред рддрд░реНрдХ "рдХреЗрдВрджреНрд░рд┐рдд" рдпрд╛ рдХрдИ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдкрд┐рдХреНрд╕рд▓ рдкрд┐рдХреНрд╕рд▓.

рдЬрдм рдЗрд╕реЗ "рдХреЗрдВрджреНрд░рд┐рдд" рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╣рдерд┐рдпрд╛рдиреЗ рд╡рд╛рд▓рд╛ рдХреНрд╖реЗрддреНрд░ рдорд╛рдЙрд╕ рдкреЙрдЗрдВрдЯрд░ рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░рддрд╛ рд╣реИ
рдФрд░ рдкреЙрдЗрдВрдЯрд░ рдХреЛ рдХреНрд╖реЗрддреНрд░ рдХреЗ рдХреЗрдВрджреНрд░ рдореЗрдВ рд░рдЦрддрд╛ рд╣реИ; рдЕрдиреНрдпрдерд╛, рдХреНрд╖реЗрддреНрд░ рддрднреА рдЕрдиреБрд╕рд░рдг рдХрд░рддрд╛ рд╣реИ рдЬрдм
рдорд╛рдЙрд╕ рдкреЙрдЗрдВрдЯрд░ рднреАрддрд░ рдкрд╣реБрдВрдЪрддрд╛ рд╣реИ рдкрд┐рдХреНрд╕рд▓ (рд╢реВрдиреНрдп рд╕реЗ рдЕрдзрд┐рдХ) рдХреНрд╖реЗрддреНрд░ рдХреЗ рдХрд┐рдирд╛рд░реЗ рддрдХред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

ffmpeg -f x11grab -follow_mouse рдХреЗрдВрджреНрд░рд┐рдд -рдлреНрд░реЗрдорд░реЗрдЯ 25 -video_size cif -i:0.0 out.mpg

рдХреЗрд╡рд▓ рддрднреА рдЕрдиреБрд╕рд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрдм рдорд╛рдЙрд╕ рдкреЙрдЗрдВрдЯрд░ 100 рдкрд┐рдХреНрд╕реЗрд▓ рд╕реЗ рдХрд┐рдирд╛рд░реЗ рддрдХ рдкрд╣реБрдБрдЪрддрд╛ рд╣реИ:

ffmpeg -f x11grab -follow_mouse 100 -framerate 25 -video_size cif -i:0.0 out.mpg

framerate
рд╣рдерд┐рдпрд╛рдиреЗ рдХреА рдлреНрд░реЗрдо рджрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди "ntsc" рд╣реИ, рдЬреЛ рдХреА рдлрд╝реНрд░реЗрдо рджрд░ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИ
"30000/1001"ред

рд╢реЛ_рдХреНрд╖реЗрддреНрд░
рд╕реНрдХреНрд░реАрди рдкрд░ рдЧреНрд░реИрдмреНрдб рдХреНрд╖реЗрддреНрд░ рджрд┐рдЦрд╛рдПрдВред

If рд╢реЛ_рдХреНрд╖реЗрддреНрд░ 1 рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдлрд┐рд░ рд╣рдерд┐рдпрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХреНрд╖реЗрддреНрд░ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛
рд╕реНрдХреНрд░реАрдиред рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде, рдпрд╣ рдЬрд╛рдирдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣рдбрд╝рдк рд▓рд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдпрджрд┐ рдХреЗрд╡рд▓ рдПрдХ рднрд╛рдЧ
рд╕реНрдХреНрд░реАрди рдХрд╛ рдХрдмреНрдЬрд╛ рд╣реИред

рдХреНрд╖реЗрддреНрд░_рд╕реАрдорд╛
рдХреНрд╖реЗрддреНрд░ рдХреА рд╕реАрдорд╛ рдХреА рдореЛрдЯрд╛рдИ рд╕реЗрдЯ рдХрд░реЗрдВ рдпрджрд┐ -рд╢реЛ_рдХреНрд╖реЗрддреНрд░ 1 рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд░реЗрдВрдЬ 1 рд╕реЗ 128 рдФрд░ . рд╣реИ
рдбрд┐рдлрд╝реЙрд▓реНрдЯ 3 рд╣реИ (рдХреЗрд╡рд▓ XCB-рдЖрдзрд╛рд░рд┐рдд x11grab)ред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

ffmpeg -f x11grab -show_region 1 -рдлреНрд░реЗрдорд░реЗрдЯ 25 -video_size cif -i :0.0+10,20 out.mpg

- рдлреЙрд▓реЛ_рдорд╛рдЙрд╕:

ffmpeg -f x11grab -follow_mouse рдХреЗрдВрджреНрд░рд┐рдд -show_region 1 -framerate 25 -video_size cif -i:0.0 out.mpg

рд╡реАрдбрд┐рдпреЛ рдХрд╛ рдЖрдХрд╛рд░
рд╡реАрдбрд┐рдпреЛ рдлреНрд░реЗрдо рдХрд╛ рдЖрдХрд╛рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди "рд╡реАрдЬреАрдП" рд╣реИред

рдЙрдкрдпреЛрдЧ_shm
рд╕рд╛рдЭрд╛ рд╕реНрдореГрддрд┐ рдХреЗ рд▓рд┐рдП рдПрдордЖрдИрдЯреА-рдПрд╕рдПрдЪрдПрдо рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди 1 рд╣реИред рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдЗрд╕реЗ рджреВрд░рд╕реНрде рдбрд┐рд╕реНрдкреНрд▓реЗ рдХреЗ рд▓рд┐рдП рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдХреЗрд╡рд▓ рд╡рд┐рд░рд╛рд╕рдд x11grab)ред

рдЧреНрд░реИрдм_рдПрдХреНрд╕ рд╣рдбрд╝рдкрдиреЗ рд╡рд┐рдХрд▓реНрдк

рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реИ:

-рдЧреНрд░реИрдм_рдПрдХреНрд╕ -рдЧреНрд░реИрдм_рд╡рд╛рдИ

рд╣рдерд┐рдпрд╛рдиреЗ рдХреНрд╖реЗрддреНрд░ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рд╕реЗрдЯ рдХрд░реЗрдВред рдЙрдиреНрд╣реЗрдВ рдКрдкрд░реА рдмрд╛рдПрдБ рдХреЛрдиреЗ рд╕реЗ рдСрдлрд╝рд╕реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╡реНрдпрдХреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
X11 рд╡рд┐рдВрдбреЛ рд╕реЗред рдбрд┐рдлреЙрд▓реНрдпреВ рдореВрд▓реНрдп рд╢реВрдиреНрдп рд╣реИред

рдЖрдЙрдЯрдкреБрдЯ рдЙрдкрдХрд░рдг


рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ FFmpeg рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЧрдП рддрддреНрд╡ рд╣реИрдВ рдЬреЛ рдорд▓реНрдЯреАрдореАрдбрд┐рдпрд╛ рдбреЗрдЯрд╛ рд▓рд┐рдЦ тАЛтАЛрд╕рдХрддреЗ рд╣реИрдВ
рдЖрдкрдХреЗ рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рдЬреБрдбрд╝рд╛ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдЬрдм рдЖрдк рдЕрдкрдиреЗ FFmpeg рдмрд┐рд▓реНрдб рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рднреА рд╕рдорд░реНрдерд┐рдд рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рд╕рдХреНрд╖рдо рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ
рдЧрд▓рддреА рдХрд░рдирд╛ред рдЖрдк рдХреЙрдиреНрдлрд┐рдЧрд░ рд╡рд┐рдХрд▓реНрдк "--рд▓рд┐рд╕реНрдЯ-рдЖрдЙрдЯрдбреЗрд╡реНрд╕" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рднреА рдЙрдкрд▓рдмреНрдз рд▓реЛрдЧреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЖрдк рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рд╡рд┐рдХрд▓реНрдк "--disable-outdevs" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рднреА рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рд╡рд┐рдХрд▓реНрдк "--enable-outdev=" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдЪреБрдирд┐рдВрджрд╛ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рдХрд░реЗрдВрдЖрдЙрдЯрдбреЗрд╡", рдпрд╛ рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реЛ
рд╡рд┐рдХрд▓реНрдк "--disable-outdev=" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдЗрдирдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВрдЖрдЙрдЯрдбреЗрд╡".

ff* рдЯреВрд▓ рдХрд╛ рд╡рд┐рдХрд▓реНрдк "-devices" рд╕рдХреНрд╖рдо рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреА рд╕реВрдЪреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧрд╛ред

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рд╡рд┐рд╡рд░рдг рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИред

рдЕрд▓рд╕рд╛
ALSA (рдЙрдиреНрдирдд рд▓рд┐рдирдХреНрд╕ рд╕рд╛рдЙрдВрдб рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░) рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдЙрджрд╛рд╣рд░рдг

┬╖ рдбрд┐рдлрд╝реЙрд▓реНрдЯ ALSA рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдлрд╝рд╛рдЗрд▓ рдЪрд▓рд╛рдПрдВ:

ffmpeg -i INPUT -f рдбрд┐рдлрд╝реЙрд▓реНрдЯ рднреА

┬╖ рд╕рд╛рдЙрдВрдбрдХрд╛рд░реНрдб 1, рдСрдбрд┐рдпреЛ рдбрд┐рд╡рд╛рдЗрд╕ 7 рдкрд░ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдЪрд▓рд╛рдПрдВ:

ffmpeg -i INPUT -f alsa hw:1,7

caca
рд╕реАрдПрд╕реАрдП рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдпрд╣ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ CACA рд╡рд┐рдВрдбреЛ рдореЗрдВ рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рджрд┐рдЦрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдХреЗрд╡рд▓ рдПрдХ CACA рд╡рд┐рдВрдбреЛ
рдкреНрд░рддрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдЖрд╡реЗрджрди.

рдЗрд╕ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ FFmpeg рдХреЛ "--enable-libcaca" рдХреЗ рд╕рд╛рде рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
libcaca рдПрдХ рдЧреНрд░рд╛рдлрд╝рд┐рдХреНрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ рдЬреЛ рдкрд┐рдХреНрд╕реЗрд▓ рдХреЗ рдмрдЬрд╛рдп рдЯреЗрдХреНрд╕реНрдЯ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рддреА рд╣реИред

рд▓рд┐рдмрдХрд╛рдХрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рджреЗрдЦреЗрдВ:http://caca.zoy.org/wiki/libcaca>

рдСрдкреНрд╢рдВрд╕

рд╡рд┐рдВрдбреЛ_рд╢реАрд░реНрд╖рдХ
CACA рд╡рд┐рдВрдбреЛ рд╢реАрд░реНрд╖рдХ рд╕реЗрдЯ рдХрд░реЗрдВ, рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ
рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдЦрд┐рдбрд╝рдХреА рдХрд╛ рдЖрдХрд╛рд░
CACA рд╡рд┐рдВрдбреЛ рдХрд╛ рдЖрдХрд╛рд░ рд╕реЗрдЯ рдХрд░реЗрдВ, рдкреНрд░рдкрддреНрд░ рдХреА рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЪреМрдбрд╛рдИxрдКрдВрдЪрд╛рдИ рдпрд╛ рдПрдХ рд╡реАрдбрд┐рдпреЛ рдЖрдХрд╛рд░
рд╕рдВрдХреНрд╖реЗрдкрд╛рдХреНрд╖рд░ред рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рддреЛ рдпрд╣ рдЗрдирдкреБрдЯ рд╡реАрдбрд┐рдпреЛ рдХреЗ рдЖрдХрд╛рд░ рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛрддрд╛ рд╣реИред

рдбреНрд░рд╛рдЗрд╡рд░
рдбрд┐рд╕реНрдкреНрд▓реЗ рдбреНрд░рд╛рдЗрд╡рд░ рд╕реЗрдЯ рдХрд░реЗрдВ.

рдХрд▓рди рд╡рд┐рдзрд┐
рдбрд┐рдерд░рд┐рдВрдЧ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд╕реЗрдЯ рдХрд░реЗрдВ. рдбрд┐рдерд░рд┐рдВрдЧ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рд╕реНрддреБрдд рдХреА рдЬрд╛ рд░рд╣реА рддрд╕реНрд╡реАрд░ рдореЗрдВ рд╣реИ
рдЖрдорддреМрд░ рдкрд░ рдЙрдкрд▓рдмреНрдз рдкреИрд▓реЗрдЯ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рд░рдВрдЧ рд╣реЛрддреЗ рд╣реИрдВред рд╕реНрд╡реАрдХреГрдд рдорд╛рди рд╕реВрдЪреАрдмрджреНрдз рд╣реИрдВ
"-list_dither рдПрд▓реНрдЧреЛрд░рд┐рджрдо" рдХреЗ рд╕рд╛рдеред

рдПрдВрдЯреАрдПрд▓рд┐рдпрд╛рд╕
рдПрдВрдЯреАрд▓рд┐рдпрд╛рд╕ рд╡рд┐рдзрд┐ рд╕реЗрдЯ рдХрд░реЗрдВред рдПрдВрдЯреАрдПрд▓рд┐рдпрд╛рд╕рд┐рдВрдЧ рдкреНрд░рджрд╛рди рдХреА рдЧрдИ рдЫрд╡рд┐ рдХреЛ рд╕реБрдЪрд╛рд░реВ рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рд╕реЗ рдмрдЪрд╛рддрд╛ рд╣реИ
рдЖрдорддреМрд░ рдкрд░ рджреЗрдЦрд╛ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ рд╕реАрдврд╝реА рдкреНрд░рднрд╛рд╡ред рд╕реНрд╡реАрдХреГрдд рдорд╛рди "-list_dither" рдХреЗ рд╕рд╛рде рд╕реВрдЪреАрдмрджреНрдз рд╣реИрдВ
рдПрдВрдЯреАрдЕрд▓рд┐рдпрд╛рд╕реЗрд╕"ред

рдЪрд╛рд░рд╕реЗрдЯ
рд╕реЗрдЯ рдХрд░реЗрдВ рдХрд┐ рдкрд╛рда рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╕рдордп рдХреМрди рд╕реЗ рд╡рд░реНрдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╕реНрд╡реАрдХреГрдд рдореВрд▓реНрдп
"-list_dither рд╡рд░реНрдгрд╕реЗрдЯ" рдХреЗ рд╕рд╛рде рд╕реВрдЪреАрдмрджреНрдз рд╣реИрдВред

рд░рдВрдЧ
рдЯреЗрдХреНрд╕реНрдЯ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд░рдВрдЧ рдХреЛ рд╕реЗрдЯ рдХрд░реЗрдВред рд╕реНрд╡реАрдХреГрдд рдорд╛рдиреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
"-рд╕реВрдЪреА_рдЕрд▓рдЧ-рдЕрд▓рдЧ рд░рдВрдЧ"ред

list_drivers
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рдЙрдкрд▓рдмреНрдз рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред

list_dither
рддрд░реНрдХ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЕрдиреНрдп рдЙрдкрд▓рдмреНрдз рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдПрдВред рддрд░реНрдХ рдЗрдирдореЗрдВ рд╕реЗ рдПрдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
"рдПрд▓реНрдЧреЛрд░рд┐рджрдо", "рдПрдВрдЯреАрдЕрд▓рд┐рдпрд╛рд╕реЗрд╕", "рд╡рд░реНрдгрд╕реЗрдЯ", "рд░рдВрдЧ"ред

рдЙрджрд╛рд╣рд░рдг

┬╖ рдирд┐рдореНрди рдЖрджреЗрд╢ рджрд┐рдЦрд╛рддрд╛ рд╣реИ ffmpeg рдЖрдЙрдЯрдкреБрдЯ рдПрдХ CACA рд╡рд┐рдВрдбреЛ рд╣реИ, рдЬреЛ рдЗрд╕рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рдмрд╛рдзреНрдп рдХрд░рддреА рд╣реИ
80x25:

ffmpeg -i INPUT -vcodec рдХрдЪреНрдЪрд╛ рд╡реАрдбрд┐рдпреЛ -pix_fmt rgb24 -window_size 80x25 -f caca -

┬╖ рдЙрдкрд▓рдмреНрдз рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рдХреА рд╕реВрдЪреА рджрд┐рдЦрд╛рдПрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ:

ffmpeg -i INPUT -pix_fmt rgb24 -f caca -list_drivers true -

┬╖ рдЙрдкрд▓рдмреНрдз рдЕрд▓рдЧ-рдЕрд▓рдЧ рд░рдВрдЧреЛрдВ рдХреА рд╕реВрдЪреА рджрд┐рдЦрд╛рдПрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ:

ffmpeg -i INPUT -pix_fmt rgb24 -f caca -list_dither рд░рдВрдЧ -

рдЪрд░рдо
рдбреЗрдХрд▓рд┐рдВрдХ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдмреНрд▓реИрдХрдореИрдЬрд┐рдХ рдбреЗрдХрд▓рд┐рдВрдХ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд▓реЗрдмреИрдХ рдХреНрд╖рдорддрд╛рдПрдВ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

рдЗрд╕ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдмреНрд▓реИрдХрдореИрдЬрд┐рдХ рдбреЗрдХрд▓рд┐рдВрдХ рдПрд╕рдбреАрдХреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдЙрдкрдпреБрдХреНрдд "--extra-cflags" рдФрд░ "--extra-ldflags" рдХреЗ рд╕рд╛рде рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░, рдЖрдк
рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдИрдбреАрдПрд▓ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рд╡рд┐рдбрд▓реА.

рдбреЗрдХрд▓рд┐рдВрдХ рдЕрдкрдиреЗ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдЪрдпрдирд╛рддреНрдордХ рд╣реИред рдкрд┐рдХреНрд╕реЗрд▓ рдкреНрд░рд╛рд░реВрдк рд╣рдореЗрд╢рд╛ uyvy422 рд╣реЛрддрд╛ рд╣реИ,
рдлреНрд░реЗрдорд░реЗрдЯ рдФрд░ рд╡реАрдбрд┐рдпреЛ рдХрд╛ рдЖрдХрд╛рд░ рдЖрдкрдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП -рд╕реВрдЪреА_рдкреНрд░рд╛рд░реВрдк 1. рдСрдбрд┐рдпреЛ
рдирдореВрдирд╛ рджрд░ рд╣рдореЗрд╢рд╛ 48 рдХрд┐рд▓реЛрд╣рд░реНрдЯреНрдЬрд╝ рд╣реЛрддреА рд╣реИред

рдСрдкреНрд╢рдВрд╕

рд╕реВрдЪреА_рдЙрдкрдХрд░рдг
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рдЙрдкрдХрд░рдгреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╕рддреНрдп.

рд╕реВрдЪреА_рдкреНрд░рд╛рд░реВрдк
рдЕрдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ <strong>рдЙрджреНрджреЗрд╢реНрдп</strong>, рд╕рдорд░реНрдерд┐рдд рд╕реНрд╡рд░реВрдкреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╕рддреНрдп.

рдкреВрд░реНрд╡ рд░реЛрд▓
рд╡реАрдбрд┐рдпреЛ рдХреЛ рдкреНрд░реАрд░реЛрд▓ рдХрд░рдиреЗ рдореЗрдВ рд▓рдЧрдиреЗ рд╡рд╛рд▓рд╛ рд╕рдордп рд╕реЗрдХрдВрдб рдореЗрдВред рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ 0.5.

рдЙрджрд╛рд╣рд░рдг

┬╖ рд╕реВрдЪреА рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕:

ffmpeg -i test.avi -f рдбреЗрдХрд▓рд┐рдВрдХ -list_devices 1 рдбрдореА

┬╖ рд╕рдорд░реНрдерд┐рдд рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдПрдВ:

ffmpeg -i test.avi -f рдбреЗрдХрд▓рд┐рдВрдХ -list_formats 1 'рдбреЗрдХрд▓рд┐рдВрдХ рдорд┐рдиреА рдореЙрдирд┐рдЯрд░'

┬╖ рд╡реАрдбрд┐рдпреЛ рдХреНрд▓рд┐рдк рдЪрд▓рд╛рдПрдВ:

ffmpeg -i test.avi -f рдбреЗрдХрд▓рд┐рдВрдХ -pix_fmt uyvy422 'рдбреЗрдХрд▓рд┐рдВрдХ рдорд┐рдиреА рдореЙрдирд┐рдЯрд░'

┬╖ рдЧреИрд░-рдорд╛рдирдХ рдлреНрд░реИрдорд░реЗрдЯ рдпрд╛ рд╡реАрдбрд┐рдпреЛ рдЖрдХрд╛рд░ рдХреЗ рд╕рд╛рде рд╡реАрдбрд┐рдпреЛ рдХреНрд▓рд┐рдк рдЪрд▓рд╛рдПрдВ:

ffmpeg -i test.avi -f рдбреЗрдХрд▓рд┐рдВрдХ -pix_fmt uyvy422 -s 720x486 -r 24000/1001 'рдбреЗрдХрд▓рд┐рдВрдХ рдорд┐рдиреА рдореЙрдирд┐рдЯрд░'

рдПрдлрдмреАрджреЗрд╡
рд▓рд┐рдирдХреНрд╕ рдлрд╝реНрд░реЗрдордмрдлрд╝рд░ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рд▓рд┐рдирдХреНрд╕ рдлреНрд░реЗрдордмрдлрд░ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЧреНрд░рд╛рдлрд┐рдХ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░-рд╕реНрд╡рддрдВрддреНрд░ рдЕрдореВрд░реНрдд рдкрд░рдд рд╣реИ
рдХрдВрдкреНрдпреВрдЯрд░ рдореЙрдиреАрдЯрд░ рдкрд░, рдЖрдорддреМрд░ рдкрд░ рдХрдВрд╕реЛрд▓ рдкрд░ред рдЗрд╕реЗ рдПрдХ рдлрд╛рдЗрд▓ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдиреЛрдб, рдЖрдорддреМрд░ рдкрд░ /рджреЗрд╡/fb0.

рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдкрдврд╝реЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг/fb/framebuffer.txt рдореЗрдВ рд╢рд╛рдорд┐рд▓
рд▓рд┐рдирдХреНрд╕ рд╕реНрд░реЛрдд рдкреЗрдбрд╝ред

рдСрдкреНрд╢рдВрд╕

рдПрдХреНрд╕рдСрдлрд╝рд╕реЗрдЯ
рдпреЛрдлрд╝рд╕реЗрдЯ
рд╢реАрд░реНрд╖ рдмрд╛рдПрдБ рдХреЛрдиреЗ рдХрд╛ x/y рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рд╕реЗрдЯ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 0 рд╣реИ.

рдЙрджрд╛рд╣рд░рдг

рдлрд╝реНрд░реЗрдордмрдлрд╝рд░ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдлрд╝рд╛рдЗрд▓ рдЪрд▓рд╛рдПрдБ /рджреЗрд╡/fb0. рдЖрд╡рд╢реНрдпрдХ рдкрд┐рдХреНрд╕реЗрд▓ рдкреНрд░рд╛рд░реВрдк рд╡рд░реНрддрдорд╛рди рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ
рдлрд╝реНрд░реЗрдордмрдлрд╝рд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ред

ffmpeg -re -i INPUT -vcodec rawvideo -pix_fmt bgra -f fbdev /dev/fb0

рдпрд╣ рд╕рднреА рджреЗрдЦреЗрдВhttp://linux-fbdev.sourceforge.net/>, рдФрд░ рдПрдлрдмреАрдПрд╕рдИрдЯреА(1).

рдУрдкрди
рдУрдкрдирдЬреАрдПрд▓ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдЗрд╕ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ FFmpeg рдХреЛ "--enable-opengl" рдХреЗ рд╕рд╛рде рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдпрд╣ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдУрдкрдирдЬреАрдПрд▓ рд╕рдВрджрд░реНрдн рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд╕рдВрджрд░реНрдн рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдпрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдПрд╕рдбреАрдПрд▓ рд╡рд┐рдВрдбреЛ рдмрдирд╛рдИ рдЧрдИ рд╣реИред

рдЬрдм рдбрд┐рд╡рд╛рдЗрд╕ рдмрд╛рд╣рд░реА рд╕рдВрджрд░реНрдн рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИ, рддреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЗ рд▓рд┐рдП рд╣реИрдВрдбрд▓рд░ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛
рд╕рдВрджреЗрд╢: "AV_DEV_TO_APP_CREATE_WINDOW_BUFFER" - рд╡рд░реНрддрдорд╛рди рдереНрд░реЗрдб рдкрд░ рдУрдкрдирдЬреАрдПрд▓ рд╕рдВрджрд░реНрдн рдмрдирд╛рдПрдВред
"AV_DEV_TO_APP_PREPARE_WINDOW_BUFFER" - OpenGL рд╕рдВрджрд░реНрдн рдХреЛ рд╡рд░реНрддрдорд╛рди рдмрдирд╛рдПрдВред
"AV_DEV_TO_APP_DISPLAY_WINDOW_BUFFER" - рд╕реНрд╡реИрдк рдмрдлрд╝рд░реНрд╕ред
"AV_DEV_TO_APP_DESTROY_WINDOW_BUFFER" - OpenGL рд╕рдВрджрд░реНрдн рдХреЛ рдирд╖реНрдЯ рдХрд░реЗрдВред рдЖрд╡реЗрджрди рднреА рд╣реИ
рдХрд┐рд╕реА рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рднреЗрдЬрдХрд░ рд╡рд░реНрддрдорд╛рди рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ
"AV_APP_TO_DEV_WINDOW_SIZE" рд╕рдВрджреЗрд╢.

рдСрдкреНрд╢рдВрд╕

рдкреГрд╖реНрдарднреВрдорд┐
рдкреГрд╖реНрдарднреВрдорд┐ рдХрд╛ рд░рдВрдЧ рд╕реЗрдЯ рдХрд░реЗрдВ. рдХрд╛рд▓рд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реИ.

рдХреЛрдИ рдЦрд┐рдбрд╝рдХреА рдирд╣реАрдВ
рдЧреИрд░-рд╢реВрдиреНрдп рдорд╛рди рдкрд░ рд╕реЗрдЯ рд╣реЛрдиреЗ рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдПрд╕рдбреАрдПрд▓ рд╡рд┐рдВрдбреЛ рдЕрдХреНрд╖рдо рд╣реЛ рдЬрд╛рддреА рд╣реИред рдЖрд╡реЗрджрди рдЕрд╡рд╢реНрдп рджреЗрдирд╛ рд╣реЛрдЧрд╛
рдУрдкрдирдЬреАрдПрд▓ рд╕рдВрджрд░реНрдн рдФрд░ "window_size_cb" рдФрд░ "window_swap_buffers_cb" рджреЛрдиреЛрдВ рдХреЙрд▓рдмреИрдХ рдЬрдм
рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рд╣реИ.

рд╡рд┐рдВрдбреЛ_рд╢реАрд░реНрд╖рдХ
рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдПрд╕рдбреАрдПрд▓ рд╡рд┐рдВрдбреЛ рд╢реАрд░реНрд╖рдХ рд╕реЗрдЯ рдХрд░реЗрдВ
рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред рдЬрдм рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдХреЛрдИ рдЦрд┐рдбрд╝рдХреА рдирд╣реАрдВ рд╕реЗрдЯ рд╣реИред

рдЦрд┐рдбрд╝рдХреА рдХрд╛ рдЖрдХрд╛рд░
рдкрд╕рдВрджреАрджрд╛ рд╡рд┐рдВрдбреЛ рдЖрдХрд╛рд░ рд╕реЗрдЯ рдХрд░реЗрдВ, рдпрд╣ рдлреЙрд░реНрдо рдЪреМрдбрд╝рд╛рдИxрдКрдВрдЪрд╛рдИ рдпрд╛ рд╡реАрдбрд┐рдпреЛ рдЖрдХрд╛рд░ рдХреА рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реЛ рд╕рдХрддреА рд╣реИ
рд╕рдВрдХреНрд╖реЗрдкрд╛рдХреНрд╖рд░ред рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рддреЛ рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЗрдирдкреБрдЯ рд╡реАрдбрд┐рдпреЛ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рдШрдЯрд╛ рджреЗрддрд╛ рд╣реИ
рдкрд╣рд▓реВ рдЕрдиреБрдкрд╛рдд рдХреЗ рдЕрдиреБрд╕рд╛рд░. рдЕрдзрд┐рдХрддрд░ рдкреНрд░рдпреЛрдЧ рдпреЛрдЧреНрдп рдЬрдм рдХреЛрдИ рдЦрд┐рдбрд╝рдХреА рдирд╣реАрдВ рд╕реЗрдЯ рдирд╣реАрдВ рд╣реИред

рдЙрджрд╛рд╣рд░рдг

рдУрдкрдирдЬреАрдПрд▓ рд░реЗрдВрдбрд░рд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрд╕рдбреАрдПрд▓ рд╡рд┐рдВрдбреЛ рдкрд░ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдЪрд▓рд╛рдПрдВ:

ffmpeg -i INPUT -f opengl "рд╡рд┐рдВрдбреЛ рд╢реАрд░реНрд╖рдХ"

рдХреЗрдВрджреНрд░
рдУрдПрд╕рдПрд╕ (рдУрдкрди рд╕рд╛рдЙрдВрдб рд╕рд┐рд╕реНрдЯрдо) рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдирд╛рдбрд╝реА
рдкрд▓реНрд╕рдСрдбрд┐рдпреЛ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдЗрд╕ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ FFmpeg рдХреЛ "--enable-libpulse" рдХреЗ рд╕рд╛рде рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

PulseAudio рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИhttp://www.pulseaudio.org>

рдСрдкреНрд╢рдВрд╕

рд╕рд░реНрд╡рд░
IP рдкрддреЗ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ PulseAudio рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рд░реНрд╡рд░
рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдирд╛рдо
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдЬреЛ PulseAudio рд╕рдХреНрд░рд┐рдп рдХреНрд▓рд╛рдЗрдВрдЯ рджрд┐рдЦрд╛рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛, рджреНрд╡рд╛рд░рд╛
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдпрд╣ "LIBAVFORMAT_IDENT" рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реИред

рд╕реНрдЯреНрд░реАрдо_рдирд╛рдо
рдзрд╛рд░рд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ PulseAudio рд╕рдХреНрд░рд┐рдп рд╕реНрдЯреНрд░реАрдо рджрд┐рдЦрд╛рддреЗ рд╕рдордп рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЖрдЙрдЯрдкреБрдЯ рдирд╛рдо рдкрд░ рд╕реЗрдЯ рд╣реИред

рдпреБрдХреНрддрд┐
рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рд╡рд╛рдЗрд╕ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ. рдЙрдкрд▓рдмреНрдз рди рдХрд░рд╛рдП рдЬрд╛рдиреЗ рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдЙрдЯрдкреБрдЯ рдХреА рд╕реВрдЪреА
рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдХрдорд╛рдВрдб рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдкреИрдХреНрдЯрд▓реА рд╕реВрдЪреА рдбреВрдм.

рдмрдлрд░ рдЖрдХрд╛рд░
рдмрдлрд╝рд░_рдЕрд╡рдзрд┐
рдкрд▓реНрд╕рдСрдбрд┐рдпреЛ рдмрдлрд╝рд░ рдХреЗ рдЖрдХрд╛рд░ рдФрд░ рдЕрд╡рдзрд┐ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░реЗрдВред рдПрдХ рдЫреЛрдЯрд╛ рдмрдлрд░ рдЕрдзрд┐рдХ рджреЗрддрд╛ рд╣реИ
рдирд┐рдпрдВрддреНрд░рдг, рд▓реЗрдХрд┐рди рдЕрдзрд┐рдХ рд▓рдЧрд╛рддрд╛рд░ рдЕрджреНрдпрддрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдмрдлрд░ рдЖрдХрд╛рд░ рдЬрдмрдХрд┐ рдмрд╛рдЗрдЯреНрд╕ рдореЗрдВ рдЖрдХрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдмрдлрд╝рд░_рдЕрд╡рдзрд┐ рдореЗрдВ рдЕрд╡рдзрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ
рдорд┐рд▓реАрд╕реЗрдХреЗрдВрдбред

рдЬрдм рджреЛрдиреЛрдВ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рддреЛ рдЙрдЪреНрдЪрддрдо рдореВрд▓реНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЕрд╡рдзрд┐ рд╣реИ)ред
рд╕реНрдЯреНрд░реАрдо рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрд╛рдЗрдЯреНрд╕ рдореЗрдВ рдкреБрдирд░реНрдЧрдгрдирд╛ рдХреА рдЧрдИ)ред рдпрджрд┐ рд╡реЗ 0 рдкрд░ рд╕реЗрдЯ рд╣реИрдВ (рдЬреЛ рд╣реИ
рдбрд┐рдлрд╝реЙрд▓реНрдЯ), рдбрд┐рд╡рд╛рдЗрд╕ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкрд▓реНрд╕рдСрдбрд┐рдпреЛ рдЕрд╡рдзрд┐ рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ
рдкрд▓реНрд╕рдСрдбрд┐рдпреЛ рдиреЗ рдмрдлрд╝рд░ рдЕрд╡рдзрд┐ рдХреЛ рд▓рдЧрднрдЧ 2 рд╕реЗрдХрдВрдб рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ред

рдкреНрд░реАрдмрдлрд╝
рдмрд╛рдЗрдЯреНрд╕ рдореЗрдВ рдкреНрд░реА-рдмрдлрд╝рд░рд┐рдВрдЧ рдЖрдХрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред рд╕рд░реНрд╡рд░ рдкрд░ рд╕реЗ рдкрд╣рд▓реЗ рдкреНрд▓реЗрдмреИрдХ рдкреНрд░рд╛рд░рдВрдн рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ
рдХрдо рд╕реЗ рдХрдо рдкреНрд░реАрдмрдлрд╝ рдмрд╛рдЗрдЯреНрд╕ рдмрдлрд╝рд░ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ. рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рд╛рд░рдВрдн рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
рдХреЗ рд╕рдорд╛рди рдореВрд▓реНрдп рдкрд░ рдмрдлрд░ рдЖрдХрд╛рд░ or рдмрдлрд╝рд░_рдЕрд╡рдзрд┐ (рдЬреЛ рднреА рдмрдбрд╝рд╛ рд╣реЛ)ред

minreq
рдмрд╛рдЗрдЯреНрд╕ рдореЗрдВ рдиреНрдпреВрдирддрдо рдЕрдиреБрд░реЛрдз рдЖрдХрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред рд╕рд░реНрд╡рд░ рдЗрд╕рд╕реЗ рдХрдо рдХрд╛ рдЕрдиреБрд░реЛрдз рдирд╣реАрдВ рдХрд░рддрд╛ minreq
рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗ рдмрд╛рдЗрдЯреНрд╕, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рддрдм рддрдХ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдмрдлрд░ рдЕрдзрд┐рдХ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдореБрдХреНрдд рди рд╣реЛ рдЬрд╛рдП
рдПрдХ рдмрд╛рд░ рдореЗрдВ рдмрд╛рдЗрдЯреНрд╕. рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЛ рд╕реЗрдЯ рди рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИ, рдЬреЛ рдЗрд╕реЗ рдкреНрд░рд╛рд░рдВрдн рдХрд░ рджреЗрдЧрд╛
рдПрдХ рдорд╛рди рдЬрд┐рд╕реЗ рд╕рд░реНрд╡рд░ рджреНрд╡рд╛рд░рд╛ рд╕рдордЭрджрд╛рд░ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЙрджрд╛рд╣рд░рдг

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рд░реНрд╡рд░ рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдлрд╝рд╛рдЗрд▓ рдЪрд▓рд╛рдПрдВ:

ffmpeg -i INPUT -f рдкрд▓реНрд╕ "рд╕реНрдЯреНрд░реАрдо рдирд╛рдо"

SDL
рдПрд╕рдбреАрдПрд▓ (рд╕рд┐рдВрдкрд▓ рдбрд╛рдпрд░реЗрдХреНрдЯрдореАрдбрд┐рдпрд╛ рд▓реЗрдпрд░) рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдпрд╣ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд┐рд╕реА рдХреЛ рдПрд╕рдбреАрдПрд▓ рд╡рд┐рдВрдбреЛ рдореЗрдВ рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рджрд┐рдЦрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдХреЗрд╡рд▓ рдПрдХ рдПрд╕рдбреАрдПрд▓ рд╡рд┐рдВрдбреЛ
рдкреНрд░рддрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдЖрд╡реЗрджрди.

рдЗрд╕ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╕рдордп рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ libsdl рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛
рдЖрдкрдХрд╛ рдмрдирд╛рдпрд╛ред

рдПрд╕рдбреАрдПрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдЬрд╛рдВрдЪреЗрдВ:http://www.libsdl.org/>

рдСрдкреНрд╢рдВрд╕

рд╡рд┐рдВрдбреЛ_рд╢реАрд░реНрд╖рдХ
рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдПрд╕рдбреАрдПрд▓ рд╡рд┐рдВрдбреЛ рд╢реАрд░реНрд╖рдХ рд╕реЗрдЯ рдХрд░реЗрдВ
рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдЖрдЗрдХрди_рд╢реАрд░реНрд╖рдХ
рдкреНрд░рддрд┐рд╖реНрдард┐рдд рдПрд╕рдбреАрдПрд▓ рд╡рд┐рдВрдбреЛ рдХрд╛ рдирд╛рдо рд╕реЗрдЯ рдХрд░реЗрдВ, рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рддреЛ рдЗрд╕реЗ рдЙрд╕реА рдорд╛рди рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
of рд╡рд┐рдВрдбреЛ_рд╢реАрд░реНрд╖рдХ.

рдЦрд┐рдбрд╝рдХреА рдХрд╛ рдЖрдХрд╛рд░
рдПрд╕рдбреАрдПрд▓ рд╡рд┐рдВрдбреЛ рдХрд╛ рдЖрдХрд╛рд░ рд╕реЗрдЯ рдХрд░реЗрдВ, рдлреЙрд░реНрдо рдХреА рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЪреМрдбрд╛рдИxрдКрдВрдЪрд╛рдИ рдпрд╛ рдПрдХ рд╡реАрдбрд┐рдпреЛ рдЖрдХрд╛рд░
рд╕рдВрдХреНрд╖реЗрдкрд╛рдХреНрд╖рд░ред рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рддреЛ рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЗрдирдкреБрдЯ рд╡реАрдбрд┐рдпреЛ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рдШрдЯрд╛ рджреЗрддрд╛ рд╣реИ
рдкрд╣рд▓реВ рдЕрдиреБрдкрд╛рдд рдХреЗ рдЕрдиреБрд╕рд╛рд░.

window_fullscreen
рдЧреИрд░-рд╢реВрдиреНрдп рдорд╛рди рдкреНрд░рджрд╛рди рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рдлрд╝реБрд▓рд╕реНрдХреНрд░реАрди рдореЛрдб рд╕реЗрдЯ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рд╢реВрдиреНрдп рд╣реИ.

рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдЖрдЬреНрдЮрд╛рдУрдВ

рдбрд┐рд╡рд╛рдЗрд╕ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдИ рдЧрдИ рд╡рд┐рдВрдбреЛ рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдЖрджреЗрд╢ рджреЗрддрд╛ рд╣реИред

q, ESC
рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рддреБрд░рдВрдд рдмрдВрдж рдХрд░реЗрдВ.

рдЙрджрд╛рд╣рд░рдг

рдирд┐рдореНрди рдЖрджреЗрд╢ рджрд┐рдЦрд╛рддрд╛ рд╣реИ ffmpeg рдЖрдЙрдЯрдкреБрдЯ рдПрдХ SDL рд╡рд┐рдВрдбреЛ рд╣реИ, рдЬреЛ рдЗрд╕рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рдмрд╛рдзреНрдп рдХрд░рддреА рд╣реИ
рдХреНрдпреВрд╕реАрдЖрдИрдПрдл рдкреНрд░рд╛рд░реВрдк:

ffmpeg -i INPUT -vcodec rawvideo -pix_fmt yuv420p -window_size qcif -f sdl "SDL рдЖрдЙрдЯрдкреБрдЯ"

рд╕рдВрдбрд┐рдпреЛ
SNDIO рдСрдбрд┐рдпреЛ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

xv
XV (XVideo) рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред

рдпрд╣ рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд┐рд╕реА рдХреЛ рдПрдХреНрд╕ рд╡рд┐рдВрдбреЛ рд╕рд┐рд╕реНрдЯрдо рд╡рд┐рдВрдбреЛ рдореЗрдВ рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рджрд┐рдЦрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдСрдкреНрд╢рдВрд╕

display_name
рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдбрд┐рд╕реНрдкреНрд▓реЗ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ, рдЬреЛ рдбрд┐рд╕реНрдкреНрд▓реЗ рдФрд░ рд╕рдВрдЪрд╛рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ
рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ рдбреЛрдореЗрди.

рдкреНрд░рджрд░реНрд╢рди рдирд╛рдо рдпрд╛ DISPLAY рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдореЗрдЬрдмрд╛рдирдирд╛рдо[:рд╕рдВрдЦреНрдпрд╛[.рд╕реНрдХреНрд░реАрди_рдирдВрдмрд░]]ред

рдореЗрдЬрдмрд╛рдирдирд╛рдо рд╣реЛрд╕реНрдЯ рдорд╢реАрди рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕ рдкрд░ рдбрд┐рд╕реНрдкреНрд▓реЗ рднреМрддрд┐рдХ рд░реВрдк рд╕реЗ рд╣реИ
рдЬреБрдбрд╝рд╛ рд╣реБрдЖред рд╕рдВрдЦреНрдпрд╛ рдЙрд╕ рд╣реЛрд╕реНрдЯ рдорд╢реАрди рдкрд░ рдбрд┐рд╕реНрдкреНрд▓реЗ рд╕рд░реНрд╡рд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред
рд╕реНрдХреНрд░реАрди_рдирдВрдмрд░ рдЙрд╕ рд╕рд░реНрд╡рд░ рдкрд░ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╕реНрдХреНрд░реАрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред

рдпрджрд┐ рдЕрдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИ, рддреЛ рдпрд╣ DISPLAY рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЗ рдорд╛рди рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛрддрд╛ рд╣реИред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, "рдбреБрдЕрд▓-рд╣реЗрдбреЗрдб:0.1" рдорд╢реАрди рдкрд░ рдбрд┐рд╕реНрдкреНрд▓реЗ 1 рдХреА рд╕реНрдХреНрд░реАрди 0 рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдЧрд╛
рдирд╛рдо рджрд┐рдпрд╛ рдЧрдпрд╛ ``рджреЛ-рд╕рд┐рд░ рд╡рд╛рд▓рд╛''ред

рдкреНрд░рджрд░реНрд╢рди рдирд╛рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП X11 рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ
рдкреНрд░рд╛рд░реВрдк.

window_id
рдЬрдм рдЧреИрд░-рд╢реВрдиреНрдп рдорд╛рди рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдирдИ рд╡рд┐рдВрдбреЛ рдирд╣реАрдВ рдмрдирд╛рддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдореМрдЬреВрджрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ
рдПрдХ рдХреЗ рд╕рд╛рде рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ window_id. рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдпрд╣ рд╡рд┐рдХрд▓реНрдк рд╢реВрдиреНрдп рдкрд░ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдмрдирд╛рддрд╛ рд╣реИ
рдЗрд╕рдХреА рдЕрдкрдиреА рдЦрд┐рдбрд╝рдХреА.

рдЦрд┐рдбрд╝рдХреА рдХрд╛ рдЖрдХрд╛рд░
рдмрдирд╛рдИ рдЧрдИ рд╡рд┐рдВрдбреЛ рдХрд╛ рдЖрдХрд╛рд░ рд╕реЗрдЯ рдХрд░реЗрдВ, рдлреЙрд░реНрдо рдХреА рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЪреМрдбрд╛рдИxрдКрдВрдЪрд╛рдИ рдпрд╛ рдПрдХ рд╡реАрдбрд┐рдпреЛ рдЖрдХрд╛рд░
рд╕рдВрдХреНрд╖реЗрдкрд╛рдХреНрд╖рд░ред рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рддреЛ рдпрд╣ рдЗрдирдкреБрдЯ рд╡реАрдбрд┐рдпреЛ рдХреЗ рдЖрдХрд╛рд░ рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛрддрд╛ рд╣реИред рдЕрд╡рд╣реЗрд▓рдирд╛ рдХрд░рдирд╛
рдХрдм window_id рд╕реЗрдЯ рд╣реИред

рд╡рд┐рдВрдбреЛ_x
window_y
рдирд┐рд░реНрдорд┐рдд рд╡рд┐рдВрдбреЛ рдХреЗ рд▓рд┐рдП X рдФрд░ Y рд╡рд┐рдВрдбреЛ рдСрдлрд╝рд╕реЗрдЯ рд╕реЗрдЯ рдХрд░реЗрдВред рд╡реЗ рджреЛрдиреЛрдВ 0 рдкрд░ рд╕реЗрдЯ рд╣реИрдВ
рдЧрд▓рддреА рдХрд░рдирд╛ред рд╡рд┐рдВрдбреЛ рдореИрдиреЗрдЬрд░ рджреНрд╡рд╛рд░рд╛ рдорд╛рдиреЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЬрдм рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд┐рдпрд╛ рдЧрдпрд╛ window_id is
рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рд╣реИ.

рд╡рд┐рдВрдбреЛ_рд╢реАрд░реНрд╖рдХ
рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рддреЛ рд╡рд┐рдВрдбреЛ рд╢реАрд░реНрд╖рдХ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдХрд░реЗрдВ
рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ред рдЬрдм рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд┐рдпрд╛ рдЧрдпрд╛ window_id рд╕реЗрдЯ рд╣реИред

XVideo рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рджреЗрдЦреЗрдВhttp://www.x.org/>.

рдЙрджрд╛рд╣рд░рдг

┬╖ рд╡реАрдбрд┐рдпреЛ рдЗрдирдкреБрдЯ рдХреЛ рдбрд┐рдХреЛрдб, рдкреНрд░рджрд░реНрд╢рд┐рдд рдФрд░ рдПрдирдХреЛрдб рдХрд░реЗрдВ ffmpeg рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ:

ffmpeg -i рдЗрдирдкреБрдЯ рдЖрдЙрдЯрдкреБрдЯ -f xv рдбрд┐рд╕реНрдкреНрд▓реЗ

┬╖ рдЗрдирдкреБрдЯ рд╡реАрдбрд┐рдпреЛ рдХреЛ рдХрдИ X11 рд╡рд┐рдВрдбреЛ рдкрд░ рдбрд┐рдХреЛрдб рдФрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ:

ffmpeg -i INPUT -f xv рд╕рд╛рдорд╛рдиреНрдп -vf рдирдХрд╛рд░рд╛ -f xv рдирдХрд╛рд░рд╛

onworks.net рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ ffmpeg-devices рдХрд╛ рдСрдирд▓рд╛рдЗрди рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ


рдлреНрд░реА рд╕рд░реНрд╡рд░ рдФрд░ рд╡рд░реНрдХрд╕реНрдЯреЗрд╢рди

рд╡рд┐рдВрдбреЛрдЬ рдФрд░ рд▓рд╛рдЗрдиреЗрдХреНрд╕ рдПрдк рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ

рд▓рд┐рдирдХреНрд╕ рдХрдорд╛рдВрдб

Ad