Closed Romantic-LiXuefeng closed 5 years ago
Hi there!
Transcoding and packaging are done in a streaming pipeline. We will package content as it leaves the transcoder, rather than serializing the operations. This should be mentioned in the README.
RTMP is not yet supported as an input, but that should be easy to add. I filed #16 to track that enhancement.
- How to config the file to support a variety of scenes?
- Video-On-Demand: If I have a local file, I want to package to HLS/DASH stream, which contains different bitrate streams, how to config the transcode file and packager file.
First, you need an input config file that specifies the different streams of the input file or files. For example, see config_files/input_vod_config.yaml
.
Then, you need a pipeline config file that specifies the different resolutions and manifest formats you want. For example, see config_files/pipeline_vod_config.yaml
.
We don't yet have support for customizing the bitrates used for each resolution, and for now, we only support standard resolutions like 4k, 2k, 1080p, 720p, 480p, 360p, 240p, and 144p. We plan to allow you to customize those things in the future through a config file (#5), but in the mean time, you can edit RESOLUTION_MAP
in streamer/metadata.py
.
2. LIVE: If I have a rtmp live stream, I want to package to HLS/DASH stream. how to config the packager file.
We don't support RTMP yet, but I've filed an enhancement for this (#16) for the future. If you'd like to work on RTMP yourself, you could start by reading streamer/loop_input_node.py
, which is a simple input node that runs ffmpeg and outputs to a pipe. Then look at streamer/controller_node.py
to see how we hook an input node like that into the pipeline.
Forgive me for my poor English!
Not a problem at all! Your English is much better than you think.
(I've labeled this a "docs" issue to improve the docs around the fact that we build a pipeline so that transcoded outputs go directly to the packager.)
I've added some technical details in the README. Please also check the usage examples there and some of the sample config files we put in the repo.
Does this help answer your questions?
@joeyparrish Thanks for your detail answer !
Hope to give more clear documents to guide how to use the
shaka-streamer
.I know the
shaka-packager
doesn't support transcode. From the README, I find theshaka-streamer
usingFFmpeg
to support transcode. Transcoding and Packaging are executed parallelly or serially?Is support rtmp or rtsp input?
How to config the file to support a variety of scenes?
Forgive me for my poor English!