انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


ارائه ۲۴٫۱۰ اوبونتو منتشر شد 🎉

نویسنده موضوع: درست کردن اسکریپت برای ناتیلوس  (دفعات بازدید: 991 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین Nelliel

  • High Hero Member
  • *
  • ارسال: 2151
  • جنسیت : پسر
  • Nelliel Tu Odelschwanck
درست کردن اسکریپت برای ناتیلوس
« : 29 آبان 1394، 10:58 ق‌ظ »
سلام

من از گنوم 3.18 استفاده می‌کنم که از ناتیلوس به عنوان فایل منیجر استفاده میکنه, همون طور که میدونید هر اسکریپتی که در مسیر :

~/.local/share/nautilus/scripts
قرار بگیره از طریق منوی کلیک راست قابل اجرا شدن هست من میخوام مثل علیرضا امیرصمیمی با زنیتی یه اسکریپت بنویسم که هر وقت روی یه فایل ویدیوی کلیک کردم و بازش کردم اونو با زنیتی برام توی یه محیط گرافیکی ساده کانورت کنه.

حالا مشکل اینه که وقتی من از توی منوی کلیک راست اسکریپت را اجرا میکنم تغییرات روی فایل ویدیوی اعمال نمیشه یعنی اصلا ffmpeg کار نمیکنه و در دستور :

pstree | grep ffmpeg
نیست. یعنی میخوام طوری بنویسم که وقتی روی هر فایلی ویدیوی کلیک کردی اون فایل را ورودی ffmpeg بشناسه. من فعلا توی اسکریپتم اصلا از محیط گرافیکی که زنیتی میسازه استفاده نکردم تا اول مشکل اصلیم را حل کنم اما در حالت عادی باید کانورت شروع شه و برای کنسل کردنش ffmpeg را بکشم.

اسکریپت من تا الان اینه :

#!/bin/bash
for file in *
do
    ffmpeg -i "$file" -c:v libx264 -c:a copy out.mp4
done

*ویرایش شد*

آیا اصلا درست رفتم ؟؟

چجوری بنویسم که روی فایلی که کلیک میکنم ورودی بشناسه ؟؟
« آخرین ویرایش: 29 آبان 1394، 07:07 ب‌ظ توسط حسین حیدری »
طرفدار انیمه و مانگا - کاربر آرچ لینوکس

آفلاین احسان فعالپور

  • Sr. Member
  • *
  • ارسال: 408
  • جنسیت : پسر
پاسخ : درست کردن اسکریپت برای ناتیلوس
« پاسخ #1 : 29 آبان 1394، 11:49 ق‌ظ »
فارغ از اینکه راهت درسته یا نه من یه سوتیه بزرگ توی اسکریپتت میبینم.
متغیر حلقه اسمش file ه نه i.
عضو ارشد فدراسیون بیکاران ایران FBI

آفلاین Nelliel

  • High Hero Member
  • *
  • ارسال: 2151
  • جنسیت : پسر
  • Nelliel Tu Odelschwanck
پاسخ : درست کردن اسکریپت برای ناتیلوس
« پاسخ #2 : 29 آبان 1394، 11:59 ق‌ظ »
فارغ از اینکه راهت درسته یا نه من یه سوتیه بزرگ توی اسکریپتت میبینم.
متغیر حلقه اسمش file ه نه i.

بله حق با شماست  :oops: :oops: :oops: :oops:

سوتیه خیلی بزرگی بود اما بازم مشکل هست
طرفدار انیمه و مانگا - کاربر آرچ لینوکس

آفلاین Nelliel

  • High Hero Member
  • *
  • ارسال: 2151
  • جنسیت : پسر
  • Nelliel Tu Odelschwanck
پاسخ : درست کردن اسکریپت برای ناتیلوس
« پاسخ #3 : 29 آبان 1394، 04:23 ب‌ظ »
حل شد همون اسکریپت الان داره کار میکنه.

مشکل از سیستم من بود.
طرفدار انیمه و مانگا - کاربر آرچ لینوکس

آفلاین Nelliel

  • High Hero Member
  • *
  • ارسال: 2151
  • جنسیت : پسر
  • Nelliel Tu Odelschwanck
پاسخ : درست کردن اسکریپت برای ناتیلوس
« پاسخ #4 : 29 آبان 1394، 07:07 ب‌ظ »
سلام
دوباره حل شد تاپیک را برداشتم چون دوباره تقریبا به مشکل قبلی بر خوردم, اسکریپت من رسیده به این :
#!/bin/bash
mpeg2video="MPEG2"
libx265="X265"
libx264="X264"
codec=$(zenity --title "Aricon" --width 500 --height 200 --list --text "Choose your codec" --radiolist --column "Select" --column "Codecs" TRUE "$libx265" FALSE "$libx264" FALSE "$mpeg2video");
if [ $? = 1 ];
then exit;
fi
outname=$(zenity --entry --title="Aricon" --text="Please choose your output name" )
if [$? = 1];
then exit;
fi
format=$(zenity --title "Aricon" --width 500 --height 250 --list --text "Choose your output format" --radiolist --column "Select" --column "Codecs" TRUE "mp4" FALSE "mkv" FALSE "flv" FALSE "mov");
if [ $? = 1 ];
then exit;
fi
for i in *
do
  ffmpeg -i "$i" -c:v "$codec" -c:a copy "$outname"."$format"
done

و الان وقتی رانش میکنم مشکل قبلی را داره که هیچ اتفاقی نمیفته. لطفا راهنماییام کنید اینم خروجیش توی ترمینال :

Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
./Aricon: line 10: [0: command not found
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
ffmpeg version 2.8.1 Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 5.2.0 (GCC)
  configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-avisynth --enable-avresample --enable-fontconfig --enable-gnutls --enable-gpl --enable-ladspa --enable-libass --enable-libbluray --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-shared --enable-version3 --enable-x11grab
  libavutil      54. 31.100 / 54. 31.100
  libavcodec     56. 60.100 / 56. 60.100
  libavformat    56. 40.101 / 56. 40.101
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 40.101 /  5. 40.101
  libavresample   2.  1.  0 /  2.  1.  0
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.101 /  1.  2.101
  libpostproc    53.  3.100 / 53.  3.100
Aricon: Invalid data found when processing input
ffmpeg version 2.8.1 Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 5.2.0 (GCC)
  configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-avisynth --enable-avresample --enable-fontconfig --enable-gnutls --enable-gpl --enable-ladspa --enable-libass --enable-libbluray --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-shared --enable-version3 --enable-x11grab
  libavutil      54. 31.100 / 54. 31.100
  libavcodec     56. 60.100 / 56. 60.100
  libavformat    56. 40.101 / 56. 40.101
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 40.101 /  5. 40.101
  libavresample   2.  1.  0 /  2.  1.  0
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.101 /  1.  2.101
  libpostproc    53.  3.100 / 53.  3.100
Remuxer: Is a directory

یه نکته را بگم اون اخر نوشته Remuxer دایرکتوی هست باید بگم وقتی من اسکریپت را توی کلیک راست اجرا میکنم فرق داره با وقتی خودش را با ترمینال ران میکنم پس اون آخر که یه همچین چیزی را نوشته و گفته دایرکتوی هست همیشگی نیست.

فقط یه نکته قبلا توی htop کلمه‌ی ffmpeg را نشون نمیداد و کانورت هم نمیکرد الان نشون نمیده اما نصفه نیمه کانورت میکنه یعنی طوری که تصویر نیست صدا هست یا ...
« آخرین ویرایش: 29 آبان 1394، 07:16 ب‌ظ توسط حسین حیدری »
طرفدار انیمه و مانگا - کاربر آرچ لینوکس