srs.js 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. import {SrsRTC } from './SrsRTC.js';
  2. import { Connection } from './connection.js';
  3. const sdk = new SrsRTC();
  4. const testConfig ={
  5. sceneCode:"testApp",
  6. userId: 'testUser',
  7. roomId: '8888',
  8. }
  9. const connection =new Connection(testConfig);
  10. console.log('sdk',sdk)
  11. console.log('sdk',connection)
  12. // console.log('第一个')
  13. connection.socket.emit('pushVideo',{
  14. videoList:['sample-5s','output','sample-5s','output','sample-5s','output','sample-5s','output'],
  15. sessionId:'1',
  16. sceneCode:testConfig.sceneCode,
  17. roomId:testConfig.roomId,
  18. userId:testConfig.userId,
  19. })
  20. // setTimeout(()=>{
  21. // console.log('第二个')
  22. // connection.socket.emit('pushVideo',{
  23. // videoList:['output'],
  24. // sessionId:'',
  25. // sceneCode:testConfig.sceneCode,
  26. // roomId:testConfig.roomId,
  27. // userId:testConfig.userId,
  28. // })
  29. // },10000)
  30. // setTimeout(()=>{
  31. // console.log('第二个')
  32. // connection.socket.emit('rotate',{
  33. // videoPath:'sample-5s',
  34. // sessionId:'2',
  35. // sceneCode:testConfig.sceneCode,
  36. // roomId:testConfig.roomId,
  37. // userId:testConfig.userId,
  38. // sangle: '0',
  39. // eangle:'900',
  40. // reverses:true,
  41. // })
  42. // },12000)
  43. // setTimeout(()=>{
  44. // console.log('正转')
  45. // connection.socket.emit('rotate',{
  46. // videoList:['output'],
  47. // sessionId:'3',
  48. // sceneCode:testConfig.sceneCode,
  49. // roomId:testConfig.roomId,
  50. // userId:testConfig.userId,
  51. // })
  52. // },14000)
  53. // setTimeout(()=>{
  54. // console.log('第三个')
  55. // connection.socket.emit('pushVideo',{
  56. // videoList:['sample-5s'],
  57. // sessionId:'4',
  58. // sceneCode:testConfig.sceneCode,
  59. // roomId:testConfig.roomId,
  60. // userId:testConfig.userId,
  61. // })
  62. // },20000)
  63. window.connection =connection;
  64. // connection.socket.on('getVideo',async(streamUrl)=>{
  65. // if(streamUrl){
  66. // const url ='webrtc://demo-kms.4dage.com/' + streamUrl;
  67. // console.log('getVideo',streamUrl);
  68. // sdk.close();
  69. // await getVideo(url)
  70. // }
  71. // })
  72. const downloadURL = function(r, n) {
  73. const o = document.createElement("a");
  74. o.href = r,
  75. o.download = n,
  76. document.body.appendChild(o),
  77. o.style.display = "none",
  78. o.click(),
  79. o.remove()
  80. }
  81. let downloadBlob = (data, fileName, mimeType) => {
  82. const blob = new Blob([data], {
  83. type: mimeType,
  84. })
  85. const url = URL.createObjectURL(blob)
  86. downloadURL(url, fileName)
  87. setTimeout(function () {
  88. return URL.revokeObjectURL(url)
  89. }, 3000)
  90. }
  91. connection.socket.emit('pushVideo_test',async(data)=>{
  92. console.log(data)
  93. })
  94. connection.socket.on('pushVideo_test',async(data)=>{
  95. console.log(data)
  96. downloadBlob(data, 'test.mp4', 'application/video')
  97. })
  98. const getVideo =(videoUrl)=>{
  99. $('#testVideoFeed').prop('srcObject', sdk.stream);
  100. sdk.getVideo(videoUrl).then(function(session){
  101. console.log('session',session.sessionid)
  102. }).catch(function (reason) {
  103. console.error(reason);
  104. })
  105. }