Python-mencoderは別のフォルダーにビデオを生成しません。
私はPythonを使用してmencoderを呼び出し、大量の画像を取得してビデオに変換しています。これに対して私がしているコードは次のとおりです。
def Video(self,X,Y,location):#generate a video from the images
location=location.replace('\\','/')
name='Slide.avi'
command = ('C:\Downloads\MPlayer-athlon-svn-34401\mencoder.exe',# location of mencoder
'mf://'+location+'/*.png',# location of the images
'-mf',
'type=png:w='+str(X)+':h='+str(Y)+':fps=25',#size of video and fps
'-ovc',
'lavc',
'-lavcopts',
'vcodec=ffv1',
'-oac',
'copy',
'-o',
location+'/'+name)#output
subprocess.check_call(command)
ここで、locationは、ビデオにまとめたいすべての画像を含むフォルダーです。これで、Pythonスクリプトが画像も含まれているフォルダーにある場合、これは問題なく機能し、ビデオを取得できます。しかし、場所が異なる場合、mencoderは単に空のビデオを表示します。なぜそうなるのかわかりません。私のPythonスクリプトがそのフォルダーにある場合、コードは機能しますが、別のフォルダーにある場合は機能しません。
私はmencoderの冗長をオンにしました、そしてこれはそれが成功したときに私が得るものです:
MEncoder Sherpya-SVN-r34401-4.6.2 (C) 2000-2011 MPlayer Team
Setting PATH to C:\Downloads\MPlayer-athlon-svn-34401\codecs
get_path('codecs.conf') -> 'C:\Users\Main/mplayer/codecs.conf'
Reading optional codecs config file C:\Users\Main/mplayer/codecs.conf: No such file or directory
Reading optional codecs config file /mingw/etc/mplayer/codecs.conf: No such file or directory
Using built-in default codecs.conf.
init_freetype
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
get_path('fonts') -> 'C:\Users\Main/mplayer/fonts'
Configuration: --extra-cflags=-I/c/Work/mplayer/live --extra-ldflags=-lws2_32 --prefix=/mingw --enable-static --enable-md5sum --enable-menu --enable-faac --enable-enca --enable-sdl --enable-caca --enable-gl --enable-freetype --enable-png --enable-mng --enable-jpeg --enable-gif --enable-tga --enable-mad --enable-tv --enable-theora --disable-vidix --disable-faac-lavc --disable-inet6 --flavor=athlon
WINSOCK2 init: 0
STREAM: [mf] mf://C:/Users/Main/Desktop/temp/*.png
STREAM: Description: Multiple files input
STREAM: Author: Benjamin Zores, Albeu
STREAM: Comment:
success: format: 16 data: 0x0 - 0x0
MF file format detected.
[mf] search expr: C:/Users/Main/Desktop/temp/*.png
[mf] number of files: 50 (200)
==> Found video stream: 0
VIDEO: [MPNG] 560x560 24bpp 25.000 fps 0.0 kbps ( 0.0 kbyte/s)
[V] filefmt:16 fourcc:0x474E504D size:560x560 fps:25.000 ftime:=0.0400
WINSOCK2 init: 0
WINSOCK2 init: 0
[file] File size is 0 bytes
STREAM: [file] C:/Users/Main/Desktop/temp/Slide.avi
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
[png @ 01235100]err{or,}_recognition separate: 2; 1
[png @ 01235100]err{or,}_recognition combined: 2; 196609
INFO: libavcodec init OK!
Selected video codec: [ffpng] vfm: ffmpeg (FFmpeg PNG)
==========================================================================
[ffmpeg] aspect_ratio: 0.000000
VDec: vo config request - 560 x 560 (preferred colorspace: RGB 24-bit)
Trying filter chain: expand lavc
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
SwScale params: -1 x -1 (-1=no scaling)
Trying filter chain: scale expand lavc
VDec: using RGB 24-bit as output csp (no 6)
Movie-Aspect is undefined - no prescaling applied.
VO Config (560x560->560x560,flags=0,'MPlayer',0x52474218)
SwScaler: reducing / aligning filtersize 1 -> 4
SwScaler: reducing / aligning filtersize 1 -> 4
SwScaler: reducing / aligning filtersize 1 -> 1
SwScaler: reducing / aligning filtersize 9 -> 8
[swscaler @ 01216d40]BICUBIC scaler, from rgb24 to yuv420p using MMX2
[swscaler @ 01216d40]560x560 -> 560x560
[swscaler @ 01216d40]lum srcW=560 srcH=560 dstW=560 dstH=560 xInc=65536 yInc=65536
[swscaler @ 01216d40]chr srcW=280 srcH=560 dstW=280 dstH=280 xInc=65536 yInc=131072
REQ: flags=0x401 req=0x0
REQ: flags=0x401 req=0x0
videocodec: libavcodec (560x560 fourcc=31564646 [FFV1])
[ffv1 @ 01235100]err{or,}_recognition separate: 1; 1
[ffv1 @ 01235100]err{or,}_recognition combined: 1; 65537
[ffv1 @ 01235100]Unsupported bit depth: 0
*** [scale] Allocating mp_image_t, 560x560x24bpp RGB packed, 940800 bytes
*** [lavc] Allocating mp_image_t, 560x560x12bpp YUV planar, 470400 bytes
*** [expand] Direct Rendering mp_image_t, 560x560x12bpp YUV planar, 470400 bytes
Unicode font: 773 glyphs.
Unicode font: 773 glyphs.
Muxer frame buffer sending 1 frame(s) to the muxer.
Writing header...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp header.
Writing header...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp header.
Pos: 0.0s 1f ( 1%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/14 D/B/S 0/0/0
*** [scale] Allocating mp_image_t, 560x560x24bpp RGB packed, 940800 bytes
Pos: 0.1s 2f ( 3%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/12 D/B/S 0/0/0
Pos: 0.1s 3f ( 5%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/11 D/B/S 0/0/0
Pos: 0.2s 4f ( 7%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/11 D/B/S 0/0/0
Pos: 0.2s 5f (10%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/10 D/B/S 0/0/0
Pos: 0.2s 6f (11%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/10 D/B/S 0/0/0
Pos: 0.3s 7f (14%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/10 D/B/S 0/0/0
Pos: 0.3s 8f (15%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/10 D/B/S 0/0/0
Pos: 0.4s 9f (18%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/10 D/B/S 0/0/0
Pos: 0.4s 10f (20%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/10 D/B/S 0/0/0
Pos: 0.4s 11f (21%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/10 D/B/S 0/0/0
Pos: 0.5s 12f (23%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/10 D/B/S 0/0/0
Pos: 0.5s 13f (25%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/10 D/B/S 0/0/0
Pos: 0.6s 14f (28%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/10 D/B/S 0/0/0
Pos: 0.6s 15f (30%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/10 D/B/S 0/0/0
Pos: 0.6s 16f (31%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/10 D/B/S 0/0/0
Pos: 0.7s 17f (34%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 0.7s 18f (36%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 0.8s 19f (37%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 0.8s 20f (40%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 0.8s 21f (41%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 0.9s 22f (43%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 0.9s 23f (46%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.0s 24f (47%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.0s 25f (50%) 0fps Trem: 0min 1mb A-V:0.000 [0:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.0s 26f (52%) 0fps Trem: 0min 1mb A-V:0.000 [5215:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.1s 27f (55%) 0fps Trem: 0min 1mb A-V:0.000 [5176:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.1s 28f (56%) 0fps Trem: 0min 1mb A-V:0.000 [5136:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.2s 29f (58%) 0fps Trem: 0min 1mb A-V:0.000 [5097:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.2s 30f (61%) 0fps Trem: 0min 1mb A-V:0.000 [5059:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.2s 31f (62%) 0fps Trem: 0min 1mb A-V:0.000 [5021:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.3s 32f (64%) 0fps Trem: 0min 1mb A-V:0.000 [4983:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.3s 33f (67%) 0fps Trem: 0min 1mb A-V:0.000 [4946:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.4s 34f (68%) 0fps Trem: 0min 1mb A-V:0.000 [4910:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.4s 35f (70%) 0fps Trem: 0min 1mb A-V:0.000 [4873:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.4s 36f (73%) 0fps Trem: 0min 1mb A-V:0.000 [4838:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.5s 37f (75%) 0fps Trem: 0min 1mb A-V:0.000 [4802:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.5s 38f (76%) 0fps Trem: 0min 1mb A-V:0.000 [4767:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.6s 39f (79%) 0fps Trem: 0min 1mb A-V:0.000 [4732:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.6s 40f (81%) 0fps Trem: 0min 1mb A-V:0.000 [4698:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.6s 41f (82%) 0fps Trem: 0min 1mb A-V:0.000 [4664:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.7s 42f (85%) 0fps Trem: 0min 1mb A-V:0.000 [4631:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.7s 43f (87%) 0fps Trem: 0min 1mb A-V:0.000 [4599:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.8s 44f (88%) 0fps Trem: 0min 1mb A-V:0.000 [4566:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.8s 45f (91%) 0fps Trem: 0min 1mb A-V:0.000 [4534:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.8s 46f (93%) 0fps Trem: 0min 1mb A-V:0.000 [4502:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.9s 47f (94%) 0fps Trem: 0min 1mb A-V:0.000 [4471:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 1.9s 48f (97%) 0fps Trem: 0min 1mb A-V:0.000 [4440:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 2.0s 49f (100%) 0fps Trem: 0min 1mb A-V:0.000 [4409:0] A/Vms 0/9 D/B/S 0/0/0
Pos: 2.0s 50f (100%) 0fps Trem: 0min 1mb A-V:0.000 [4378:0] A/Vms 0/9 D/B/S 0/0/0
ds_fill_buffer: EOF reached (stream: video)
Flushing video frames.
Writing index...
Writing header...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp header.
Video stream: 4378.820 kbit/s (547352 B/s) size: 1094705 bytes 2.000 secs 50 frames
Uninit video: ffmpeg
WINSOCK2 uninit
deo stream: 4378.820 kbit/s (547352 B/s)
size: 1094705 bytes 2.000 secs 50 framesUninit video: ffmpegWINSOCK2
uninit
しかし、フォルダを変更すると、次のようになります。
MEncoder Sherpya-SVN-r34401-4.6.2 (C) 2000-2011 MPlayer Team
Setting PATH to C:\Downloads\MPlayer-athlon-svn-34401\codecs
get_path('codecs.conf') -> 'C:\Users\Main/mplayer/codecs.conf'
Reading optional codecs config file C:\Users\Main/mplayer/codecs.conf: No such file or directory
Reading optional codecs config file /mingw/etc/mplayer/codecs.conf: No such file or directory
Using built-in default codecs.conf.
init_freetype
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
get_path('fonts') -> 'C:\Users\Main/mplayer/fonts'
Configuration: --extra-cflags=-I/c/Work/mplayer/live --extra-ldflags=-lws2_32 --prefix=/mingw --enable-static --enable-md5sum --enable-menu --enable-faac --enable-enca --enable-sdl --enable-caca --enable-gl --enable-freetype --enable-png --enable-mng --enable-jpeg --enable-gif --enable-tga --enable-mad --enable-tv --enable-theora --disable-vidix --disable-faac-lavc --disable-inet6 --flavor=athlon
WINSOCK2 init: 0
STREAM: [mf] mf://C:/Users/Main/Desktop/marshmarshmarshmarsh/*.png
STREAM: Description: Multiple files input
STREAM: Author: Benjamin Zores, Albeu
STREAM: Comment:
success: format: 16 data: 0x0 - 0x0
MF file format detected.
[mf] search expr: C:/Users/Main/Desktop/marshmarshmarshmarsh/*.png
[mf] number of files: 50 (200)
==> Found video stream: 0
VIDEO: [MPNG] 560x560 24bpp 25.000 fps 0.0 kbps ( 0.0 kbyte/s)
[V] filefmt:16 fourcc:0x474E504D size:560x560 fps:25.000 ftime:=0.0400
WINSOCK2 init: 0
WINSOCK2 init: 0
[file] File size is 0 bytes
STREAM: [file] C:/Users/Main/Desktop/marshmarshmarshmarsh/Slide.avi
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
[png @ 01235100]err{or,}_recognition separate: 2; 1
[png @ 01235100]err{or,}_recognition combined: 2; 196609
INFO: libavcodec init OK!
Selected video codec: [ffpng] vfm: ffmpeg (FFmpeg PNG)
==========================================================================
ds_fill_buffer: EOF reached (stream: video)
Flushing video frames.
Writing index...
Writing header...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp header.
Video stream: nan kbit/s (-2147483648 B/s) size: 0 bytes 0.000 secs 0 frames
Uninit video: ffmpeg
WINSOCK2 uninit
これは、50個のpng画像を使用したテスト実行でした。正常に実行するために、私のPythonスクリプトは画像のあるフォルダーにあり、そこにビデオを配置するように指示しました。('temp'フォルダー)
失敗した実行は、画像を含むフォルダーでしたが、Pythonスクリプトは含まれていませんでした。('marshmarshmarshmarsh'フォルダー)。画像をうまく見つけているように見えますが、どういうわけかそれからビデオを作成することができません。1つのフォルダでのみ機能する理由はわかりませんが、ビデオを別のフォルダに配置するように指示された場合は機能しません。