-
Notifications
You must be signed in to change notification settings - Fork 62
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DTS out of order with RTMP #42
Comments
We don't yet support RTMP in Shaka Streamer (see #16), and I'm not sure we could reproduce this issue without access to your private stream. (I noticed a private IP range on the URL.) It's possible that the "DTS out of order" error is a problem in the input. Where does this particular RTMP stream come from? What generates it? Also, I'm going to transfer this issue to the streamer repo. |
we are generating rtmp through node rtmp |
Can you please give us some way to reproduce your results? Some details on how you are generating the RTMP stream? |
Thanks for the response. node app.js Using the rtmp url in shaka streamer |
Can you provide us with a more complete set of instructions to reproduce the issue? Please assume we know nothing about node-media-server, and please provide any source material you're starting with. |
1)Creating a new folder nms , then i perform the steps as it is which was present in below link. 2)Git version:- mkdir nms
cd nms
git clone https://github.com/illuspas/Node-Media-Server
npm i
node app.js npm version (recommended):- mkdir nms
cd nms
npm install node-media-server ->create a new file app.js and open the file ,copy the below content to the app.js file:- vi app.js const NodeMediaServer = require('node-media-server');
const config = {
rtmp: {
port: 1935,
chunk_size: 60000,
gop_cache: true,
ping: 30,
ping_timeout: 60
},
http: {
port: 8000,
allow_origin: '*'
}
};
var nms = new NodeMediaServer(config)
nms.run(); Then run the node app.js in one terminal and ffmpeg in another terminal node app.js ffmpeg -re -i sample.mp4 -c copy -f flv rtmp://localhost/live/commet Like this way i am generating the rtmp url. Then inserting this rtmp url to "input_looped_file_config.yaml" for both audio and video. ->vi pipeline_live_config.yaml streaming_mode: live
transcoder:
# A list of resolutions to encode.
resolutions:
# - 720p
- 480p
#- 360p
#- 240p
#- 144p
# The number of audio channels to output.
channels: 2
# The codecs to encode with.
audio_codecs:
- aac
video_codecs:
- h264
packager:
# Manifest format (dash, hls, or both)
manifest_format:
- dash
# - hls
# Length of each segment in seconds.
segment_size: 2
# Availability window, or the number of seconds a segment remains available.
availability_window: 200
# Presentation delay, or how far back from the edge the player should be.
presentation_delay: 50
# Update period, or how often the player should fetch a new manifest.
update_period: 4 After that the below command line executed in that terminal python3 shaka-streamer -i config_files/input_looped_file_config.yaml -p config_files/pipeline_live_config.yaml -o /var/www/html/dash/ All these operation is done in the ("UBUNTU LTS 16.04 OS") |
Thank you for the instructions. You still have not provided your In particular, your command You also left out the contents of your input config file. I've tried to reproduce your issue by recreating the missing pieces. I created my own ffmpeg \
-t 60 -i Sintel.2010.720p.mkv \
-ac 2 -ar 44100 \
-c:v h264 -b:v 4M \
-c:a aac -b:a 128k \
sample.mp4 This is 60 seconds of Sintel, in stereo, 44.1kHz AAC, 720p h264, 4Mbps. Your pipeline config is in an older format, so I'm guessing you're using v0.1 of the application. Please update to a newer build, either from source or with In spite of the fact that we don't officially support RTMP yet (see #16), I've gotten this working without changing any of the Streamer code. I think I see the issue, and it's with your ffmpeg commands. You're taking your ffmpeg -stream_loop -1 -re -i sample.mp4 -c copy -f flv rtmp://localhost/live/commet Then, your pipeline config (updated to the current format) would be: streaming_mode: live
resolutions:
- 480p
audio_codecs:
- aac
video_codecs:
- h264
manifest_format:
- dash
segment_size: 2
availability_window: 200
presentation_delay: 50
update_period: 4 And your input config would be (note the lack of inputs:
- name: rtmp://localhost/live/commet
media_type: video
- name: rtmp://localhost/live/commet
media_type: audio This works for me, and plays fine in the latest version of Shaka Player. Does this help? |
Details of sample.mp4: General Video Audio |
Thanks for your reply, but can i get some more detail information regarding of the issue and its solution |
May i know what are the contents i left in the input_config files. |
We require Shaka Packager v2.1 or above. If you have a pre-release version built from source, you'll need to:
The --skip_deps_check option will appear in Streamer v0.4, which has yet to be released on PyPI. After that, you should use the commands and config files I showed you in my earlier comment. ( If that doesn't work for you, you'll need to send us the actual MP4 source file you're using, not just the output of Does this help? |
While playing encrypted live+vod content in shakaplayer its not playing and throwing the issue :- |
I'm unable to reproduce your results. Please wait for the 0.4 release with documented RTMP support. |
@thellaindudhar Does this answer all your questions? Can we close the issue? |
yes you can close the issue |
Thanks! Let us know if we can do anything else for you. |
Shaka streamer with rtmp url :-
Stream #0:1: Video: h264 (High), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], 3999 kb/s, 30 fps, 30 tbr, 1k tbn, 60 tbc
ffmpeg -stream_loop -1 -re -loglevel warning -i rtmp://192.168.26.250/live/commet -f mpegts -vcodec copy -acodec copy -y /tmp/shaka-live-l9xznts7/c981326e-352a-4fff-9699-1ca7683c2eba
ffmpeg -stream_loop -1 -re -loglevel warning -i rtmp://192.168.26.250/live/commet -f mpegts -vcodec copy -acodec copy -y /tmp/shaka-live-l9xznts7/b5a06f54-b5e4-4299-96c0-46f4ec9c39d6
ffmpeg -y -thread_queue_size 100 -i /tmp/shaka-live-l9xznts7/c981326e-352a-4fff-9699-1ca7683c2eba -thread_queue_size 100 -i /tmp/shaka-live-l9xznts7/b5a06f54-b5e4-4299-96c0-46f4ec9c39d6 -map 0:0 -an -cmp chroma -f mpegts -preset ultrafast -c:v h264 -b:v 2M -bf 0 -pix_fmt yuv420p -flags +cgop -profile:v main -level:v 3.1 -keyint_min 60 -g 60 -vf scale=-2:480 /tmp/shaka-live-l9xznts7/28b66dc7-8a57-45ec-8498-3d0c5ab7bb06 -map 1:1 -vn -ac 2 -f mpegts -c:a aac -b:a 64k /tmp/shaka-live-l9xznts7/bee4f5c6-c812-4d02-aa19-053c8b9dbcc8
packager 'init_segment=/RAM_Disk/out//audio_und_2c_64k_init.mp4,stream=audio,in=/tmp/shaka-live-l9xznts7/bee4f5c6-c812-4d02-aa19-053c8b9dbcc8,segment_template=/RAM_Disk/out//audio_und_2c_64k_$Number$.m4s,' 'init_segment=/RAM_Disk/out//video_480p_2M_init.mp4,stream=video,in=/tmp/shaka-live-l9xznts7/28b66dc7-8a57-45ec-8498-3d0c5ab7bb06,segment_template=/RAM_Disk/out//video_480p_2M_$Number$.m4s,' --segment_duration 2 --time_shift_buffer_depth 50 --preserved_segments_outside_live_window 1 --suggested_presentation_delay 1 --minimum_update_period 4 --mpd_output /RAM_Disk/out/dash.mpd --io_block_size 65536
While playing the playback url:-
[dash @ 0x7ffaf0000940] DTS 4626000 < 4983000 out of order]
repeating the same segment util the segment disappears on the folder, later for every 2 seconds the video stops for 5 seconds up to last segment.
If i increase the seconds in time_Shift_Buffer_Depth then it will play the segments for that
particular time,later same issue repeat.
Can any one guide me how to resolve the issue,what are the changes i need to do in the shaka-streamer
The text was updated successfully, but these errors were encountered: