video.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Tue, 14 Aug 2012 16:19:43 +0300
changeset 1358 7a93143dbf53
parent 1355 22bbad2a94db
child 1359 9ea67efc1fac
permissions -rw-r--r--
Synchronise video and audio streams.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1308
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     1
.. -*- coding: utf-8; -*-
1334
9bf0d5a1f0cf Include common header with quick links.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1309
diff changeset
     2
.. include:: HEADER.rst
1308
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     3
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     4
========
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     5
 Video.
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     6
========
1346
a2fbf50a43f4 Fix: Has no 'contents::' directive.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
     7
.. contents::
1308
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     8
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     9
Players for linux?
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    10
==================
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    11
::
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    12
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    13
  $ sudo apt-get install vlc
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    14
  $ sudo apt-get install mplayer
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    15
1355
22bbad2a94db Determine video format.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
    16
Determine video format.
22bbad2a94db Determine video format.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
    17
=======================
22bbad2a94db Determine video format.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
    18
::
22bbad2a94db Determine video format.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
    19
22bbad2a94db Determine video format.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
    20
  $ file $VIDEO
22bbad2a94db Determine video format.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
    21
  $ mplayer -frames 0 -vo null -ao null -identify $VIDEO
22bbad2a94db Determine video format.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
    22
  $ mediainfo $VIDEO
22bbad2a94db Determine video format.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
    23
22bbad2a94db Determine video format.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
    24
See:
22bbad2a94db Determine video format.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
    25
22bbad2a94db Determine video format.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
    26
  http://en.gentoo-wiki.com/wiki/Show_Video_Codecs
22bbad2a94db Determine video format.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
    27
                Show Video Codecs
22bbad2a94db Determine video format.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1346
diff changeset
    28
1309
0ea0a71c226d 3d film.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1308
diff changeset
    29
3d film.
0ea0a71c226d 3d film.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1308
diff changeset
    30
========
0ea0a71c226d 3d film.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1308
diff changeset
    31
::
0ea0a71c226d 3d film.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1308
diff changeset
    32
0ea0a71c226d 3d film.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1308
diff changeset
    33
  $ mplayer -vf stereo3d=side_by_side_left_first:anaglyph_red_cyan_color -vo gl $VIDEO
0ea0a71c226d 3d film.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1308
diff changeset
    34
  $ mplayer -vf stereo3d=above_below_left_first:anaglyph_red_cyan_color -vo gl $VIDEO
0ea0a71c226d 3d film.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1308
diff changeset
    35
0ea0a71c226d 3d film.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1308
diff changeset
    36
See ``man 1 mplayer``.
0ea0a71c226d 3d film.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1308
diff changeset
    37
1308
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    38
Web camera.
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    39
===========
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    40
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    41
To view image::
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    42
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    43
  $ mplayer tv://
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    44
  $ mplayer tv:// -tv driver=v4l2:width=640:height=480:fps=15:device=/dev/video0
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    45
  $ cheese
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    46
  $ camorama
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    47
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    48
See:
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    49
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    50
  http://wiki.debian.org/Webcam
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    51
                Debian wiki.
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    52
1358
7a93143dbf53 Synchronise video and audio streams.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1355
diff changeset
    53
Synchronise video and audio streams.
7a93143dbf53 Synchronise video and audio streams.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1355
diff changeset
    54
====================================
7a93143dbf53 Synchronise video and audio streams.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1355
diff changeset
    55
::
7a93143dbf53 Synchronise video and audio streams.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1355
diff changeset
    56
7a93143dbf53 Synchronise video and audio streams.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1355
diff changeset
    57
  $ mencoder -delay 0.7 -oac copy -ovc copy in.avi -o out.avi
7a93143dbf53 Synchronise video and audio streams.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1355
diff changeset
    58
  $ mencoder -mc 0 -of lavf -lavfopts format=mp4 -oac lavc -ovc lavc \
7a93143dbf53 Synchronise video and audio streams.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1355
diff changeset
    59
    -lavcopts aglobal=1:vglobal=1:acodec=libmp3lame:abitrate=128:vcodec=mpeg4:vbitrate=500:keyint=200
7a93143dbf53 Synchronise video and audio streams.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1355
diff changeset
    60
    -vf scale=-3:240,crop=320:240,harddup -af lavcresample=44100 -o out.mp4 in.mp4
7a93143dbf53 Synchronise video and audio streams.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1355
diff changeset
    61
7a93143dbf53 Synchronise video and audio streams.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1355
diff changeset
    62
1308
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    63
How convert .3gp to .avi(mpeg)?
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    64
===============================
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    65
::
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    66
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    67
  $ sudo apt-get install ffmpeg
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    68
  $ ffmpeg -i test.3gp -f mpegvideo -ar 44100 -ac 1 -acodec mp3 test.mpg
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    69
  $ for i in `ls -1 *.3gp | cut -d. -f1`; do ffmpeg -y -i $i.3gp -sameq -f mpegvideo -s cif -r 25 -ar 32000 -ac 1 mpegs/$i.mpg; done
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    70
  $ ffmpeg -i video-in.3gp -b 250 -s 160×120 -r 15 -f avi -an video-out.avi
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    71
  $ mencoder -oac mp3lame -ovc lavc -o video-out.avi -vf pp,2xsai,scale video-in.3gp
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    72
  $ mencoder -o video-in.avi -vf pp,2xsai,scale -ovc lavc video-out.3gp
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    73
  $ mencoder -o video-in.avi -vf rotate=2 -oac pcm -ovc divx4 video-out.3gp
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    74
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    75
You need to compile FFmpeg with AMR support (--enable-amr_nb --enable-amr_wb).
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    76
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    77
AMR WB FLOAT NOTICE ! Make sure you have downloaded TS26.204
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    78
V5.1.0 from
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    79
http://www.3gpp.org/ftp/Specs/archive/26_series/26.204/26204-510.zip
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    80
and extracted the source to libavcodec/amrwb_float
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    81
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    82
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    83
AMR NB FLOAT NOTICE ! Make sure you have downloaded TS26.104
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    84
REL-5 V5.1.0 from
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    85
http://www.3gpp.org/ftp/Specs/latest/Rel-5/26_series/26104-5??.zip
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    86
and extracted the source to libavcodec/amr_float
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    87
and if u try this on an alpha, u may need to change Word32 to int in
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    88
amr/typedef.h
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    89
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    90
Video editor.
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    91
=============
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    92
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    93
Cinelerra.
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    94
----------
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    95
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    96
Cinelerra is a prosumer non-linear video editing system. It is designed for the GNU/Linux operating
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    97
system.
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    98
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    99
  http://cinelerra.org
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   100
                Home page.
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   101
  http://ru.wikipedia.org/wiki/Cinelerra
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   102
                Wikipedia page.
879d342c6e37 Web camera.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   103