Skrypt mkvmerge m2ts do mkv

Potrzebujesz pomocy z C, C++, perl, python, itp.
Awatar użytkownika
szlejk
Beginner
Posty: 100
Rejestracja: 23 marca 2011, 22:48
Lokalizacja: Warszawa

Re: mkvmerge m2ts do mkv skrypt

Post autor: szlejk »

1. wyszukać największy plik m2ts
2. przeprogramować plik m2ts do pliku mkv z wybraną ścieżką dzwiękową i we wskazane miejsce
3. zmienić nazwę pliku mkv na nazwę głównego folderu pliku m2ts
4. usunąć plik i foldery pliku m2ts
Awatar użytkownika
dedito
Moderator
Posty: 3560
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: mkvmerge m2ts do mkv skrypt

Post autor: dedito »

To trochę inaczej niż pisałeś na początku.
Przy takich założeniach ten wyszukany skrypt jest już bardziej użyteczny.

Ad.1 zastanów się w jaki sposób będziesz wskazywał lokalizację poszukiwań. Może o to pytać skrypt lub będziesz to podawał przy wywołaniu skryptu jako argument wywołania lub będzie to zaszyte jako zmienna w skrypcie.
Wydaje mi się, że argument wywołania jest tu najlepszym wyborem.

Ad.2 podobnie jak w 1 zastanów się jak podawać lokalizację ścieżki dźwiękowej i miejsce docelowe.

Ad.3. bez uwag

Ad.4. może wyświetlać zapytanie czy na pewno usunąć, tak aby użytkownik mógł wcześniej sprawdzić poprawność konwersji (co jeśli konwersja się nie uda).
Awatar użytkownika
szlejk
Beginner
Posty: 100
Rejestracja: 23 marca 2011, 22:48
Lokalizacja: Warszawa

Re: Skrypt mkvmerge m2ts do mkv

Post autor: szlejk »

Jestem za wywołaniem jeśli nie przeszkadza brak środowiska graficznego.
Plik m2ts posiada wbudowane ścieżki dźwękowe, które mkvmerge ma za zadanie zbędne usunąć (odchudzić plik).
Bez usuwania fakt nie będzie takiej możliwości.
https://www.dropbox.com/s/9sx22s3fxszll ... 4.png?dl=0
Awatar użytkownika
LordRuthwen
Moderator
Posty: 2325
Rejestracja: 18 września 2009, 21:45
Lokalizacja: klikash?

Re: Skrypt mkvmerge m2ts do mkv

Post autor: LordRuthwen »

Z tego co kojarzę m2ts to zwykły mpeg-ts - do usunięcia ściężki dźwiękowej nie potrzebujesz specjalnego programu, wystarczy ffmpeg z przełącznikiem -c:a none i możesz od razu przekonwertować do jakiegokolwiek formatu łącząc przy okazji punkty 2 i 3 w jeden.
Awatar użytkownika
dedito
Moderator
Posty: 3560
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: Skrypt mkvmerge m2ts do mkv

Post autor: dedito »

Czyli wywołanie skryptu będzie:

Kod: Zaznacz cały

nazwa_skryptu lokalizacja_poszukiwan lokalizacja_sciezki_dzwiekowej lokalizacja_wyjsciowa
W skrypcie argumenty będą dostępne pod $1, $2, i $3 co sobie możesz przepisać do lepiej identyfikowalnych zmiennych, co dodatkowo uczyni kod bardziej uniwersalnym, nie będzie większego problemu przejść na inne metody parametryzacji, przykładowo:

Kod: Zaznacz cały

Lokalizacja_poszukiwan = $1
lokalizacja_sciezki_dzwiekowej = $2
lokalizacja_wyjsciowa = $3
Awatar użytkownika
szlejk
Beginner
Posty: 100
Rejestracja: 23 marca 2011, 22:48
Lokalizacja: Warszawa

Re: Skrypt mkvmerge m2ts do mkv

Post autor: szlejk »

Im bardziej uniwersalny ty więcej osób będzie mogło z nie skorzystać :)
Awatar użytkownika
dedito
Moderator
Posty: 3560
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: Skrypt mkvmerge m2ts do mkv

Post autor: dedito »

No to założenia i algorytm już masz.
To czas coś napisać w bashu.
Proponuję założyć sobie gdzie na boku folder testowy, gdzie będziesz sprawdzał działanie.
Awatar użytkownika
szlejk
Beginner
Posty: 100
Rejestracja: 23 marca 2011, 22:48
Lokalizacja: Warszawa

Re: Skrypt mkvmerge m2ts do mkv

Post autor: szlejk »

czyli "Lokalizacja_poszukiwana" będzie miejscem poszukiwania pliku m2ts, powinienem wprowadzić dane typu /media/usb...?

Kod: Zaznacz cały

#!/bin/bash
######################################################
# Skrypt ma za zadanie automatycznie przekonwertować #
# plik m2ts do pliku mkv z wybraną ścieżką dzwiękową #
######################################################

Lokalizacja_poszukiwan = $1
lokalizacja_sciezki_dzwiekowej = $2
lokalizacja_wyjsciowa = $3
Awatar użytkownika
dedito
Moderator
Posty: 3560
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: Skrypt mkvmerge m2ts do mkv

Post autor: dedito »

W wywołaniu będziesz to wprowadzał.
Potestuj sobie:

Kod: Zaznacz cały

#!/bin/bash
######################################################
# Skrypt ma za zadanie automatycznie przekonwertować #
# plik m2ts do pliku mkv z wybraną ścieżką dzwiękową #
######################################################

Lokalizacja_poszukiwan="$1"
lokalizacja_sciezki_dzwiekowej="$2"
lokalizacja_wyjsciowa="$3"
echo "To jest sciezka wyszukiwania: $Lokalizacja_poszukiwan"
echo "To jest lokalizacja sciezki dzwiekowej: $lokalizacja_sciezki_dzwiekowej"
echo "To jest lokalizacja wyjsciowa: $lokalizacja_wyjsciowa"
http://bash.0x1fff.com/zmienne-programowe
Awatar użytkownika
szlejk
Beginner
Posty: 100
Rejestracja: 23 marca 2011, 22:48
Lokalizacja: Warszawa

Re: Skrypt mkvmerge m2ts do mkv

Post autor: szlejk »

Coś nie coś kombinuje

Kod: Zaznacz cały

#!/bin/bash
######################################################
# Skrypt ma za zadanie automatycznie przekonwertować #
# plik m2ts do pliku mkv z wybraną ścieżką dzwiękową #
######################################################

Lokalizacja_poszukiwan=$(find /home/ -name "*m2ts")
lokalizacja_sciezki_dzwiekowej="$2"
lokalizacja_wyjsciowa=$"/home/szlejk/Wideo/MKV"
echo "To jest sciezka wyszukiwania: $Lokalizacja_poszukiwan"
echo "To jest lokalizacja sciezki dzwiekowej: $lokalizacja_sciezki_dzwiekowej"
echo "To jest lokalizacja wyjsciowa: $lokalizacja_wyjsciowa"
wynik

Kod: Zaznacz cały

find: ‘/home/szlejk/.local/share/mc’: Brak dostępu
To jest sciezka wyszukiwania: /home/szlejk/Wideo/MKV/BDMV/STREAM/00082.m2ts
To jest lokalizacja sciezki dzwiekowej: 
To jest lokalizacja wyjsciowa: /home/szlejk/Wideo/MKV
ODPOWIEDZ