Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > General > Linux, Mac OS X, & Co

Reply
 
Thread Tools Search this Thread Display Modes
Old 13th March 2009, 12:46   #1  |  Link
multimediaman
MPlayer addict
 
Join Date: Dec 2008
Posts: 33
How to get avisynth working through pipes

I am long time mencoder user. But this time there is no filter aviable for my needs.

Avisynth works after following procedure
Code:
mplayer file -ao -null -speed 4 -vo yuv4mpeg:file=a.y4m
Code:
mencoder -nosound a.y4m -ovc copy  -o a.avi
Code:
wine avs2yuv.exe  test -o - | mencoder - -cache 500 -profile x264medium -o file.264
Problem is quite obvious: huge files.

When I create pipes a.y4m and a.avi avisynth is not able to process it.

I have tried to search but didn't find solution.

However I tried FFVH codec via mencoder but avisynth is not able open it. ffdshow won't install. I am nowadays pretty lost when it comes to windows stuff...

Or are pipes out of question when it comes to avisynth?

Last edited by multimediaman; 13th March 2009 at 12:48.
multimediaman is offline   Reply With Quote
Old 13th March 2009, 15:17   #2  |  Link
nm
Registered User
 
Join Date: Mar 2005
Location: Finland
Posts: 2,643
What kind of sources do you encode? DGMPGDec and DGAVCDec should work with Wine.
nm is offline   Reply With Quote
Old 16th March 2009, 09:30   #3  |  Link
multimediaman
MPlayer addict
 
Join Date: Dec 2008
Posts: 33
Thanks!
multimediaman is offline   Reply With Quote
Old 18th March 2009, 16:26   #4  |  Link
fahr
Registered User
 
fahr's Avatar
 
Join Date: Nov 2008
Location: Russia, Spb
Posts: 29
Quote:
Or are pipes out of question when it comes to avisynth?
In avidemux2 (instead mencoder) for linux you must be able to use avsproxy (http://avidemux.org/admWiki/index.php?title=Avsproxy), or avsfilter (http://avsfilter.berlios.de) for use avisynth scripts under wine without create/write/read huge files.
fahr is offline   Reply With Quote
Old 20th March 2009, 14:48   #5  |  Link
multimediaman
MPlayer addict
 
Join Date: Dec 2008
Posts: 33
Thanks for the tip. I am going to check that later.
I am pretty much mencoder fan, though

I just made a little script to automate that makes life little bit easier for me.
It works for mpg files and uses DGIndex and DGDecode.

Code:
#!/bin/bash

#Public Domain

#Plugin path
ppath="$HOME/.wine/drive_c/Program Files/AviSynth 2.5/plugins"
#Plugin path for wine
wppath="C:\Program Files\AviSynth 2.5\plugins"

if [ $# -eq 0 ] ; then
  echo "Creates index file and simple modifiable avisynth script"
  echo "Usage: mpgindex file yadif=[0-3]"
  echo "yadif deinterlacer is optional"
  exit 0
fi

cd $(dirname "$1")
in="$(basename "$1")"

if ! [ -f "$in" ] ;then
  echo "No such file"
  exit 1
fi

out=""$in".d2v"
a=0
while  [ -f "$out" ] || [ -f "${out%.d2v}".avs ] ; do
  a=$(expr $a + 1 )
  out=""$in"-"$a".d2v"
done
out="${out%.d2v}"

echo DGindex  -AIF=["$in"] -OF=["$out"] -OM=0 -minimize -exit
wine "$ppath"/DGIndex.exe  -AIF=["$in"] -OF=["$out"] -OM=0 -minimize -exit

echo -e 'LoadPlugin("'"$wppath\DGDecode.dll"'")
MPEG2Source("'"$out.d2v"'")'\
>> "$out".avs

if [ $(echo  "$2"| cut -d =  -f 1) = "yadif" ] ; then
  mode=$(echo "$2"| cut -d =  -f 2)
  if [ $mode -lt 4 ] && [ $mode -gt -1 ] ; then
    echo -e 'LoadCPlugin("'"$wppath\yadif.dll"'")
yadif(mode='"$mode"')'\
>> "$out".avs
  else
      echo "no such mode for yadif: $mode"
  fi
fi
echo script: "$out".avs
echo index: "$out".d2v

exit 0
multimediaman is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 22:04.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.