MKV "IsStreamable: Yes" ale na t.me neni

Jigdo

  • *****
  • 506
    • Zobrazit profil
MKV "IsStreamable: Yes" ale na t.me neni
« kdy: 19. 12. 2023, 14:56:09 »
T.me je super na posilani videa, a u MP4 se dokonce da streamovat, na misto toho
ze si ho uzivatel musi stahnout a potom prehrat.

MP4 v ffmpeg se nastavi pomoci (A timto prikazem se ty ATOMy presunou na zacatek souboru):
-f mp4 -movflags +faststart
a funguje to bezvadne, hlavne lidem co nemaji misto v telefonu na ulozeni 4K/8K videa a namisto
toho se to da v MP4 containeru streamovat (H.264/AVCHD a H.265/HEVC + HDR)

Tady je zajimy prispevek na tema MP4
https://superuser.com/questions/1753260/what-makes-a-mp4-streamable
As far as I know, MP4 container files may have their metadata (audio/video tracks, codec information) either at the beginning of the file before the actual data, or at the end. If the metadata is placed at the end, a player can't decode the video stream until it has downloaded the entire thing (unless it can seek through the file, which is e.g. possible using HTTP range requests).


Ale pro kontejner MKV se mi to nedari, ale vim ze to funguje, protoze na t.me dostavam
video v MKV kontejneru s (H.264/AVCHD a H.265/HEVC + HDR) ktere se da streamovat
bez zbytecneho stahovani.....



Z YT jsem si stahl 4K video v MP4 a MKV kontejnerech a video kodeku AV1 a WebM.


#Wonka | Trailer #2
#AV01 #av01.0.12M.08 #4K #mp4
Kód: [Vybrat]
yt-dlp -f 401+140 https://www.youtube.com/watch?v=wYmtRhKvmVE
401 mp4   3840x2160   24    │   97.66MiB  5567k https │ av01.0.12M.08  5567k video only          2160p, mp4_dash
140 m4a   audio only      2 │    2.27MiB   130k https │ audio only           mp4a.40.2  130k 44k medium, m4a_dash

#Wonka | Trailer #2
#WebM #vp09.00.50.08 #VP9 #4K #mp4
Kód: [Vybrat]
yt-dlp -f 625+140 https://www.youtube.com/watch?v=wYmtRhKvmVE
625 mp4   3840x2160   24    │ ~338.66MiB 18873k m3u8  │ vp09.00.50.08 18873k video only
140 m4a   audio only      2 │    2.27MiB   130k https │ audio only           mp4a.40.2  130k 44k medium, m4a_dash

#Wonka | Trailer #2
#WebM #vp09.00.50.08 #VP9 #4K #mkv
Kód: [Vybrat]
yt-dlp -f 313+251 https://www.youtube.com/watch?v=wYmtRhKvmVE
313 webm  3840x2160   24    │  195.03MiB 11118k https │ vp09.00.50.08 11118k video only          2160p, webm_dash
251 webm  audio only      2 │    2.22MiB   126k https │ audio only           opus       126k 48k medium, webm_dash


Kontrola ze vsechny 3 videa maji flag "IsStreamable: Yes"
Kód: [Vybrat]
~/Videos$ mediainfo "--Inform=General;IsStreamable: %IsStreamable%" Wonka.Trailer.#2.f313+251.[wYmtRhKvmVE].mkvIsStreamable: Yes

Kód: [Vybrat]
~/Videos$ mediainfo "--Inform=General;IsStreamable: %IsStreamable%" Wonka.Trailer.#2.f625+140.[wYmtRhKvmVE].mp4IsStreamable: Yes
Kód: [Vybrat]
~/Videos$ mediainfo "--Inform=General;IsStreamable: %IsStreamable%" Wonka.Trailer.#2.f401+140.[wYmtRhKvmVE].mp4IsStreamable: Yes


Ale po uploadu na t.me se samozrejmne video v MKV kontejneru neda streamovat, ale pouze stahnout.




Hledal jsem a nasel tohle:
https://superuser.com/questions/1190153/make-mkv-file-suitable-for-streaming-with-ffmpeg-or-avconv-how-to-move-all-m
mkclean
https://www.matroska.org/downloads/mkclean.html


Usage: mkclean [options] <matroska_src> [matroska_dst]
Kód: [Vybrat]
~/Install/mkclean-0.9.0/mkclean/mkclean --keep-cues Wonka.Trailer.#2.f313+251.[wYmtRhKvmVE].mkv Wonka.Trailer.#2.f313+251.[wYmtRhKvmVE]--keep-cues.mkv
Zkousim i ffmpeg:
Kód: [Vybrat]
ffmpeg -hide_banner \
 -i Wonka.Trailer.#2.f313+251.[wYmtRhKvmVE].mkv \
 -c copy -reserve_index_space 50k \
 Wonka.Trailer.#2.f313+251.[wYmtRhKvmVE]-reserve_index_space.mkv


Jeste pro jistotu zkousim alternativni verzi "mkclean-pragmatic"
https://github.com/XMB5/mkclean-pragmatic

Kód: [Vybrat]
cd ~/git
git clone https://github.com/XMB5/mkclean-pragmatic.git
cd mkclean-pragmatic
mkdir build
cd build
cmake ..
make -j$(nproc)


Kód: [Vybrat]
~/git/mkclean-pragmatic/build/mkclean/mkclean Wonka.Trailer.#2.f313+251.[wYmtRhKvmVE].mkv Wonka.Trailer.#2.f313+251.[wYmtRhKvmVE]-mkclean-pragmatic.mkv
A tady jsem se zasekl .....Protoze ani jeden vysledny soubor se neda streamovat na t.me, ale pouze stahnout :(


Nevi nekdo kde je chyba?


modnar

Re:MKV "IsStreamable: Yes" ale na t.me neni
« Odpověď #1 kdy: 19. 12. 2023, 17:18:34 »
Kód: [Vybrat]
ffmpeg -i INPUT_FILE.mkv  \
   -c:v libx264 -profile:v baseline -c:a aac -ar 44100 -ac 2 -b:a 128k \
   -vf format=yuv420p \
   OUTPUT_TELEGRAM_VIDEO.mp4

source

Re:MKV "IsStreamable: Yes" ale na t.me neni
« Odpověď #2 kdy: 19. 12. 2023, 20:03:22 »
mozna jsem to prehlidl ale mas vzorek toho co pres t.me hraje? (vubec nvm o co jde ale semtam se zlobim s ffmpegem...)

Jigdo

  • *****
  • 506
    • Zobrazit profil
Re:MKV "IsStreamable: Yes" ale na t.me neni
« Odpověď #3 kdy: 21. 12. 2023, 14:41:17 »
Kód: [Vybrat]
ffmpeg -i INPUT_FILE.mkv  \
   -c:v libx264 -profile:v baseline -c:a aac -ar 44100 -ac 2 -b:a 128k \
   -vf format=yuv420p \
   OUTPUT_TELEGRAM_VIDEO.mp4

source


Jak jsem psal, u kontejneru MP4 to funguje,
a video z YT-DLP se po uploadu na t.me da streamovat ....
pokud nejake vide nefunguje v kontejneru MP4,
potom to resim takhle

Kód: [Vybrat]
ffmpeg -hide_banner \
-y -vsync 0 -hwaccel cuda -hwaccel_output_format cuda \
-i  \
-strict experimental \
-map 0:0 -map 0:1 -map 0:2 -map 0:3 \
-c:v hevc_nvenc -b:v 2217K \
-c:a copy \
-c:s mov_text \
-c:d copy \
-map_metadata 0 \
-metadata title="" \
-metadata description="" \
-metadata comment="" \
-metadata year="" \
-metadata:s:v:0 language=und -metadata:s:v:0 handler_name=Und -metadata:s:v:0 title="1080p | h265 - hevc_nvenc" \
-metadata:s:a:0 language=eng -metadata:s:a:0 handler_name=English -metadata:s:a:0 title="eng | English AAC 5.1(side) fltp" \
-metadata:s:a:1 language=eng -metadata:s:a:1 handler_name=English -metadata:s:a:1 title="eng | English DTS-HD MA 5.1(side) s32p" \
-metadata:s:s:0 language=eng -metadata:s:s:0 handler_name=English -metadata:s:s:0 title="eng | English" \
-f mp4 -movflags +faststart \
-ignore_unknown -copy_unknown \
5-2217K.mp4 -v verbose

Mne jde o to, ze v kontejneru MKV se mi to same nepodarilo
a pri pokus o upload je videt, ze se video nebude dat streamovat, ale pouze stahnout..............


Jigdo

  • *****
  • 506
    • Zobrazit profil
Re:MKV "IsStreamable: Yes" ale na t.me neni
« Odpověď #4 kdy: 21. 12. 2023, 15:51:53 »
mozna jsem to prehlidl ale mas vzorek toho co pres t.me hraje? (vubec nvm o co jde ale semtam se zlobim s ffmpegem...)

:)
Super, z prikazove radky se to dela lepe......


Takze asi uz Vim kde je problem.

MKV video, ktere mi znamy na t.me poslal a da se streamovat
jsem ted zkousel znovu poslat zpatky, ale to same MKV video se neda
poslat aby se dalo Streamovat "Send as a Video file",
ale zase pouze  jako "Send as a file".... v t.me klientovi pod Linuxem ...

Takze predpokladam ze to Kolya na t.me pro MKV zpristupnil jen v "Premium" verzi
a samozrejmne ze to nema zdokumentovane .......


Je tady nejaky uzivatel t.me s Premium?
Muze vyzkouset jestli video v MKV stahnute z
Kód: [Vybrat]
yt-dlp -f 313+251 https://www.youtube.com/watch?v=wYmtRhKvmVEfunguje pro upload jako "Send as a Video file" a da se streamovat?


Re:MKV "IsStreamable: Yes" ale na t.me neni
« Odpověď #5 kdy: 27. 12. 2023, 19:42:06 »
Není to prostě tím, že tahle funkce prostě je povolená pro mp4 a pro mkv ne?
(Ironické, já mám zkušenost, že mkv jsou streamovatelná defaultně)

to mě zaujalo, je to nějak omezené na t.me (webová forma)? nebo to jde v telegramu obecně?

Jigdo

  • *****
  • 506
    • Zobrazit profil
Re:MKV "IsStreamable: Yes" ale na t.me neni
« Odpověď #6 kdy: 01. 01. 2024, 14:53:38 »
Mysli ze ano (PRO=MKV Streaming), vice jsem se v tom nevrtal. - Pro ucet nemam :(

Pokud je najeke video vetsi nez 2GB (coz u 8K vetsinou je, ted v zime se telefon tolik nezahriva pri nahravani)
tak ho zmensim na 4K, FHD nebo HD) a potom sdilim :)

A pokud je nejake video v MKV, tak ho pomoci FFMpeg davam do MP4 ....

Ale pokud tady nekdo je s t.me PRO uctem, mozna nam da vedet jak to je s temi MKV ....
a jestli se vsechny u PRO uctu daji "Send as a Video file" a nebo se mu u nekterych stane
ze ho t.me neda to poslat jako Video ale pouze jako "Send as a file".....