Strona 2 z 4

: 14 maja 2009, 15:47
autor: bolo
Odpowiem Tobie "na gorąco" ponieważ nie mam chwilowo czasu sprawdzić działanie drugiego rodzaju kodeka. Na to trzeba trochę czasu, którego akurat teraz mi brak. Nie szkodzi, co się odwlecze...
Widzę, że nieobcy Ci ten temat obróbki wideo. Szczerze mówiąc liczyłem na to, że ktoś taki się odezwie i udzieli konkretnej pomocy. Dzięki ;-)
Teraz pytanie:
- przełącznik threads=2
odnosi się do obsługi konwersji z wykorzystaniem 2 rdzeni procesora?
- przełącznik trell:mbd=2:sc_threshold=1000000000:cgop
za co odpowiada ten?

: 14 maja 2009, 16:38
autor: ilin
Powinienem Cie zagonić do czytania manuala od mencodera.
Co jak co ale co oznacza który parametr powinieneś sobie wyszukać.

Z man mencoder

Kod: Zaznacz cały

 trell
              Kwantyzacja  przeszukiwana  kratowo.   Funkcja ta znajdzie opty-
              malne kodowanie dla każdego bloku 8x8.   Kwantyzacja  przeszuki-
              wana  kratowo  jest po prostu dobrą optymalizacją, w sensie PSNR
              kontra  bitrate  (Zakładając,  że  nie  będzie  żadnych   błędów
              zaokrągleń mogących powstać w skutek działania IDCT, czyli oczy-
              wiście nie w tym przypadku.).  Po prostu znajduje blok dla mini-
              malnej ilości błędów i bitów*lambda.
                 lambda
                      zmienna uzależniona od parametru kwantyzacji (QP)
                 bits
                      ilość bitów potrzebna do zakodowania bloku
                 error
                      suma kwadratów błędów kwantyzacji

Kod: Zaznacz cały

mbd=<0-2>
              Algorytm  decyzyjny  makrobloku  (tryb wysokiej jakości), koduje
              każdy makroblok we wszystkich trybach i wybiera  ten  najlepszy.
              Metoda  ta jest powolna, ale jej rezultatem jest lepsza jakość i
              mniejsza objętość pliku.
                 0    Korzysta z mbcmp (domyślne).
                 1    Wybiera tryb MB, który wymaga najmniejszej ilości  bitów
                      (=vhq).
                 2    Wybiera  tryb  MB,  który  powoduje najmniejsze znieksz-
                      tałcenia tempa.

Kod: Zaznacz cały

sc_threshold=<-1000000000-1000000000>
              Próg do wykrywania  zmiany  sceny.   Libavcodec  wstawia  klatkę
              kluczową  jeżeli wykryje zmianę sceny.  Tą opcją możesz określić
              czułość tej detekcji.   -1000000000  oznacza,  że  zmiana  sceny
              wykrywana  jest  w  każdej  klatce, 1000000000 oznacza, że żadne
              zmiany nie będą wykryte (domyślnie: 0)
Dla testów wcale nie trzeba wiele czasu.

Odcinasz sobie np jedno czy pieciominutowy kawalek filmu źródlowego (opcja -endpos ) i na nim testujesz poszczególne skladnie polecenia.

: 15 maja 2009, 18:22
autor: bolo
ilin pisze:Powinienem Cie zagonić do czytania manuala od mencodera.
Co jak co ale co oznacza który parametr powinieneś sobie wyszukać.
Pojawiły się opcje, których wcześniej nie używałeś stąd moje pytanie, bo czyż nie lepiej skierować je do źródła? Zapomniałem o istnieniu tego manuala. Trudno mi się w nim tak w ogóle połapać ponieważ jego rozmiar jest imponujący, ponad 7tys. stron.
Przepraszam za kłopot.

Teraz następny problem z ostatnim kodowaniem lavc. Oto rezultat z konsoli:

Kod: Zaznacz cały

~$ mencoder MOVIE.VRO -oac copy -o -ovc lavc -ofps 25 -ffourcc DX50 -lavcopts vcodec=mpeg4:trell:mbd=2:sc_threshold=1000000000:cgop:vbitrate=830:vpass=1 
MEncoder dev-SVN-r26940 (C) 2000-2008 MPlayer Team
CPU: Intel(R) Pentium(R) Dual  CPU  T2370  @ 1.73GHz (Family: 6, Model: 15, Stepping: 13)
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection.
success: format: 0  data: 0x0 - 0xd8dd5000
MPEG-PS file format detected.
VIDEO:  MPEG2  720x576  (aspect 2)  25.000 fps  4505.6 kbps (563.2 kbyte/s)
[V] filefmt:2  fourcc:0x10000002  size:720x576  fps:25.000  ftime:=0.0400

No video encoder (-ovc) selected. Select one (see -ovc help).

Exiting...
marek@debian:~$ -o /dev/null ] filefmt:2  fourcc:0x10000002  size:720x576  fps:25.000  ftime:=0.0400

No video encoder (-ovc) selected. Select one (see -ovc help).
Nie mogę rozwikłać czego brakuje? Zainstalowane mam kodeki: libavcodec51 oraz libavcodec-dev. Czyżby chodziło o jeszcze inny?

: 15 maja 2009, 19:04
autor: ilin

Kod: Zaznacz cały

No video encoder (-ovc) 

To odpowiedź.

A dokładnie
mencoder MOVIE.VRO -oac copy -o -ovc lavc

Co to -o robi w tym miejscu?

-o oznacza output czyli wskazanie na plik wyjśściowy.

: 15 maja 2009, 20:42
autor: bolo
ilin pisze:

Kod: Zaznacz cały

No video encoder (-ovc) 

To odpowiedź.
Tzn. co należy doinstalować?
Co to -o robi w tym miejscu?

-o oznacza output czyli wskazanie na plik wyjśściowy.
Sam kombinowałem bo nie działało:

Kod: Zaznacz cały

:~$ mencoder MOVIE.VRO  -oac copy -aid 1 -ovc lavc -ofps 25 -ffourcc DX50 -lavcopts threads=2:vcodec=mpeg4:trell:mbd=2:sc_threshold=1000000000:cgop:vbitrate=826:aspect=4/3:vpass=1 
MEncoder dev-SVN-r26940 (C) 2000-2008 MPlayer Team
CPU: Intel(R) Pentium(R) Dual  CPU  T2370  @ 1.73GHz (Family: 6, Model: 15, Stepping: 13)
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection.

Exiting... (No output file specified, please see the -o option.)
marek@debian:~$ -o /dev/null ] filefmt:2  fourcc:0x10000002  size:720x576  fps:25.000  ftime:=0.0400
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
==========================================================================
Opening video decoder: [mpegpes] MPEG 1/2 Video passthrough
VDec: vo config request - 720 x 576 (preferred colorspace: Mpeg PES)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
The selected video_out device is incompatible with this codec.
Try appending the scale filter to your filter list,
e.g. -vf spp,scale instead of -vf spp.
VDecoder init failed :(
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffmpeg2] vfm: ffmpeg (FFmpeg MPEG-2)
==========================================================================
Forcing output FourCC to 30355844 [DX50].
VDec: vo config request - 720 x 576 (preferred colorspace: Planar YV12)
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.33:1 - prescaling to correct movie aspect.
videocodec: libavcodec (720x576 fourcc=30355844 [DX50])
[VE_LAVC] High quality encoding selected (non-realtime)!
2pass failed: filename=divx2pass.log
FATAL: Cannot initialize video driver.

Exiting...

: 15 maja 2009, 20:48
autor: ilin
Nie umiesz skopiować mojgo polecenia tylko kombinujesz własne i to źle :mrgreen:

; to nie jest opcja mencodera.
To znak basha który łaczy dwa polecenia w ten sposob że jak pierwsze zakończy działanie to dopiero uruchamia drugie.

Abyś dla dwóch przebiegów dwa razy nie musiał klepać polecenia tylko jak skończy pierwszy to zaczyna drugi.

: 15 maja 2009, 20:50
autor: bolo

Kod: Zaznacz cały

~$ mencoder -ovc help
MEncoder dev-SVN-r26940 (C) 2000-2008 MPlayer Team
CPU: Intel(R) Pentium(R) Dual  CPU  T2370  @ 1.73GHz (Family: 6, Model: 15, Stepping: 13)
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection.

Available codecs:
   copy     - frame copy, without re-encoding. Doesn't work with filters.
   frameno  - special audio-only file for 3-pass encoding, see DOCS.
   raw      - uncompressed video. Use fourcc option to set format explicitly.
   nuv      - nuppel video
   lavc     - libavcodec codecs - best quality!
   vfw      - VfW DLLs, read DOCS/HTML/en/encoding-guide.html.
   qtvideo  - QuickTime DLLs, currently only SVQ1/3 are supported.
   libdv    - DV encoding with libdv v0.9.5
   xvid     - XviD encoding
   x264     - H.264 encoding
lavc jak widać mam zainstalowany. Brakuje czegoś jeszcze?
Co to -o robi w tym miejscu?

-o oznacza output czyli wskazanie na plik wyjśściowy.
Sam kombinowałem bo nie działało:

Kod: Zaznacz cały

:~$ mencoder MOVIE.VRO  -oac copy -aid 1 -ovc lavc -ofps 25 -ffourcc DX50 -lavcopts threads=2:vcodec=mpeg4:trell:mbd=2:sc_threshold=1000000000:cgop:vbitrate=826:aspect=4/3:vpass=1 
MEncoder dev-SVN-r26940 (C) 2000-2008 MPlayer Team
CPU: Intel(R) Pentium(R) Dual  CPU  T2370  @ 1.73GHz (Family: 6, Model: 15, Stepping: 13)
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection.

Exiting... (No output file specified, please see the -o option.)
marek@debian:~$ -o /dev/null ; mencoder  MOVIE.VRO -oac copy -aid 1 -ovc lavc -ofps 25 -ffourcc DX50 -lavcopts threads=2:vcodec=mpeg4:trell:mbd=2:sc_threshold=1000000000:cgop:vbitrate=826:aspect=4/3:vpass=2 -oac mp3lame -lameopts cbr:br=96 -o film.avi
bash: -o: command not found
MEncoder dev-SVN-r26940 (C) 2000-2008 MPlayer Team
CPU: Intel(R) Pentium(R) Dual  CPU  T2370  @ 1.73GHz (Family: 6, Model: 15, Stepping: 13)
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection.
success: format: 0  data: 0x0 - 0xd8dd5000
MPEG-PS file format detected.

Too many video packets in the buffer: (4096 in 8263195 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.
MPEG: No audio stream found -> no sound.
VIDEO:  MPEG2  720x576  (aspect 2)  25.000 fps  4505.6 kbps (563.2 kbyte/s)
[V] filefmt:2  fourcc:0x10000002  size:720x576  fps:25.000  ftime:=0.0400
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
==========================================================================
Opening video decoder: [mpegpes] MPEG 1/2 Video passthrough
VDec: vo config request - 720 x 576 (preferred colorspace: Mpeg PES)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
The selected video_out device is incompatible with this codec.
Try appending the scale filter to your filter list,
e.g. -vf spp,scale instead of -vf spp.
VDecoder init failed :(
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffmpeg2] vfm: ffmpeg (FFmpeg MPEG-2)
==========================================================================
Forcing output FourCC to 30355844 [DX50].
VDec: vo config request - 720 x 576 (preferred colorspace: Planar YV12)
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.33:1 - prescaling to correct movie aspect.
videocodec: libavcodec (720x576 fourcc=30355844 [DX50])
[VE_LAVC] High quality encoding selected (non-realtime)!
2pass failed: filename=divx2pass.log
FATAL: Cannot initialize video driver.

Exiting...
[/quote]

: 15 maja 2009, 20:55
autor: ilin
Nic ci nie brakuje.
Składnia jest błedna.

Kombinuj dlaczego.
Podalem Ci wszystkie info.
Jak tego nie załapiesz to sie nie nauczysz.

: 15 maja 2009, 20:59
autor: bolo
ilin pisze:Nic ci nie brakuje.
Składnia jest błedna.

Kombinuj dlaczego.
Podalem Ci wszystkie info.
Jak tego nie załapiesz to sie nie nauczysz.
Ale to Ty podałeś mi taką składnię. Nie wychodzi, jak widać w logu ostatniego topika.

: 15 maja 2009, 21:03
autor: ilin
Przekopiuj skladnie dokladnie a nie obcinaj to nie będzie błędow. :mrgreen: