Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Does'nt download the video but another m3u8 file

Aperta
#28 4 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
nodejs, typescript
Ambito
backend

Direzione di ricerca

Inizia dal punto di ingresso m3u8stream(...) e riproduci l'URL della master playlist di Periscope fornita. Esamina come viene gestita la master playlist rispetto a una media playlist, quindi verifica che la variante selezionata venga consumata come dati video anziché essere restituita come un altro file m3u8. Il lavoro è completato quando l'esempio scrive un video riproducibile e il comportamento della variante predefinita corrisponde a quanto richiesto nell'issue.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

feature

Try this :

const fs = require('fs');
const m3u8stream = require('m3u8stream')

m3u8stream('https://prod-fastly-eu-central-1.video.periscope.tv/Transcoding/v1/hls/rR3sEEtIYIXRbEx5ThxVpftu1BX4T8UN_x8ObMCkkhMy4Bg9F0bnU5nzMQVSfrmqMk0-_tGWcx3niQ9R5-0yxA/non_transcode/eu-central-1/periscope-replay-direct-prod-eu-central-1-public/master_dynamic_16889594913756400541.m3u8?type=replay').pipe(fs.createWriteStream('videofile.mp4'));

It downloads another m3u8 file but not the video.
As i understand that's because the given url contains several type of videos :

#EXTM3U
#EXT-X-DYNAMICALLY-GENERATED
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=500000,RESOLUTION=480x270, CODECS="avc1.640015,mp4a.40.2"
/Transcoding/v1/hls/rR3sEEtIYIXRbEx5ThxVpftu1BX4T8UN_x8ObMCkkhMy4Bg9F0bnU5nzMQVSfrmqMk0-_tGWcx3niQ9R5-0yxA/transcode/eu-central-1/periscope-replay-direct-prod-eu-central-1-public/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsInZlcnNpb24iOiIyIn0.eyJIZWlnaHQiOjI3MCwiS2JwcyI6NTAwLCJXaWR0aCI6NDgwfQ.0PLzHwJpzC4wA_jNo8XOma8zOx8uPmEDTD3WKSRLYOA/playlist_16889594913756400541.m3u8?type=replay
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1000000,RESOLUTION=848x480, CODECS="avc1.64001e,mp4a.40.2"
/Transcoding/v1/hls/rR3sEEtIYIXRbEx5ThxVpftu1BX4T8UN_x8ObMCkkhMy4Bg9F0bnU5nzMQVSfrmqMk0-_tGWcx3niQ9R5-0yxA/transcode/eu-central-1/periscope-replay-direct-prod-eu-central-1-public/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsInZlcnNpb24iOiIyIn0.eyJIZWlnaHQiOjQ4MCwiS2JwcyI6MTAwMCwiV2lkdGgiOjg0OH0.RFzmPpRYVt-M5xPGoWoifZwAR5Wj0QbokQ2FVsxVt9c/playlist_16889594913756400541.m3u8?type=replay
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2000000,RESOLUTION=1280x720, CODECS="avc1.64001f,mp4a.40.2"
/Transcoding/v1/hls/rR3sEEtIYIXRbEx5ThxVpftu1BX4T8UN_x8ObMCkkhMy4Bg9F0bnU5nzMQVSfrmqMk0-_tGWcx3niQ9R5-0yxA/transcode/eu-central-1/periscope-replay-direct-prod-eu-central-1-public/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsInZlcnNpb24iOiIyIn0.eyJIZWlnaHQiOjcyMCwiS2JwcyI6MjAwMCwiV2lkdGgiOjEyODB9.RYzh5rWQLNy-ZB1zO_EREmt9fkjSnJS2If9o7Ls4vOM/playlist_16889594913756400541.m3u8?type=replay
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=4000000,RESOLUTION=1280x720, CODECS="avc1.64001f,mp4a.40.2"
/Transcoding/v1/hls/rR3sEEtIYIXRbEx5ThxVpftu1BX4T8UN_x8ObMCkkhMy4Bg9F0bnU5nzMQVSfrmqMk0-_tGWcx3niQ9R5-0yxA/transcode/eu-central-1/periscope-replay-direct-prod-eu-central-1-public/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsInZlcnNpb24iOiIyIn0.eyJIZWlnaHQiOjcyMCwiS2JwcyI6NDAwMCwiV2lkdGgiOjEyODB9._lwcUhHeo_ZcTvj7C11_mnFYldhjIywdpF0kk3OHkBE/playlist_16889594913756400541.m3u8?type=replay

Can you set by default to get for example the first one ?

Lingua principale
TypeScript
Stelle
230
Fork
55
Merge medio
12g 57m
PR unite (30g)
1

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di fent/node-m3u8stream

Tutte le issue di fent/node-m3u8stream

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.