Προς το περιεχόμενο

Μετατροπη απο ενα video forma σε αλλο


Nik0s

Προτεινόμενες αναρτήσεις

Γιατί επανασυμπιέζεις το video και τον ήχο; Έτσι αναγκαστικά θα χάσεις σε ποιότητα.

 

Το πρώτο πράγμα που πρέπει να δοκιμάσεις είναι να κάνεις απλά copy τα streams στο AVI container format:

>mencoder -of avi -ovc copy -oac copy video.flv -o video.avi

ή

>ffmpeg -i video.flv -acodec copy -vcodec copy video.avi

 

Η επανασυμπίεση είναι λύση έσχατης ανάγκης.

 

 

nske: εχεις να προτεινεις καποιο utility για μετατροπη απο ενα βιντεο φορμα σε αλλο?

 

Οι μέρες που συμπίεζα τακτικά ταινίες είναι πίσω, αλλά για ό,τι προκύψει χρησιμοποιώ τον mencoder.

 

και κατι αλλο? γιατι να υπαρχει αναγκη για κατι εξτρα οπως οι containers και οχι απλα οι codecs οι οποιοι περιγραφουν οπως ειπαμε σε συμπιεσμενη μορφη την εικονα και τον ηχο ενος αρχειου να μην μπορουν να κανουν και αυτο?

Ένας codec θα κωδικοποιήσει τον ήχο, ένας άλλος το video. Ένας video codec δε γνωρίζει τίποτε άλλο εκτός από το πώς να κωδικοποιεί raw video, αντίστοιχα και ένας audio codec. Δεν έχουν ανάγκη να γνωρίζουν οτιδήποτε άλλο. Οι έννοιες (video, ήχος, υπότιτλος, αρχείο, ...) είναι από τη φύση τους άσχετες μεταξύ τους, είναι απόλυτα φυσικό και οι τεχνολογίες να αναπτύσσονται ανεξάρτητα και μόνο όταν υπάρχει συγκεκριμένη ανάγκη τότε να συνδυάζονται.

 

Οταν λεμε οτι οι codecs παρεχουν τροπο για να περιγραφούν ψηφιακά συμπιεσμενο Video και το Audio ενος αρχειου μεσα σε αυτην την επριγραφη δεν υπαγεται και το πως θα καταγραφουν τα bit stream toy ηχου και της εικονας?

Ένας codec παίρνει μια είσοδο (video ή ήχου) και παράγει μια έξοδο. Η έξοδος μπορεί να αποθηκευτεί σε κάποιο αρχείο, να μεταδοθεί απευθείας σαν stream πάνω από ένα δίκτυο, ή χίλια δυο πράγματα, ο codec δεν έχει λόγο να γνωρίζει οτιδήποτε γι' αυτά.

 

Θα ήταν εντελώς αφύσικο και προβληματικό μια τεχνολογία να προσπαθήσει να καλύψει πολλά άσχετα πράγματα μαζί.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • Απαντ. 62
  • Δημ.
  • Τελ. απάντηση

Εκανα αυτα που εκανα γιατι ετσι μου λεγανε μεχρι τωρα αλλα εχει πολυτο δικιο.

 

Η διαδικασια του copy ηταν πολυ γρηγορη και το αποτελεσμα αψογο, εκτος του γεγονοτος οτι δεν δειχνει υποτιτλους το αvi. Me to mencoder το εκανα.(αληθεια ο δευτερος τροπος τι διαφορα θα ειχε με τον πρωτο?)

 

Μηπως το avi container μπορει να περιεχει ηχο και εικονα με ενα standard τροπο οπως ειπες αλλα χωρις υποτιτλους επειδη το φορμα του container ισως να μην τους υποστηριζει?

 

το mkv αρχειο μου ειχε 3 streams ενω το παραγομενο avi εφαγε το subtitle stream.

Για του λογου το αληθες:

 

>
nikos@dell:/media/Downloads/Νίκος$ mkvmerge -i Out_of_Sight.mkv
File 'Out_of_Sight.mkv': container: Matroska
Track ID 1: audio (A_AC3)
Track ID 2: video (V_MPEG4/ISO/AVC)
Track ID 3: subtitles (S_TEXT/UTF8)
nikos@dell:/media/Downloads/Νίκος$ mkvmerge -i Out_of_Sight.avi 
File 'Out_of_Sight.avi': container: AVI
Track ID 0: video (avc1)
Track ID 1: audio (AC3)
nikos@dell:/media/Downloads/Νίκος$ 

 

---------- Το μήνυμα προστέθηκε στις 23:59 ----------

 

Αν ειναι ετσι οπως τα λεω και το avi container den ypostirizei subtitle stream τοτε οι υποτιτλοι πρεπει να περαστουν hardcoded, δηλαδη να γινουν re-encode μαζι με το video stream bit prow bit...

 

 

αλλα εσυ θα μου πεις, εγω απλα κανω υποθεσεις.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ναι, το AVI, όπως είπαμε, δεν προβλέπει κάτι για υπότιτλους. Θα πρέπει να εξαγάγεις τους υπότιτλους σε εξωτερικό αρχείο.

 

Στο mkvtoolnix υπάρχει η mkvextract.

 

π.χ.

>$ mkvextract tracks movie.mkv 3:subtitles.srt

 

Υπάρχουν και 1-2 GUI για αυτήν.

 

Αν δεν θέλεις να τους έχεις χωριστά και θέλεις να έχεις AVI, τότε ναι, αναγκαστικά θα πρέπει να επανασυμπιεστεί το video ώστε να ενσωματωθούν, και αναγκαστικά θα χάσεις σε ποιότητα.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Eγινε η δουλεια! ευχαριστω πολυ και να φανταστεις εφαγα τοσες ωρες αυτες τις μερες να καθομαι να κωδικοποιω τα streams ξανα και ξανα.... ενω δεν χρειαζοταν.

 

Αληθεια κατι ακομη

 

Οταν λες "κωδικοποιηση" εννοεις "συμπιεση" ετσι?

 

πχ εδω: Ένας video codec δε γνωρίζει τίποτε άλλο εκτός από το πώς να κωδικοποιεί raw video, αντίστοιχα και ένας audio codec.

 

ευχαριστω πολυ τωρα καταλαβα την εννοια του codec kai container πολυ καλα.

 

Μακαρι να βγαζλουν στην αγορα γρηγορα φετες που να υποστηριζουν matroska container ετσι ωστε να μην χρειαζομαστε μετατροπες.

 

Παντς μου εκανε εντυπωςση ποσο ευκολα πηρα το streams apo matrsoka container kai ta erixa se avi.

 

Καμια αλλαη αλλαγηδ εν χρειαστηκε ακριβως οπως ειπες επειδη οi codecs ξερουν μονο να κωδικοποιουν και ο o container einai απλα ενας τροπος οργανωσης των διαφορων streams.

 

Αρα θα μπορουσα το ιδιο απλα αντι για avi arxeio να δημιυργησω και .mpg/.mpeg με τον ιδιο τροπο?

 

---------- Το μήνυμα προστέθηκε στις 00:39 ----------

 

επισης γιατι οταν επανασυμπιεζουμε ενα βιντεο χανουμε σε ποιοτητα?

 

Οι αλγοριθμοι δεν ειναι lossless?

 

---------- Το μήνυμα προστέθηκε στις 00:45 ----------

 

α και λιγο αυτο:

 

Όταν μιλάμε για συμπιεσμένο video και ήχο, αυτός προκύπτει από κάποιο αλγόριθμο συμπίεσης (π.χ. Xvid), ο οποίος με τη σειρά του βασίζεται σε κάποιο γενικότερο standard (π.χ. MPEG-4).

 

το γενικοτερο standard λιγακι με μπερδεψε.

 

Δηλαδη ο αλγοριθμος συμπιεσης βασιζεται πανω σε εναν αλλον αλγοριθμο?

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

bravo nske!

μπορεις να μου πεις τι παιζει σε μενα και για flv οπως αναφερω απο το πρωτο μου ποστ δεν μπορω να κανω δουλεια?μου βγαζει unsported format και

Win32 LoadLibrary failed to load: wmavds32.ax, /usr/lib/win32/wmavds32.ax, /usr/local/lib/win32/wmavds32.ax

Warning: DS_Filter() could not open DirectShow DLL. (DLL=wmavds32.ax, r=0x92bb03a)

ERROR: Could not open required DirectShow codec wmavds32.ax.

ADecoder preinit failed :(

ADecoder init failed :(

Cannot find codec for audio format 0xA.

υγ εψαξα να βρω το κςδικα να το βαλω μεσα στα lib/win32 αλλα δεν τον βρηκα αν και δεν νομιζω να γινει κατι

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Οταν λες "κωδικοποιηση" εννοεις "συμπιεση" ετσι?

Ναι (συμπίεση συνήθως τη λέμε αν μας ενδιαφέρει να τονίσουμε ότι τα δεδομένα που κωδικοποιήσαμε έχουν μικρότερο όγκο από τα αρχικά).

 

Αρα θα μπορουσα το ιδιο απλα αντι για avi arxeio να δημιυργησω και .mpg/.mpeg με τον ιδιο τροπο?

Το MPEG container format δεν υποστηρίζει MPEG-4 codecs, μόνο MPEG-1 και MPEG-2. Αλλά λογικά θα μπορούσες σε MP4 format.

 

επισης γιατι οταν επανασυμπιεζουμε ενα βιντεο χανουμε σε ποιοτητα?

 

Οι αλγοριθμοι δεν ειναι lossless?

Όχι' date=' είναι lossy.

 

Δηλαδη ο αλγοριθμος συμπιεσης βασιζεται πανω σε εναν αλλον αλγοριθμο?

Αν και όσα γράφουν μπορούν άμεσα να εφαρμοστούν σε αλγορίθμους (και συνήθως συνοδεύονται από κάποιο "Reference Implementation"), τα ίδια τα standards δεν είναι αλγόριθμοι, περιγράφουν αναλυτικά κάποιες αρχές και διαδικασίες τις οποίες μπορούν να εφαρμόσουν οι υλοποιήσεις για να έχουν κάποιο αποτέλεσμα.

 

μπορεις να μου πεις τι παιζει σε μενα και για flv οπως αναφερω απο το πρωτο μου ποστ δεν μπορω να κανω δουλεια?μου βγαζει unsported format και

[...]

Win32 LoadLibrary failed to load: wmavds32.ax' date=' /usr/lib/win32/wmavds32.ax, /usr/local/lib/win32/wmavds32.ax[/quote']

Όπως φαίνεται από το μήνυμα, το συγκεκριμένο αρχείο που προσπαθείς να αποκωδικοποιήσεις έχει ήχο κωδικοποιημένο με τον "Windows Media Audio Voice" codec και χρειάζεται κάποιος decoder με το όνομα "wmavds32.ax".

 

Αν δώσεις στο google κάτι σαν:

>allinurl:wmavds32.ax

θα βρεις το συγκεκριμένο αρχείο, οπότε μπορείς να το αποθηκεύσεις σε μια από τις τοποθεσίες που αναφέρει το μήνυμα (π.χ. /usr/local/lib/win32).

 

http://www.googleguide.com/advanced_operators_reference.html

http://www.googleguide.com/using_advanced_operators.html

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Mαααλιστα!

 

Δηλαδη δεν υποστηριζουν ολα τα containers ολους τους codecs.

 

Αν ηθελα φιλε nske να μετρεψω το matroska file που εχω σε dvd structure αντι για .avi θα μπορουσε ο mencoder ακομη και αυτο να μου κανει?

 

Γενικα o mencoder βασιζεται πανω στο ffmpeg, το οποιο να υποθεσω ειναι συνολο απο codecs(open και proprietary)οι οποιοι ειναι απαραιτητοι να υπαρχουν στο συστημα για να κανει ο mencoder την δουλεια τος αλλιως δεν δουλευει?

 

Γενικα τωρα, αν σβησω το ubuntu και το ξαναβαλω τι ακριβως θα πρεπει να κατεβασω απο το συναptic για να μπορω να κανω τις παραπανω δουλειες?

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

μπα τιποτα δεν βγαζει κανενα αποτελεσμα

δεν το βρισκω

 

Μήπως έχεις βάλει κάποια φίλτρα στις ρυθμίσεις του Google;

 

Σε μένα, δεύτερο αποτέλεσμα:

ftp://213.144.138.186/MPlayer/samples/drivers32/wmavds32.ax

 

Αν ηθελα φιλε nske να μετρεψω το matroska file που εχω σε dvd structure αντι για .avi θα μπορουσε ο mencoder ακομη και αυτο να μου κανει?

Το DVD προβλέπει MPEG-2 ή MPEG-1 encoded video και WAV/DTS/MP2/AC3 audio, οπότε θα χρειαστείς επανακωδικοποίηση, την οποία ο mencoder μπορεί να κάνει με χρήση του libavcodec.

 

Γενικα o mencoder βασιζεται πανω στο ffmpeg, το οποιο να υποθεσω ειναι συνολο απο codecs(open και proprietary)οι οποιοι ειναι απαραιτητοι να υπαρχουν στο συστημα για να κανει ο mencoder την δουλεια τος αλλιως δεν δουλευει?

Χωρίς το libavcodec που είναι μέρος του FFMPEG η χρησιμότητα του mencoder και του mplayer θα ήταν πολύ πιο περιορισμένη, γιατί δε θα υποστήριζε σχεδόν καμία κωδικοποίηση. Αλλά ακόμη θα μπορούσε π.χ. να αποθηκεύσει ασυμπίεστο το video και τον ήχο από ένα tvtuner ή μια webcam.

 

Γενικα τωρα, αν σβησω το ubuntu και το ξαναβαλω τι ακριβως θα πρεπει να κατεβασω απο το συναptic για να μπορω να κανω τις παραπανω δουλειες?

Δεν ξέρω πώς έχει χωρίσει και ονομάσει τα πακέτα το Ubuntu, αν βάλεις τον mplayer και τους win32codecs, τα υπόλοιπα μάλλον θα μπουν ως dependencies.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Μαλιστα, μπορεις να μου δωσεις την εντολη για να μετατρεψω το matroska που εχω σε mpeg2? σε dvd δηλαδη?

 

Με copy των streams δεν πρεπει να γινεται γιατι παραπανω ειπες πως

 

"Το MPEG container format δεν υποστηρίζει MPEG-4 codecs, μόνο MPEG-1 και MPEG-2."

 

οποτε εγιαρεται καιτ ο ερωτημα του πως θα γνωριζουμε τι φορματς υποστηριζει ή οχι το καθε container.

 

---------- Το μήνυμα προστέθηκε στις 18:16 ----------

 

Α απαντησε μου καισ ε αυτο που ρωτησα πιο πριν:

 

Γενικα o mencoder βασιζεται πανω στο ffmpeg, το οποιο να υποθεσω ειναι συνολο απο codecs(open και proprietary)οι οποιοι ειναι απαραιτητοι να υπαρχουν στο συστημα για να κανει ο mencoder την δουλεια του.

 

Αυτη η δηλωση ειανι σωστη που εκανα?

 

Γενικα δηλαδη ο mencoder ειναι το προγραμμα που χρησιμοποιει τους αλγοριθμους κωδικοποιησηες που περιεχονται στο ffmpeg?

 

Σωστα τα καταλαβα?

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Μαλιστα, μπορεις να μου δωσεις την εντολη για να μετατρεψω το matroska που εχω σε mpeg2? σε dvd δηλαδη?

 

Θα είναι κάπως έτσι:

>$ mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd:tsaf -vf scale=720:576,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:vstrict=0:acodec=ac3:abitrate=192:aspect=16/9 -ofps 25 -o target.mpg source.mkv

Φυσικά υπάρχουν πολλές επιλογές (τις εξηγεί ακριβώς στο documentation και την man page του mplayer). Αν θέλεις να το γράψεις σαν dvd, μετά την κωδικοποίηση θα πρέπει να χρησιμοποιήσεις ένα πρόγραμμα σαν το dvdauthor.

 

οποτε εγιαρεται καιτ ο ερωτημα του πως θα γνωριζουμε τι φορματς υποστηριζει ή οχι το καθε container.

http://en.wikipedia.org/wiki/Comparison_of_container_formats

 

Γενικα o mencoder βασιζεται πανω στο ffmpeg' date=' το οποιο να υποθεσω ειναι συνολο απο codecs(open και proprietary)οι οποιοι ειναι απαραιτητοι να υπαρχουν στο συστημα για να κανει ο mencoder την δουλεια του.

 

Αυτη η δηλωση ειανι σωστη που εκανα?[/quote']

Οι codecs παρέχονται από τη libavcodec, που συμπεριλαμβάνεται στο ffmpeg. Το ffmpeg περιέχει και άλλες βιβλιοθήκες.

http://en.wikipedia.org/wiki/FFmpeg

 

Γενικα δηλαδη ο mencoder ειναι το προγραμμα που χρησιμοποιει τους αλγοριθμους κωδικοποιησηες που περιεχονται στο ffmpeg?

Ο mencoder/mplayer και το ffmpeg είναι ανεξάρτητα projects, απλά ο mplayer/mencoder χρησιμοποιεί τις βιβλιοθήκες του ffmpeg για συγκεκριμένες δουλειές όπως η κωδικοποίηση και αποκωδικοποίηση video/ήχου.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ευχαριστω παρα πολυ για το χρονο σου και τις λεπτομερεις εξηγησεις nske. να εισαι καλα?

 

μονο κατι τελευταιο.

ποιο frondend θα χρησιμοποιουσες για αυτες τις ματραοπες για να γλυτωνω τοσα πολλα optioms?

 

ειδα το τελευταιο που κανει dvd και τρομαξα.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

εγω παντως θα ηθελα να μαθω πως γινεται να παρω το βιντεο μου χωρις ηχο χωρις να χαθει ποιοτητα...γιατι οπως το κανω....ffmpeg -i name.avi -an name1.avi χανεται..

οχι δεν ειχα φιλτρα

δεν ξερω τι εγινε ευχαριστω παντως...αν και συνεχιζω να παιρνω το ιδιο μυνημα...δεν το μετατρεπει..

και με τον mencoder παιρνω συνεχεια αυτο

1 duplicate frame(s)!

[flv @ 0x8721b48]Unsupported video codec (7) 0min 4mb A-V:-0.040 [153:0]

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Θα είναι κάπως έτσι:

>$ mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd:tsaf -vf scale=720:576,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:vstrict=0:acodec=ac3:abitrate=192:aspect=16/9 -ofps 25 -o target.mpg source.mkv

Αν θέλεις να το γράψεις σαν dvd, μετά την κωδικοποίηση θα πρέπει να χρησιμοποιήσεις ένα πρόγραμμα σαν το dvdauthor.

 

Συγνωμη που σε κουραω συνεχιζοντας το thread αλλα το avi container format που παρηγαμε με την αντιγραφη των streams απο το matroska container στο οποιο ητανε, δυστυχως αν και πεζει στο pc(μονο με mplayer kai oxi me to frond-end tou to smplayer, to opoio omws pezei me epityxia alla .avi), δεν παιζει στην φετα.

 

Υπαρχει περιπτωση το .avi που δημιουργηθηκε να μην ειναι σωστο?

Υπαρχει τροπος να ελεγχουεμ το validity του?

 

Οποτε θα πρεπει να το κανω dvd to .avi(αν ειναι σωστο!) και το δοκιμαζω αυτην την στιγμη με την παραπνω εντολη σιδηροδρομο :-)

 

Καποιο πιο ευκολο gui δεν υπαρχει γιαυτην την μετατροπη φιλε nske?

 

---------- Το μήνυμα προστέθηκε στις 16:07 ----------

 

το παραγομενοα ρχειο απο αυτην την διαδικασια θα ειναι το target.mpg ετσι?

 

Αυτο ομως δεν ειναι φορμα ενος dvd structure, γιατιο δεν το παραγει ετσι το mencoder?

 

Το Dvd authoer μετα παιρνει το παραπανω αρχειο και το γραφει σε δισκακι ως dvd structure?

 

---------- Το μήνυμα προστέθηκε στις 20:05 ----------

 

Με τη μια και την αλλη μετατροπη κατεληξα να εχω:

 

>
nikos@dell:/media/Downloads/Νίκος$ mkvmerge -i Out_of_Sight.mpg 
File 'Out_of_Sight.mpg': container: MPEG 2 program stream (PS)
Track ID 0: video (MPEG-2)
Track ID 1: audio (AC3)
nikos@dell:/media/Downloads/Νίκος$ mkvmerge -i Out_of_Sight_1.avi 
File 'Out_of_Sight_1.avi': container: AVI
Track ID 0: video (DX50)
Track ID 1: audio (MP3)
nikos@dell:/media/Downloads/Νίκος$ mkvmerge -i Out_of_Sight_2.avi 
File 'Out_of_Sight_2.avi': container: AVI
Track ID 0: video (avc1)
Track ID 1: audio (AC3)
nikos@dell:/media/Downloads/Νίκος$ 

 

To τελαυταιο .avi δεν παιζει σε φετα, το προτελευαιοδ εν ξερω.

 

Αυτα τι ειναι? Διαφορετικα video codecs μεσα στο .avi container?

 

Τελικα το εκανα και .mpg το οποιο δεν εχει υποτιτλους, τους εχω εξωτερικα.

 

Πως θα γινει να γινει dvd και να εχει και υποτιτλους μαζι?

 

Το Devede οταν του δινω το .mpg για να παραγει dvd file structure πεταει error εμ παραξενους χαρακτηρες.

 

Πως θα κανω την μετατροπη?

 

---------- Το μήνυμα προστέθηκε στις 21:30 ----------

 

nske μπορει να βοηθησεις λιγο ακομη please?!

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Υπ' όψιν ότι η τοποθέτηση H.264 video stream (όπως είναι το τελευταίο από τα αρχεία που δείχνεις στο post σου και φαίνεται από το avc1 FOURCC code) μέσα σε AVI container δεν προβλέπεται από τα AVI specifications.

 

Αλλά ακόμη κι έτσι να μην ήταν, είσαι σίγουρος ότι το standalone player σου μπορεί να αποκωδικοποίησει τέτοια video streams; Μόνο πολύ πρόσφατα players (όπως WD TV, TviX κλπ) υποστηρίζουν κάτι τέτοιο. Τα απλά MPEG-4 συμβατά DVD players παίζουν συνήθως AVI με MPEG-4 ASP video (και όχι MPEG-4 AVC/Part 10)...

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.


  • Δημιουργία νέου...