Autocrop wählt nicht die gesamten schwarzen Balken aus

Anfragetyp:
BUG / NEUES FEATURE
Bug?
MCEBuddy-Version und Typ (32bit oder 64bit):
aktuelle 64bit / 2.5.1
Betriebssystem und Typ (32bit oder 64bit):
Win10 x64
Zusammenfassung des Problems oder Vorschlags:
Crop funktioniert nicht (oder die Crop-Werte werden nicht korrekt erkannt)
Schritte zur Reproduktion des Fehlers:
TV-Film als TS heruntergeladen, Versuch der Konvertierung als TS (H.264/AC3) mit gesetztem „Cropping aktivieren“-Flag, keine Änderungen in profile.conf
Screenshots:

Ich habe mit ffplay Crop-Werte ermittelt, und es zeigte (ffplay -i „In guten wie in schweren Tagen.ts“ -vf „cropdetect=24:16:0“)

x1:1 x2:719 y1:58 y2:505 w:704 h:448 x:10 y:58 pts:556519 t:6.183544 crop=704:448:10:58

Screenshot der Original-Datei und der Datei mit ffplay und Crop-Werten 704:448:10:58 angehängt

Log-Datei zeigt folgendes:
2019-11-09T20:52:16 MCEBuddy.AppWrapper.Handbrake → + autocrop: 38/70/2/0

Kannst du helfen?


In guten wie in schweren Tagen.ts-Remove Ads-2019-11-09T20-49-52.1155442 01-00.log|Anhang (1,1 MB)

Handbrake führt automatisches Zuschneiden durch

INFORMATION> 2019-11-09T20:52:15 MCEBuddy.Transcode.ConvertWithHandbrake → Handbrake Auto-Video-Zuschneiden

Du kannst deinen Encoder auf order=ffmpeg umstellen, wenn du möchtest, dass ffmpeg das Zuschneiden erkennt, oder du kannst ein benutzerdefiniertes Profil mit deinen eigenen Zuschneideparametern erstellen.

Danke Goose,

werde es mit ffmpeg versuchen.

Aber erlaube mir zu fragen, wie würde dieses Profil aussehen? Wie würde ich die Parameter für das Zuschneiden korrekt übergeben?

Hier hält mich unser TV-Anbieter ganz schön auf Trab, da einige Sendungen während des Programms die Auflösung wechseln (am bekanntesten von Top Gear). Ich stellte fest, dass -ss 600 ein recht guter Wert ist, um mit ffmpeg zu suchen. Aber wie würde sich das auf ein Profil anwenden?

Vielen Dank

Die meisten Stock-Profile verwenden sowohl Handbrake als auch FFmpeg (als Fallback), aber die Reihenfolge variiert, sodass ein einfaches Wechseln möglich ist.

In deinem Fall:
→ Verwendetes Profil: TS
→ order=handbrake,ffmpeg

Die Encoder-Profile für FFmpeg und Handbrake sind bereits in deinem Profil enthalten. Erstelle einfach eine Kopie deines TS-Profils (oder ändere es) und ändere

order=handbrake,ffmpeg

zu

order=ffmpeg,handbrake

Danke Goose,

ich habe die Reihenfolge also geändert und zuerst ffmpeg verwendet, aber ich befürchte, dass der Crop-Vorgang immer noch nicht gut erkennt, da oben und unten immer noch schwarze Balken vorhanden sind. Etwas weniger, aber immer noch sehr sichtbar. Ich denke, ich werde manuell zuschneiden, es sei denn, du hast noch einen weiteren Rat für mich.

Danke

Ich habe bemerkt, dass dein Kanal-Logo sich in den schwarzen Balken-Bereich erstreckt, weshalb das automatische Zuschneiden vermutlich niemals den gesamten Balken erfassen wird. Es erkennt Videoinhalt, und das Zuschneiden erfolgt tendenziell symmetrisch. Wenn du den gesamten Bereich entfernen möchtest, einschließlich eines Eingriffs in das Logo, musst du dies über ein benutzerdefiniertes Profil mit einer benutzerdefinierten Zuschneideauswahl tun (und das automatische Zuschneiden in MCEBuddy deaktivieren, damit es deine Einstellungen nicht überschreibt).

Hi Goose,

danke für deine Antwort. Für das obige Video hast du recht. Leider habe ich es mit einem anderen versucht, bei dem das Logo nicht bis in den schwarzen Balken oben reicht (vollständig innerhalb des eigentlichen Videos). Die schwarzen Balken waren leicht beschnitten, aber es war noch ein Teil des schwarzen Balkens vorhanden (etwa 50 %).
Die Zuschneidewerte hinzuzufügen ist nicht so sehr das Problem. Das Komfortable wäre gewesen, die Zuschneidewerte automatisch an MCEBuddy zu übergeben, was eine manuelle Aufgabe ist :slight_smile:
Danke
Bernd

So funktioniert es: MCEBuddy durchsucht den Videostream nach reinen schwarzen Balken; wenn auch nur ein Pixel nicht schwarz ist, wird es als Video gewertet. Ich vermute also, dass irgendwo im Verlauf des Videos diese Balken nicht schwarz sind, und daher entfernt der automatische Zuschnitt sie zur Sicherheit nicht.

Hi Goose,

sorry für den langen Text. Aber ich wollte dir mein Ziel erklären.

Tatsächlich könnte das während einer Werbeunterbrechung passieren, die ich nicht berücksichtigen möchte, da sie ohnehin geschnitten wird.
Aber die Verwendung von ffmpeg über die Befehlszeile zur Crop-Erkennung funktioniert so, wie ich es möchte. Das ist also ein Beweis dafür, dass es mit ffmpeg möglich ist.
Zum Beispiel (für eine Minute):
ffplay -ss 600 -i “Singh Is Bling.ts” -vf “cropdetect=24:16:0”
erkennt die korrekten Werte
und wenn ich es dann mit
ffplay -ss 600 -i “Singh Is Bling.ts” -vf “crop=704:448:10:58” abspiele (in diesem Beispiel)
ist alles in Ordnung (für den ganzen Film)

Gibt es eine Möglichkeit, MCE Buddy mitzuteilen, wie es die Crop-Erkennung verwenden soll? Zum Beispiel nach wie vielen Sekunden und wie lange?
Wenn nicht, könnte ich das als Feature-Request vorschlgen? :smile:

Was ich typischerweise erreichen möchte und keine Ahnung habe, ob ich das über profile.conf irgendwie hinbekomme:
ffmpeg -i “Pitch Black - Planet der Finsternis.ts” -map 0:v -c:v h264_nvenc -vf “crop=1280:544:0:88” -aspect 16:9 -crf 16 -qmin 16 -qmax 26 -f mpegts -map 0:a -c:a:0 ac3 -b:a:0 448k -c:a:1 ac3 -b:a:1 192k -c:a:2 ac3 -b:a:2 192k -af “dynaudnorm=p=1:m=50:s=0:g=11” -map 0:s:1 -scodec copy output_crop.ts -y

  • Werbung entfernen (über MCE Buddy und comskip)
  • Auf H.264 (Nvidia HW) komprimieren und in einen .TS-Container packen
  • Zuschneiden, um schwarze Balken oben und an den Seiten zu entfernen und ein 16:9-Verhältnis für meinen Fernseher anzuwenden (nachdem ich die Crop-Einstellungen manuell ermittelt habe)
  • Die Original-Audiospuren mit Verstärkung verwenden, dabei Original-Bitraten und -Codecs beibehalten, trotz unterschiedlicher Anzahl von Spuren und Codecs. Kann eine Spur MP2 nur sein oder bis zu 5 Spuren (mehrsprachig) mit einer Mischung aus AC3 und MP2 (nachdem ich manuell die Audiokanäle und Bitraten ermittelt habe)
  • Die Untertitelspuren unverändert kopieren
  • Einige Video-Qualitätseinstellungen anwenden

Hauptsächlich möchte ich die manuellen Schritte loswerden.

Ich schätze, MCE Buddy kann mir hier nicht wirklich helfen, oder?

Vielen Dank für deine Hilfe.

Du brauchst die Anführungszeichen nicht.

Erstelle ein benutzerdefiniertes Profil und füge im Abschnitt ffmpeg-video deine benutzerdefinierten Zuschnitt-Einstellungen hinzu.
Setze außerdem die Direktive SkipCropping=true im Profil (dies bewirkt, dass MCEBuddy seine eigene Zuschnitt-Erkennung nicht verwendet und sich stattdessen auf die von dir im Profil angegebenen benutzerdefinierten Zuschnitt-Einstellungen verlässt). Siehe dieses Thema für weitere Details dazu: MCEBuddy - Advanced Settings, Commands and Tweaking