Skrypt mkvmerge m2ts do mkv

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

Re: mkvmerge m2ts do mkv skrypt

Post autor: szlejk » 14 września 2018, 07:24

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: 2639
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: mkvmerge m2ts do mkv skrypt

Post autor: dedito » 14 września 2018, 07:30

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
Posty: 96
Rejestracja: 23 marca 2011, 22:48
Lokalizacja: Warszawa

Re: Skrypt mkvmerge m2ts do mkv

Post autor: szlejk » 14 września 2018, 08:45

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: 1960
Rejestracja: 18 września 2009, 21:45
Lokalizacja: klikash?

Re: Skrypt mkvmerge m2ts do mkv

Post autor: LordRuthwen » 14 września 2018, 08:58

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: 2639
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: Skrypt mkvmerge m2ts do mkv

Post autor: dedito » 14 września 2018, 09:41

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
Posty: 96
Rejestracja: 23 marca 2011, 22:48
Lokalizacja: Warszawa

Re: Skrypt mkvmerge m2ts do mkv

Post autor: szlejk » 14 września 2018, 13:53

Im bardziej uniwersalny ty więcej osób będzie mogło z nie skorzystać :)

Awatar użytkownika
dedito
Moderator
Posty: 2639
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: Skrypt mkvmerge m2ts do mkv

Post autor: dedito » 14 września 2018, 14:32

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
Posty: 96
Rejestracja: 23 marca 2011, 22:48
Lokalizacja: Warszawa

Re: Skrypt mkvmerge m2ts do mkv

Post autor: szlejk » 14 września 2018, 15:57

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: 2639
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: Skrypt mkvmerge m2ts do mkv

Post autor: dedito » 14 września 2018, 16:37

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
Posty: 96
Rejestracja: 23 marca 2011, 22:48
Lokalizacja: Warszawa

Re: Skrypt mkvmerge m2ts do mkv

Post autor: szlejk » 14 września 2018, 18:03

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