720p Pal resizen

  • Ich habe ein film in 720p, 25.000 fps, 16:9 und möchte es gerne konvertieren mit HCen und zugleich Resizen von 1280*... nach 720*576 damit es den DVD standards entspricht.
    wie lautet den das AviSynth script?


    das script hier:

    Code
    AVCSource("Pfad_zur_DGA_datei.dga", deblock=true)Lanczos4Resize(720,370)AddBorders(0,55,0,55)AssumeFPS(23.976)

    ist ja speziell für NTSC videos dann muss das hier für PAL sein:

    Code
    AVCSource("Pfad_zur_DGA_datei.dga", deblock=true)
    Lanczos4Resize(720,470)
    AddBorders(0,53,0,53)
    AssumeFPS(25.000)

    oder irre ich mich?

    -danke

  • Generic PAR

    Zitat

    AVCSource("Pfad_zur_DGA_datei.dga", deblock=true)
    Lanczos4Resize(720,576)


    ITU 601 PAR

    Zitat

    AVCSource("Pfad_zur_DGA_datei.dga", deblock=true)
    Lanczos4Resize(704,576)
    addborders(8,0,8,0)

  • AVCSource nimmt an (weil die Dateien diese Information überhaupt nicht enthalten), dass rohe AVC-Videodaten 25 fps haben. Bei PAL-Vorlagen ist das doch genau richtig. AssumeFPS braucht man nach AVCSource nur dann, wenn's nicht 25 fps sein sollen.
    __

    Über "ITU vs. Generic" haben sich in den letzten Jahren Generationen von Videospezialisten gestritten. Kaum zu glauben, dass du da nichts findest -- wenn du nur suchst...

    ITU = Millisekunden-Signaltimings aus der Fernsehtechnik bestimmen die Zeilenbreite (wie beim analogen Video-Capturing zu erwarten)

    Generic = Zeilenbreite ist egal, bei der Wiedergabe wird immer auf Zielbreite entzerrt (wie in der MPEG2-Spezifikation beschrieben)

    Wenn du 704 Pixel breite Videos erzeugst (ist auf DVD auch erlaubt), stimmen beide bis auf vernachlässigbare Promille-Abweichungen überein; ansonsten würde ich Generic-PAR empfehlen (gesamte Bildbreite auf volle 720 Pixel stauchen), weil bei HDTV das Seitenverhältnis nicht von Fernsehsignalen abhängt... das ist aber nur "meine Meinung".

  • AVCsource "liest" die Framerate aus dem mittels DGAVCindex erzeugtem .dga File.

    Assumefps brauchst du nur dann wenn du die Framerate ändern willst.

  • Okay - meine Information stammt noch aus Zeiten, als DGAVCIndex.exe nur Rohdaten lesen konnte; heute ist das Verarbeiten von z.B. Transport-Streams mit AVC-Video möglich, und da kann DGAVCIndex.exe die Framerate sicherlich aus den TS-Headern erkennen.

  • [FONT=TimesNewRoman,Bold][FONT=TimesNewRoman,Bold][FONT=TimesNewRoman,Bold][FONT=TimesNewRoman,Bold]Framerate steht im Sequence Parameter Set, VUI Parameter des Elementarstreams[/FONT][/FONT][/FONT][/FONT]
    [FONT=TimesNewRoman,Bold][FONT=TimesNewRoman,Bold][FONT=TimesNewRoman,Bold]

    Zitat


    [FONT=TimesNewRoman,Bold][FONT=TimesNewRoman,Bold][FONT=TimesNewRoman,Bold][FONT=TimesNewRoman,Bold][FONT=TimesNewRoman,Bold]num_units_in_tick [/FONT][/FONT]is the number of time units of a clock operating at the frequency time_scale Hz that corresponds to one increment (called a clock tick) of a clock tick counter. num_units_in_tick shall be greater than 0. A clock tick is the minimum interval of time that can be represented in the coded data. For example, when the clock frequency of a video signal is 30000/1001 Hz, time_scale may be 30 000 and num_units_in_tick may be 1001. See Equation C-1. 

    [FONT=TimesNewRoman,Bold][FONT=TimesNewRoman,Bold]time_scale [/FONT][/FONT]
    is the number of time units that pass in one second. For example, a time coordinate system that measures time using a 27 MHz clock has a time_scale of 27 000 000. time_scale shall be greater than 0.


    [/FONT][/FONT][/FONT]

    [/FONT]
    [/FONT][/FONT]


  • Und warum haben dann manche Tools AVC-Rohdaten nicht korrekt behandeln können? ... :rolleyes:

    Soweit ich weiß, sind VUI Parameter nicht Pflicht. Sogesehen kann es auch vorkommen, dass "num_units_in_tick" und "time_scale" nicht vorhanden sind.
    Ist dann zu erkennen an "timing_info_present_flag=0"

    Code
    timing_info_present_flag equal to 1 specifies that num_units_in_tick, time_scale and fixed_frame_rate_flag are present 
    in the bitstream. timing_info_present_flag equal to 0 specifies that num_units_in_tick, time_scale and fixed_frame_rate_flag are not
    present in the bitstream.

    Spätestens, wenn variable Framerates ins Spiel kommen, dürften diese Parameter ohnehin sinnlos werden. Informationen zur Framerate müßten dann bei bspw. Transportstreams in jedem Paketheader enhalten sein, oder spätestens in einem vorangehenden Paket vor einem Frameratewechsel. Allerdings muss ich gestehen, dass ich, im Gegensatz zu diesem jungen Mann, selbst einen solchen Stream noch nie zu Gesicht bekommen habe.

    greets
    LTJ

  • Hm, also die PAL Timings sagen genau aus, wie lang das aktive PAL Bild (also der Bereich, wo das 4:3 oder 16:9 Signal reinkommt) ist: 52,000µs und das entspricht in Pixel umgerechnet (haar)genau 702 Pixeln.
    Und da man bei Square-Pixel Sources wie HDTV immer nur genau den aktiven Bildausschnitt hat, muss man diesen auch nur genau auf den aktiven Bildausschnitt für PAL bringen (702, und weil zur Komprimierung nur 704 und 720 in Frage kommen den Rest mit schwarz füllen). Wird die so gemachte DVD am DVD-Player wieder in ein analoges Signal für den TV gewandelt, hält der sich nämlich auch an genau dieses Timing (720 Pixel werden immer mit einer Zeilenlänge von 53,333µs ausgegeben, nicht 52,000µs, entsprechen also auch den digitalen 720 Pixeln - wenn das wieder mit 720 Pixeln digitalisiert wird, würde es 1:1 übereinstimmen).

    Alles was ich darüber weiß habe ich über Jahre hinweg selber nachgeprüft und überprüft, und kann nur sagen: so stimmt es.
    Eine sehr kompetente Internetseite, die sich mit dieser Thematik genaustens (Herleitungen mit den Timings!) beschäftigt und absolut korrekt und genau ist: Klick.


    Das korrekte Resizen in deinem Fall sieht in AviSynth dann so aus:

    Wenn 720x576 in 4:3 letterboxed rauskommen soll:

    Code
    LanczosResize(702,432)addborders(9,72,9,72)

    Wenn 720x576 in 16:9 anamorph rauskommen soll:

    Code
    LanczosResize(702,576)
    addborders(9,0,9,0)

    Klar, am PC ist kein Player (von alleine) schlau genung programmiert, das korrekt zu entzerren, die ziehen immer den gesamten Bildinhalt des MPEG2s entweder auf 4:3 oder 16:9, je nachdem, was im Header steht, aber für die Wiedergabe am TV stimmt das so alles.

  • Hi bin neu hier und versuche mich nun schon seit 1 Monat an einer vernünftigen hd2dvd...Bis jetzt klappt alles ganz gut, das einzige problem was ich habe trat bei der ersten selbst erstellten hd2dvd auf...Eierköpfe
    Fehler gesucht...und dann kam ich auf die add Border geschichte...Leider lese ich überall etwas anderes, so auch hier....Beispiel @ spiller...wie kommst du auf die Border grösse bei 16/9???

    Mal ein Beispiel von mir...aktuell:

    Stream Type: AVC Elementary
    Profile: High
    Level: 4
    Frame Size: 1920x1080
    SAR: Unspecified
    Display Size:
    Frame Rate: 23.975986 fps


    Mein AVS script dazu:

    ConvertToYV12()
    AssumeFPS(25.000)
    AddBorders(0,2,0,2)
    Lanczos4Resize(704,576)

    Sieht im Ergebniss ganz gut aus........Berechnet habe ich die Borders mit :
    sourceheight(1080)*0.53+2=574.4!!!
    Also differenz von 574 zu 576 ist 2, somit border 0.2.....
    hmm, bin mir absolut unsicher durch diese tausende von Meinungen darüber...

    Ist das so korrekt????
    Bitte um KOMPETENTE Hilfe,,,Vielen Dank schonmal im Vorraus

    1. Die besten Schnappschüsse ergeben sich sofort, nachdem der Film voll ist.
    2. Die zweitbesten Schnappschüsse scheitern am Linsendeckel.
    3. Alle übrigen Schnappschüsse werden ruiniert, da jemand ahnungslos die Tür zur Dunkelkammer öffnet.

  • Warum "berechnest" du die Höhe? SD-PAL hat 576 (sichtbare in 625 technischen) Zeilen, seit die PAL-Fernsehnorm in den sechziger Jahren entwickelt wurde. Die sollte man wohl besser als Fakt nehmen.

    http://de.wikipedia.org/wiki/Phase_Alternating_Line

    Die dem "Ideal" von 702 Pixeln (wegen 52,0 µs) am nächsten liegende, durch 16 teilbare Auflösung (nützlich für MPEG-Makroblöcke) wäre 704 Pixel Breite; die Abweichung des Seitenverhältnisses von 2/702 Pixeln ~ 0,3 % der Breite sollte vernachlässigbar gering sein, hilft allerdings der Komprimierbarkeit.

  • Hmmm, ok...dachte ich muss vorher resizen und dann die borders anfügen....Oh mann bin ich verwirrt...
    Also ist mein obiges project 1920*1080 so auch korrekt???

    ConvertToYV12()
    AssumeFPS(25.000)
    AddBorders(0,2,0,2)
    Lanczos4Resize(704,576)

    Das ergebniss sieht auf jeden Fall Klasse aus,,nichts gestaucht etc...
    Bei 1080P habe ich keine Probleme mehr, nur bei 720P kriege ich manchmal eierköpfe.....
    Vielleicht kannst du mir helfen, es geht sich um:

    Stream Type: AVC Elementary
    Profile: High
    Level: 4.1
    Frame Size: 1280x536
    SAR: Unspecified
    Display Size:
    Frame Rate: 23.975986 fps
    Colorimetry: BT.709* [2]
    Frame Structure: Frame
    Frame Type: not yet
    Coded Number: 147077
    Playback Number: 147077
    Frame Repeats: 0
    Field Repeats: 0
    Bitrate: 0.071
    Bitrate (Avg): 5.545
    Bitrate (Max): 17.201
    Elapsed: 0:02:49
    Remain: 0:00:00
    FPS:
    Info: Finished!


    Wie sieht hier das script aus? Wie berechne ich die Border generell?? Ich dacht so:

    ConvertToYV12()
    AssumeFPS(25.000)
    AddBorders(0,40,0,40)
    Lanczos4Resize(720,576)

    Beim ergebniss kriege ich aber ein gestauchtes bild....hmm muss ich hier auch Lancozresize auf 704*576 stellen? (dachte das brauche ich nur bei 1080P )

    BTW habe das gefühl das ich bei jedem 720*576 resize Eierköpfe im Ergebniss habe...
    Wie auch immer ich hoffe du kannst mir helfen, scheinst ja bissl mehr ahnung zu haben....

    VIELEN DANK im VORRAUS
    VG Willensstark

    1. Die besten Schnappschüsse ergeben sich sofort, nachdem der Film voll ist.
    2. Die zweitbesten Schnappschüsse scheitern am Linsendeckel.
    3. Alle übrigen Schnappschüsse werden ruiniert, da jemand ahnungslos die Tür zur Dunkelkammer öffnet.

    Einmal editiert, zuletzt von Rippraff (9. Dezember 2008 um 15:04) aus folgendem Grund: Full-Quote entfernt

  • Habe es geschafft....bzw FITCD!!! Gibts mittlerweile als Freeware in der v1.2.8
    ch habe in der Faq nix gelesen deswegen poste ich mal den link zu fitcd, falls nicht ok bitte löschen.....

    http://www.softpedia.com/progDownload/F…load-81305.html

    1. Die besten Schnappschüsse ergeben sich sofort, nachdem der Film voll ist.
    2. Die zweitbesten Schnappschüsse scheitern am Linsendeckel.
    3. Alle übrigen Schnappschüsse werden ruiniert, da jemand ahnungslos die Tür zur Dunkelkammer öffnet.

    Einmal editiert, zuletzt von Willensstark (7. Dezember 2008 um 20:17)

  • Deinen Fragen nach zu urteilen hast du generell das Thema anamorphes Encoding und speziell anamorphes DVD-Encoding nicht verstanden.
    Brother John hat genau das hier
    http://encodingwissen.de/video/anamorph.html
    sehr ausführlich erklärt, allerdings in der Richtung DVD -> MPEG4.
    Wenn du das begriffen hast, musst du einfach nur rückwärts rechnen.

    Deine Quelle:
    Auflösung: 1280x536
    FPS: 23.976
    PAR: 1:1 (angenommen)
    AR: 16:9 (angenommen)

    Dein Ziel ist ne DVD.
    Jetzt kannst du schonmal überlegen ob es "sinniger" ist eine NTSC oder PAL DVD zu erstellen. Deine Quell-Bildrate ist 23.976. NTSC braucht 29.970, PAL hingegen 25.000 fps.
    Willst du eine PAL DVD erstellen, heißt das im Klartext, dass du einen Speedup für den Videostream und den Audiostream (verlustbehaftet) machen musst.
    Für NTSC kannst du die Tonspur 1:1 übernehmen, aber wirst ein Telecine-Verfahren (3:2-Pulldown) anwenden, oder zu 29.970 fps voll interlaced encoden müssen. Letzteres verschwendet Bitrate, ein 3:2-Pulldown erzeugt leichtes Rucklen bei Kameraschwenks.
    Jeder Weg hat also Vor- und Nachteile, die du erstmal für dich gegeneinander abwägen mußt.
    Deine Wahl wirkt sich dann automatisch darauf aus, wie deine Auflösung zu berechnen ist.

    Beispiel für NTSC (720x480):
    1280x536 (Quelle)
    1145,27x480 (Dreisatz)
    945,67x480 (Video stauchen -> PAR-Tabelle -> NTSC -> 16:9 -> Faktor 40/33)
    720x365,45 (reine Bildfläche)
    720x368(gerundet -> vertikaler AR-Fehler von ~0,7% (gestreckt))
    720x364(gerundet -> vertikaler AR-Fehler von ~0,4% (gestaucht))

    Borders:
    480-364 = 116 -> 58 oben und unten


    Reine Bildfläche resizen, dann Borders drankleben.
    => Script:
    DeineQuelle(...)
    resizefilter(720,364)
    Addborders(0,58,0,58)

    ----------

    Beispiel für PAL (720x576):
    1280x536 (Quelle)
    1375,52x576 (Dreisatz)
    945,67x576 (Video stauchen -> PAR-Tabelle -> PAL -> 16:9 -> Faktor 16/11)
    720x438,54,(reine Bildfläche)
    720x436(gerundet -> vertikaler AR-Fehler von ~0,6% (gestaucht))
    720x440(gerundet -> vertikaler AR-Fehler von ~0,33% (gestreckt))

    Borders:
    576-440 = 136 -> 68 oben und unten

    Reine Bildfläche resizen, dann Borders drankleben.
    => Script:
    DeineQuelle(...)
    resizefilter(720,576)
    Addborders(0,68,0,68)

    ----------

    Du kannst das Ganze auch für 704x480/576 durchrechnen, aber dann wird die effektive Bildfläche kleiner und die Balken werden größer.

    greets
    LTJ

  • Ich blicke da einfach nicht durch....heul
    Bin nicht der allerschlechteste in mathe, ist aber lange her...Im klartext: Ich verstehe nix!
    Kannst du mir EINMAL den ganzen rechen weg aufschreiben????
    Das Project oben ist abgehackt, Hänge seit stunden hier dran:

    Stream Type: AVC Elementary
    Profile: High
    Level: 4.1
    Frame Size: 1280x720
    SAR: Unspecified
    Display Size:
    Frame Rate: 23.976024 fps
    Colorimetry: BT.709* [2]
    Frame Structure: Frame
    Frame Type: not yet
    Coded Number: 137425
    Playback Number: 137425
    Frame Repeats: 0
    Field Repeats: 0
    Bitrate: 0.013
    Bitrate (Avg): 4.918
    Bitrate (Max): 31.300
    Elapsed: 0:02:24
    Remain: 0:00:00
    FPS:
    Info: Finished!

    Ich möchte eine PAL dvd daraus machen, und wie ich das jetzt verstanden habe geht das also auch nach 720*576...richtig??? Ohne eierköpfe etc.???
    Dann bitte sage mir einmal den ganzen Rechenweg um an die border grössen zu kommen...Bitte man, du bist meine letzte hoffnung!!omg
    Ton speedup etc komme ich mit klar ...es sind nur diese border...oO

    1. Die besten Schnappschüsse ergeben sich sofort, nachdem der Film voll ist.
    2. Die zweitbesten Schnappschüsse scheitern am Linsendeckel.
    3. Alle übrigen Schnappschüsse werden ruiniert, da jemand ahnungslos die Tür zur Dunkelkammer öffnet.

  • Die Rechnung ist doch komplett ausführlich oben beschrieben. :huh:
    Was genau an welcher Stelle ist da denn noch unklar?
    Hast du das Kapitel "Anamorphes Encoding" aus dem Encodingwissen gelesen?

    greets
    LTJ

  • Das:

    1280x536 (Quelle)
    1145,27x480 (Dreisatz)????? wo? die ersten 2 zeilen?
    945,67x480 (Video stauchen -> PAR-Tabelle -> NTSC -> 16:9 -> Faktor 40/33)Verstehe ich garnicht sorry, das mit dem Faktor....oO
    720x365,45 (reine Bildfläche)


    Aber es scheint so als hiesse meine Lösung " THE FILMMACHINE"...Im grunde genommen nur ein GUI fürs encodieren mit avisynth,HC,aften etc, aber die AR sowie fps und ob es cropped sein soll oder Border ran sollen kann man im Prog ganz einfach einstellen....Klappt soweit super!!

    Das Prog ist Freeware!!!!


    BTW was ist denn deiner Meinung nach besser vom Bild her? bei 23.976. fps bleiben oder 25 bzw 29.. wechseln??

    1. Die besten Schnappschüsse ergeben sich sofort, nachdem der Film voll ist.
    2. Die zweitbesten Schnappschüsse scheitern am Linsendeckel.
    3. Alle übrigen Schnappschüsse werden ruiniert, da jemand ahnungslos die Tür zur Dunkelkammer öffnet.

    Einmal editiert, zuletzt von Willensstark (7. Dezember 2008 um 22:07)

  • Ok gerafft......oO wahr wohl schon sehhhhhr lang sehr...lol:

    BSP---720*576 PAL

    hor. Wiedergabeauflösung = hor. DVD-Auflösung×PAR
    ALSO
    hor. Wiedergabeauflösung = 720×16/11 ≈ 1047,27


    Und für meinen Fall dann halt umgekehrt rechnen...ok, aber erklär mir mal wie du auf:


    1280x536 (Quelle)
    1145,27x480 (Dreisatz)
    945,67x480 (Video stauchen -> PAR-Tabelle -> NTSC -> 16:9 -> Faktor 40/33)

    Dieses ergebniss kommst....schreib mir mal die formel auf bitte....Danke

    VG

    1. Die besten Schnappschüsse ergeben sich sofort, nachdem der Film voll ist.
    2. Die zweitbesten Schnappschüsse scheitern am Linsendeckel.
    3. Alle übrigen Schnappschüsse werden ruiniert, da jemand ahnungslos die Tür zur Dunkelkammer öffnet.

    Einmal editiert, zuletzt von Willensstark (7. Dezember 2008 um 22:24)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!