FFmpeg HLS muxer .ts dosya adı formatı


2

HLS muxer.ts kullanılırken sıra numarası yerine tarih / saat (herhangi bir format) adlı bir dosya olması mümkün mü ? Eğer öyleyse, nasıl yapılabilir?

ffmpeg -i - -hls-some-option-here test_stream.m3u8

test_stream_20141116174310.ts
test_stream_20141116174312.ts
test_stream_20141116174314.ts
test_stream_20141116174316.ts

Ben de aynısını bilmek istiyorum.
Chovy

Yanıtlar:


2

Bir segmenterin daha genel ve esnek bir uygulamasını sağlayan ve HLS segmentasyonunu gerçekleştirmek için kullanılabilen segment muxer'e bakın .

Segment muxer ile strftime genişlemesini destekler -strftime 1(varsayılan olarak devre dışıdır). Bu, segmentlerin zaman oluşturma tarafından adlandırılmasını sağlar.

Kimden man ffmpeg-formats:

strftime 1|0

Yazılacak yeni bölümlerin adını tanımlamak için strftime işlevini kullanın. Bu seçilirse, çıkış segmenti ismi bir strftime fonksiyon şablonu içermelidir. Varsayılan değer 0'dır.

Örnek:

ffmpeg -i input.mkv -codec copy -map 0 -f ssegment -strftime 1 \
-segment_list test_stream.m3u8 -segment_time 10 test_stream_%Y%m%d%H%M%S.ts

stream_segmentakış çıkış formatlarına yazmak için kullanılan, yani genel başlıklar gerektirmeyen ve örneğin MPEG taşıma akış segmentlerine çıkış yapmak için tavsiye edilen muxerin bir çeşididir. ssegmentiçin daha kısa bir takma addır stream_segment.


1
Strftime kullanımdan kaldırılmıştır.
Alam

@Alam için bir yedek var mı strftime?
Brad

@Brad Bir tane bulamıyorum. Herhangi bir değişiklik bulursanız bana bildirin.
Alam

Bunu out.m3u8son seçenek olarak nasıl kullanıyorsunuz ?
Chovy

2

Ffmpeg kullanarak ts dosyasına zaman damgası ekleme seçeneği yoktur. Geriye kalan tek seçenek ffmpeg kodunda değişiklik yapmak. Libavformat / segment.c dosyasını değiştirebilirsiniz. İşlevde entry->filenamedeğişkeni değiştirin segment_file().

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.