হ্যান্ডব্রেক দিয়ে সহজেই কীভাবে 50 টি পর্বগুলি ডিভিডি থেকে 50। এমপি 4 এ রূপান্তর করবেন?


12

আমি এতে 50 টি এপিসোড সহ একটি ডিভিডি লোড করেছি (প্রোগ্রামটি থেকে ভিডিওগুলি বেছে নিয়েছি), এখন যখন আমি এটি হ্যান্ডব্রেকে খুলি, তখন সেখানে 50 টি শিরোনাম প্রদর্শিত হয়। আমি 320x240 আউটপুট ফর্ম্যাট চয়ন করি এবং রূপান্তর শুরু করি। তারপরে আমি পরবর্তী শিরোনামে ক্লিক করুন, আবার একই কাজ করুন, 50 বার।

এটির গতি বাড়ানোর কোনও উপায় আছে ?, কারণ আমি পরের শিরোনামটি ক্লিক করলে এটি আমার সেটিংস মনে রাখে না। এবং আমি প্রিসেট তৈরি করার চেষ্টা করেছি কিন্তু আমি যখনই প্রিসেট তালিকা থেকে এটি চয়ন করি ততবার এটি ক্র্যাশ হয়ে যায়।

উত্তর:


12

আপনি প্রতিটি শিরোনামের জন্য হ্যান্ডব্র্যাকসিএলআইকে অনুরোধ করতে শেল স্ক্রিপ্ট লিখতে পারেন ।

লিনাক্স ( উত্স ):

$ for i in `seq 4`; do HandBrakeCLI --input /dev/dvd --title $i --preset Normal --output NameOfDisc_Title$i.mp4; done

উইন্ডোজ পাওয়ারশেল:

for ($title=1; $title -le 4; $title++) {
    &"C:\program files\handbrake\HandBrakeCLI.exe" --input D:\ --title $title --preset Normal --output "$title.mp4"
}

এর জন্য কোনও গুই বিকল্প নেই? উইন্ডোজ স্ক্রিপ্ট উদাহরণ সম্পর্কে; $ শিরোনাম একটি সংখ্যা না থাকলে আমি কী করব? আমি নিশ্চিত না যে কোডটি কী করে। বোঝাতে যত্ন?
রুকি

1
জিইউআই বিকল্প: হ্যাঁ রয়েছে: সারিতে যুক্ত করুন -> সমস্ত যুক্ত করুন। তবে এটি (পরীক্ষামূলক) হিসাবে চিহ্নিত হয়েছে এবং আমি চেষ্টা করার পরে এটি কার্যকর হয়নি।
গ্রিলস

$ শিরোনাম একটি সংখ্যা নয়: $ শিরোনাম সর্বদা একটি সংখ্যা হবে। এভাবেই ডিভিডি-র কাজ। ব্যাখ্যা: ভাল, এটি একটি লুপটি 1 থেকে 4 এর মধ্যে গণনা করা হয় এবং প্রতিটি গণনার জন্য এটি কিছু পরামিতি সহ HandBrakeCLI.exe সম্পাদন করে। প্যারামিটারগুলি কী বোঝায় তা দেখতে "হ্যান্ডব্র্যাক সিএলআই.এক্সইহেল্প" দেখুন।
গ্রিলস

আপনি আর কী জানতে চান তা নিশ্চিত নন। নির্দিষ্ট কিছু জিজ্ঞাসা করুন এবং আমি উত্তর দেব।
গ্রিলস

ধন্যবাদ, এখন আমি এটি আরও ভাল করে বুঝতে পারি। সুতরাং এটি কেবল কমান্ডলাইন প্যারামিটারগুলি সম্পর্কে, আমি এটি করতে পারি!
রুকি

3

গ্রিলসের উত্তর অনুসারে:

এই স্ক্রিপ্টটি নির্দিষ্ট সংখ্যক শিরোনাম ব্যবহার করে না, তবে হ্যান্ডব্রেক এগুলি নির্ধারণ করতে দেয়।

#!/bin/bash
rawout=$(HandBrakeCLI -i /dev/dvd -t 0 2>&1 >/dev/null)
#read handbrake's stderr into variable

count=$(echo $rawout | grep -Eao "\\+ title [0-9]+:" | wc -l)
#parse the variable using grep to get the count

for i in $(seq $count)
do
    HandBrakeCLI --input /dev/dvd --title $i --preset Normal --output $i.mp4
done

এটি লক্ষণীয় যে আপনি যদি এই গণনাটির মানটি সঠিক হতে চান তবে আপনাকে --Mind- পিরিয়ড 0 হ্যান্ডব্র্যাকসিএলআইতে পাস করতে হবে, অন্যথায় আপনি কয়েকটি ডিভিডি সংক্ষেপে উপস্থিত হবেন। উদাহরণস্বরূপ, আমার টেস্ট ডিভিডিতে একটি 10 ​​সেকেন্ড ট্র্যাক 1 রয়েছে যা চূড়ান্ত আউটপুটটিতে উপেক্ষা করা হবে।
কাইথার

2

আমার অল্প পরিমাণে লবণের যোগ করা, এটি পাইথন স্ক্রিপ্টটি নিয়ে আমি বেশ কয়েকটি অধ্যায়ে বিভক্ত হয়ে এসেছি। নম্বরটি স্বয়ংক্রিয়ভাবে উত্তোলিত হয়।

মনে রাখবেন যে:

  1. আপনার হ্যান্ডব্রেক সিএলআই দরকার (বর্তমানে এই ঠিকানায় উপলভ্য: https://handbrake.fr/downloads2.php )
  2. আপনার PATH এ হ্যান্ডব্রেক সিএলআইয়ের ইনস্টলেশন ফোল্ডার থাকা দরকার

আপনাকে কেবল স্ক্রিপ্টের আর্গুমেন্ট হিসাবে ডিভিডি এর অবস্থান সহ পাইথন স্ক্রিপ্টটি কল করতে হবে।

#!python

import os
import subprocess
import re
import sys

# Ugly but simple way to get first argument = folder with DVD
# We will get DVD name by removing all / and \
dvd = sys.argv[1]
dvd_name = re.sub(r'.*[/\\]', r'', dvd).rstrip('/').rstrip('\\')

s = subprocess.Popen(
        f'HandBrakeCLI -i "{dvd}" -t 0', stdout=subprocess.PIPE, stderr=subprocess.STDOUT
    )
count = 0
for line in s.stdout:
    if re.search(rb"\+ title [0-9]+:", line):
        count += 1
print(f'==Extracting {count} chapters from "{dvd}"==')


for i in range(1,count+1):
    output = f"{dvd_name}_{i}.mp4"
    cmd = f'HandBrakeCLI --input {dvd} --title {i} --preset Normal --output "{output}"'
    log = f"encoding_{output}.log"
    with open(log, 'wb') as f:
        s = subprocess.Popen(cmd, stdout=f, stderr=subprocess.STDOUT)
        s.communicate()
    if not os.path.isfile(output):
        print(f'ERROR during extraction of "{output}"!')
    else:
        print(f'Successfully extracted Chapter #{i} to "{output}"')

0

লিনাক্স উবুন্টুতে সিএলআইয়ের মাধ্যমে ফাইলগুলি উত্তোলন দুর্দান্ত কাজ করেছে worked আমি নীচে ব্যবহৃত লাইনটি এমপিইজি -4 এবং গুণমানকে বাধ্য করার জন্য সামান্য পরিবর্ধনের সাথে প্রদত্ত সিনট্যাক্সটি পুনরাবৃত্তি করে। সাবটাইটেলগুলি যদি প্রয়োজন হয় তবে আমি বিশ্বাস করি কমান্ড লাইন (সিএলআই) প্যারামিটার এবং যুক্তিগুলি প্রসারিত করা দরকার।

patty@patty:~$ for i in `seq 4`; do HandBrakeCLI -i /media/patty/DVDTITLE -t $i -o DVDTITLE_Title$i.mp4 -e x264 -q 18; done

0

count=$(echo $rawout | grep -Eao "\\+ title [0-9]+:" | wc -l)প্রথম অধ্যায়টি 10 ​​সেকেন্ডের চেয়ে ছোট হলে @ForestPhoenix থেকে লাইনটি কাজ করে না।

এটি কোডের একটি উন্নতি:

rohausgabe=$(HandBrakeCLI -i "$iso" -t 0 2>&1 >/dev/null)
anzahl=$(echo $rohausgabe | grep -Eao "scan: DVD has [0-9]" | awk -F " " '{print $4}')

1
সুপারউজারে আপনাকে স্বাগতম। এই সাইটটি থেকে সর্বাধিক সুবিধা পেতে দয়া করে ট্যুরটি সুপারইউজার / টুর এ নিন । এই উত্তর হিসাবে, আমি পরামর্শ দিচ্ছি যে প্রশ্নটি যখন ইংরেজি হয়, আপনি দয়া করে ইংরেজিতে উত্তর দিতে পারেন? আমি দেখতে পাচ্ছি যে প্রথম কমান্ডের পরে আপনি লিখেছেন -> যখন প্রথম আইটেমগুলি 10 সেকেন্ডের চেয়ে কম হয় তখন কাজ করে না! তারপরে আপনি "বেটার" কী তা দেখিয়েছেন
এসডসোলার

@ এসডসোলার: এই উত্তরটি গঠনমূলক হওয়ায় আমি অনুবাদ করার চেষ্টা করেছি। আমি 14 বছর আগে জার্মান পড়াশোনা বন্ধ করে দিয়েছি তাই আমি আশা করি আমার ভুল ব্যাখ্যা হয়নি
জ্যান-ফ্রাঙ্কোয়েস টি

-1

আপনি কাজগুলিকে সারিতে যুক্ত করতে পারেন

লিঙ্ক 2 থেকে

কেবলমাত্র এগিয়ে যান এবং শিরোনাম, অধ্যায় বা ব্যবহারের উত্স পরিবর্তন করুন এবং গন্তব্য ফাইলটির পুনরায় নামকরণ করতে ভুলবেন না। আপনি যে কোনও সেটিংস চান তা মুছুন। তারপরে টুলবারের "কাতারে যুক্ত করুন" বোতামটি ক্লিক করুন। আপনি রূপান্তর করতে চান এমন পুরো ব্যাচের জন্য এই পদক্ষেপগুলি পুনরাবৃত্তি করুন।

কিছু মন্তব্যে বলা হয়েছে যে তারা পূর্ববর্তী ফাইলটি ওভাররাইট করার ক্ষেত্রে সমস্যা ছিল। সুতরাং আপনাকে নিশ্চিত হতে হবে যে আপনি তাদের নামটি সঠিকভাবে দিয়েছেন। আপনি এটি চালিয়ে যাওয়ার আগে কয়েকটি কাজ নিশ্চিত করুন।


কাতারে যুক্ত করা পুনরাবৃত্তির সমস্যাটি দূর করে না: আমার পরবর্তী শিরোনাম নির্বাচন করতে, রেজোলিউশন পরিবর্তন করতে, "সারি যুক্ত করুন" ক্লিক করতে হবে, পুনরাবৃত্তি করতে ক্লিক করতে হবে। আমি যা চাই তা হ'ল ঠিক একই সেটিংস সহ সমস্ত শিরোনাম একবারে রূপান্তর করা। এটি কেবল অধ্যায়গুলির
রুকি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.