Meine Erfahrung mit (mkv) Videos [DicePlayer]

  • 8 Antworten
  • Neuster Beitrag
U

user4android

Neues Mitglied
Threadstarter
Für alle die nicht gerne lesen wollen in Kurzform:


Wer bisher Probleme mit seinen Videos (mkv/h.264) hatte (ruckeln, kein Ton..), sollte mal den DicePlayer ausprobieren.

Zum Testen einfach mal ein „Sample“ Video downloaden und probieren
Beispiel: http://tomtom2k5.free.fr/mkv/720p/pearlharbor_x264hd-sample.mkv
(weitere) Index of /mkv/720p (das sind nicht meine Beispiel-Videos und auch der Server ist nicht von mir)

Codec Informationen:

Sollte das Video bei eurem Player Ruckeln oder ohne Ton abgespielt werden, dann einfach mal den Player versuchen:
https://market.android.com/details?id=com.inisoft.mediaplayer.trial [DicePlayer]
(bei manchen Videos bleibt es am Anfang die ersten 10sec. schwarz)

Für diejenigen die an ein wenig HintergrundInfos interessiert sind, können weiterlesen:
-----------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------



Manchmal liest man, dass 720p oder auch 1080p mkv Videos problemlos abspielbar sind, dann doch wieder nicht.
Woran liegt das?

1. MKV ein Containerformat
2. Der Video-CoDec (h.264)
. 2.a. h.264: was sind Profile und Level
. 2.b. Ein Beispiel (in Adobe Premiere)
3. Die Hardware-Unterstützung (Hardware-Decoding/Videobeschleunigung)
4. Das Problem
5. Weiteres
Deshalb zuerst einmal ein paar kleine Grundlagen.
1. Mkv (Matroska) ist nichts anderes als ein Containerformat, ähnlich wie das altgediente AVI.
In so einem Container kann eine Videospur, eine Audiospur, Untertitel…(=>auch jeweils mehrere) enthalten sein. Die Videospur selbst, die in einer mkv Datei (Container) steckt, kann mit einem der folgenden Videocodecs kodiert worden sein: MPEG-1, MPEG-2, MPEG-4, H.264, RealVideo, WMV, Theora, Dirac. Bei der Audiospur sind unter anderem folgende Audiocodecs erlaubt: AAC, AC3, DTS, WAV, MP3, Vorbis, FLAC.
Schon jetzt sollte einem klar sein, dass also mkv Video nicht gleich mkv Video ist, auch wenn vielleicht die Auflösung 720p identisch ist. (kann unter Umständen schon das einzige sein, was zwei mkv Filme gemeinsam haben).
Das kann z.B. der Grund sein, warum sich das eine 720p Video mit demselben Player butterweich abspielen lässt und das andere nicht oder wieso auf einmal bei einem mkv 720p Video der Ton fehlt => dazu später mehr)

2. Der Videocodec

Der wohl zurzeit effizienteste und am meisten verwendete VideoCodec ist H.264 (MPEG-4 AVC)
[Bei einer mkv Datei lautet die Codec-ID für h.264: „V_MPEG4/ISO/AVC“
H.264 erreicht typischerweise eine etwa dreimal so hohe Codiereffizienz wie H.262 (MPEG-2) und ist auch für hoch aufgelöste Bilddaten (z. B. HDTV) ausgelegt. Das heißt, vergleichbare Qualität ist etwa bei einem Drittel der MPEG-2-Datenmenge zu erreichen. Allerdings ist der Rechenaufwand auch um den Faktor 2 bis 3 höher.
H.264 ? Wikipedia
Der H.264 Codec bietet einige Parameter beim Erstellen (codieren) eines Videos an. Diese beeinflussen dann direkt/indirekt die Qualität, Größe, Bitrate des Videos und vor allem dann auch die benötigte Rechenleistung die gebraucht wird, um das Video auf dem Endgerät (ruckelfrei) abspielen zu können. Da das Ganze dann doch schnell unübersichtlich wird mit den gesamten Einstellmöglichkeiten,
[kann z.B. der qualitätssteigernde, aber rechenintensive, arithmetische Kodierer "CABAC Entropy Coding" aktiviert werden, wenn das Video auf Gerät XY abgespielt werden soll? Oder soll doch „nur“ das einfachere und nicht so rechenintensive Kodierverfahren CAVLC zum Einsatz kommen.]
2.a hat man sich entschlossen das Ganze zu Profilen zusammenzufassen. (Hauptsächlich: "Baseline", "Main", "High" => siehe nachfolgende Spaltenüberschriften)


Neben den Profilen gibt es dann noch Level. "Dieser (Level) ist umso höher, je größer die Bitrate des Videos ist."



2.b. Um ein konkretes Beispiel zu machen:

Apple gibt für sein iPad folgendes an =>
Unterstützte Videoformate: H.264 Video: bis zu 720p, 30 Bilder pro Sekunde, Main Profile Level 3.1
Wenn man oben in der Tabelle nachschaut, dann sieht man, welche features für das Main Profil möglich/erlaubt sind und welche nicht.
Anhand des Levels 3.1 in Kombination mit dem Profil Main (Basline/Extended/Main), sieht man die mögliche Auflösung/Bildrate dieses Levels und die Videobitrate (14 Mbit/s).

Viele Videoschnittprogramme beinhalten meistens bereits vorgefertigte "Vorgaben" für unterschiedliche Geräte. Hier z.B. bei Adobe Premiere für das Ipad:

Bei Adobe hat man versucht die Einstellungen ins Deutsche zu übersetzen, deshalb klingen sie etwas verwirrend:
"Profil: Hauptoption" <=> "Profil: main"
"Pegel: 3,1" <=> "Level: 3.1"

Die genauen Spezifikationen für das Transformer (nVidia Tegra 2) kenne ich leider nicht. Was aber auf jeden Fall möglich sein sollte, ist: High Profile 720p und Main Profile 1080p

3. Die Hardware-Unterstützung (Hardware-Decoding/Videobeschleunigung)

Wie oben bereits erwähnt, ist das Abspielen eines h.264 codierten Videos (egal in welchem VideoContainer dieser nun steckt) ziemlich rechenintensiv. Selbst bei (kleineren) Desktop PCs ist damit die CPU alleine überfordert.
Beispiel (AMD E-350):



… beispielsweise "James Bond: Ein Quantum Trost" zu einer schnelleren Dia-Show – Filmgenuss mag da nicht aufkommen. Mit aktiver Hardware-Beschleunigung sind hingegen alle Blu-Rays problemlos abspielbar.
Ein Lückenfüller mit Ambitionen - AMDs Brazos-Plattform im Test - Praxis: Video-Beschleunigung (Seite 14)
Ähnlich verhält es sich beim Transformer. Bei einem (qualitativen) 720p Video (h.264) ist das System mit einem reinem Software Codec überfordert (Ruckler).
Selbst das Übertakten hilft da nicht sonderlich viel (ich habe es mit 1,4GHz versucht, brachte keine wirkliche Verbesserung. 1,6GHz habe ich dann erst gar nicht versucht.)

Bei manchen Playern lässt sich der „Decode Mode“ manuell einstellen.
Beispiel Vital Player:

So gesehen kommt also für ein qualitativ höherwertiges h.264 Video (sprich höheres Profil+Level) nur das Abspielen mittels Hardware Codec in Frage.
(Der Software Codec (ffmpeg) spielt zwar fast alles ab, kommt aber bei "rechenintensiven" Videos ins stocken=> zu geringe CPU Leistung)



4. Das Problem:

Wenn ein Video, nehmen wir mal an:
in einem mkv Container
die Videospur 720p, Profil High, Level 4.1 ist,
dann sollte das doch von jedem Player mit „HardwareUnterstützung“ problemlos abgespielt werden können. J(aN)ein. Wenn die Audio Spur im (mkv) Container mit AAC kodiert wurde, dann ja. Wenn es jedoch eine AC3 Tonspur ist, dann hat bis jetzt jeder Player von „hardware“ decodieren auf „software“ decodieren umgestellt und dann war das System wieder überlastet und hat geruckelt. Hat man bei einem Player die Option (falls vorhanden) nur Hardware Codec, dann wurde die Videospur ruckelfrei abgespielt, aber eben kein Ton wiedergegeben.
Der einzige Player bei dem es nicht so ist (der mir bis jetzt bekannt ist!), ist der DicePlayer.
(https://market.android.com/details?id=com.inisoft.mediaplayer.trial)


--------------

5. Weiteres

Welcher Video/Audio Codec steckt nun in einem VideoKontainer alla mkv?
Das kann z.B. am PC mit dem tool ausgelesen werden: MediaInfo (siehe meinen ersten Screenshoot)

Ich habe ein Video das mit keinem Player abgespielt werden kann, dann hilft nur das erneute codieren des Videos. Eine Anleitung mit downloadbaren Voreinstellungen für das Programm Handbreak findet man hier:
[GUIDE] 720p Handbrake preset for TF101 (HC3.1 Update) - xda-developers
Hier sind auch zwei sample Videos zum downloaden/testen.

Ich möchte nur die Tonspur in einem mkv Container "ändern", jedoch nicht die Videospur erneut "codieren",
dann kann dieses tool hilfreich sein:
GOTSent 0.24 Beta 8 - VideoHelp.com Downloads
[INFO] Transcoding MKV to MP4 quick and easy way. - xda-developers
ODER:
Home | XenonMKV
MKV to Mp4 for XOOM WITHOUT Converting Video - xda-developers
Diese tools haben den Vorteil, dass die Videospur unangetastet bleibt und somit auch eine Menge Zeit gespart wird.
 
Zuletzt bearbeitet:
S

Sandhase

Ambitioniertes Mitglied
Passend. Gerade wollte ich nachfragen. Es scheint, als ob der mkv Container nicht richtig unterstützt wird.

Hab nach diesen Settings (HowTo: Convert video for Transformer using HandBrake) nur RF22 ne mkv umkodiert. VIele Player (Mobo, V, Rock, MX,...) ausgetestet. Keiner spielte das mkv richtig ab. Entweder Tonspur nicht synchron oder verstummte nach 10s.

Selbe Settings in .mp4 container. Lief wunderbar. Hoffentlich kommt noch richtig was für mkv...
 
L

Levion

Ambitioniertes Mitglied
vielen Dank für die Erklärungen und die Mühe

Sent from my Transformer TF101 using Tapatalk
 
D

DeltaTango

Neues Mitglied
Hallo,

ich bin mit dem Dice-Player auch ganz zufrieden. Es ist bisher der schnellste den ich getestet habe. Allerdings habe ich Probleme mit den AVCHD-Dateien meiner Panasonic-Lumix. Hier wird nur der TON wiedergegeben. Ich habe mir mal den MediaInfo runtergeladen und folgendes Ergebnis für die AVCHD-Datei bekommen.

Video
ID : 4113 (0x1011)
Menü-ID : 1 (0x1)
Format : AVC
Format/Info : Advanced Video Codec
Format-Profil : High@L4.0
Format-Einstellungen für CABAC : Nein
Format-Einstellungen für ReFrame : 1 frame
Format_Settings_FrameMode : Frame doubling
Codec-ID : 27
Dauer : 4min 36s
Bitraten-Modus : variabel
Bitrate : 11,7 Mbps
maximale Bitrate : 16,6 Mbps
Breite : 1 280 Pixel
Höhe : 720 Pixel
Bildseitenverhältnis : 16:9
Bildwiederholungsrate : 25,000 FPS
Standard : NTSC
ColorSpace : YUV
ChromaSubsampling : 4:2:0
BitDepth/String : 8 bits
Scantyp : progressiv
Bits/(Pixel*Frame) : 0.509
Stream-Größe : 386 MiB (94%)

Audio
ID : 4352 (0x1100)
Menü-ID : 1 (0x1)
Format : AC-3
Format/Info : Audio Coding 3
Format_Settings_ModeExtension : CM (complete main)
Codec-ID : 129
Dauer : 4min 36s
Bitraten-Modus : konstant
Bitrate : 192 Kbps
Kanäle : 2 Kanäle
Kanal-Positionen : Front: L R
Samplingrate : 48,0 KHz
BitDepth/String : 16 bits
Stream-Größe : 6,32 MiB (2%)

Text
ID : 4608 (0x1200)
Menü-ID : 1 (0x1)
Format : PGS
Codec-ID : 144
Dauer : 4min 35s


Wo drann kann es denn leigen das ich mit dem Dice kein Bild bekomme? Mit dem MoboPlayer funktioniert es übrigens aber der ist grottenlangsam :blink:

Gruß

Dirk
 
A

Andreebremen

Ambitioniertes Mitglied
Dice-Player:
Nachdem ich ca. 8 Videoplayer getestet habe auf meinem Samsung Note bin ich zuerst beim MX Video Player hängengeblieben wie so viele. Er ist auch gut, ABER er spielt auf meinem Gerät FLV Dateien nicht über den Hardware-Decoder ab.
Ich habe daher mit dem MX Video Player das Problem gehabt, dass mein Gerät FLV Dateien über den Software-Decoder des Players abgespielt hat, was auf Dauer Ruckler und Tonaussetzer zur Folge hatte (CPU lief unter Volllast und wurde zu warm).
Schon komisch, dass die Sendungen wunderbar abgespielt wurden, als ich Sie vom FLV Container in den MKV oder WMV Container umgewandelt habe, na ja, so komisch garnicht, denn dann wurde auf einmal der Hardware-Decoder benutzt, der natürlich die CPU erheblich entlastet. Soweit zum MX Video Player, den ich nun nicht mehr nutze.
Diese Probleme habe ich mit dem DicePlayer nicht: Er spielt bei mir genau diese FLV Dateien sofort mit dem Hardware-Decoder ab. Es geht also! Auch sonst kann ich alle Dateien mit dem Hardware-Decoder abspielen, das kann KEIN ANDERER Player den ich kenne. Aus diesem Grund habe ich mir den Dice Player auch gekauft, die ca.3 EUR investiere ich gerne in die weitere Entwicklung. Bitte kauft ihn euch.
 
M

Metalmaniac

Ambitioniertes Mitglied
Und schon ist Schluß mit Lustig. Plötzlich (wahrscheinlich seit einem der letzten Updates) spinnt der Dice Player bei mir rum und bleibt auch bei Filmen hängen, die er vorher problemlos abspielte. Wenn man bei den Bewertungen schaut, bin ich nicht der Einzige mit Problemen seit den letzten Versionen des Players. Hat jemand noch eine ältere apk, womit alles problemlos lief? Habe den Player auch rechtmäßig gekauft, brauche halt nur ne ältere Version.
 
H

HeuteNeuMorgenAlt

Ambitioniertes Mitglied
Bei mir das selbe ;(
 
H

HeuteNeuMorgenAlt

Ambitioniertes Mitglied
Der Dice Player spielt alles ab !!!

Ohne Ruckeln.

Eiinstellungen beachten unter Settings/Select Player/ - ---- dort den Dateityp auswählen den Ihr mit dem DICE betrachten wollt. Dann dort Software Player anwählen !
 
Oben Unten