@@ -359,174 +359,6 @@ jobs:
359
359
run : exit 1
360
360
runs-on : ubuntu-22.04
361
361
362
- openssl-1-0-1k :
363
- name : " With OpenSSL 1.0.1k"
364
- needs : build
365
- steps :
366
- - name : Checkout repository
367
- uses : actions/checkout@v4
368
- - name : Build OpenSSL 1.0.1k
369
- run : |
370
- set -euxo pipefail
371
- curl -s -L https://www.openssl.org/source/openssl-1.0.1k.tar.gz | tar xz
372
- cd openssl-1.0.1k
373
- ./config --prefix=$HOME/.release/openssl && make -j1
374
- sudo make install_sw
375
- - name : Download Test File
376
- run : |
377
- set -euxo pipefail
378
- curl -s -L -O https://github.com/ossrs/ffmpeg-webrtc/releases/download/pre-release/bbb-4mbps-baseline-opus.mp4
379
- - name : Build FFmpeg
380
- run : |
381
- set -euxo pipefail
382
-
383
- # Install dependencies
384
- sudo apt-get update
385
- sudo apt-get install -y nasm pkg-config jq libopus-dev libx264-dev
386
-
387
- # Build FFmpeg with WebRTC support
388
- PKG_CONFIG_PATH="$HOME/.release/openssl/lib/pkgconfig" \
389
- ./configure --enable-muxer=whip --enable-openssl \
390
- --extra-cflags="-I$HOME/.release/openssl/include" \
391
- --extra-ldflags="-L$HOME/.release/openssl/lib" \
392
- --pkg-config-flags="--static"
393
- make -j$(nproc)
394
- ./ffmpeg -version && ./ffmpeg -muxers 2>/dev/null |grep whip
395
- - name : Start SRS Docker container
396
- run : |
397
- set -euxo pipefail
398
- ip=$(ifconfig eth0 | grep 'inet ' | awk '{print $2}')
399
- docker run --rm -d -p 1935:1935 -p 1985:1985 -p 8080:8080 \
400
- --env CANDIDATE=$ip -p 8000:8000/udp \
401
- ossrs/srs:5 ./objs/srs -c conf/rtc2rtmp.conf
402
- - name : Streaming with FFmpeg
403
- run : |
404
- set -euxo pipefail
405
- nohup ./ffmpeg -t 30 -re -i bbb-4mbps-baseline-opus.mp4 -c copy \
406
- -f whip "http://localhost:1985/rtc/v1/whip/?app=live&stream=livestream" \
407
- 1>ffstdout.log 2>ffstderr.log &
408
- - name : Check SRS Streaming
409
- id : streaming
410
- run : |
411
- set -euxo pipefail
412
-
413
- # Check streams in SRS.
414
- for ((i=0; i<10; i++)); do
415
- STREAM=$(curl -s http://localhost:1985/api/v1/streams/ | jq -r '.streams[].name')
416
- if [[ "$STREAM" == "livestream" ]]; then
417
- echo 'Test OK';
418
- echo "has_stream=true" >> $GITHUB_OUTPUT
419
- break;
420
- fi
421
- sleep 3
422
- done
423
-
424
- if [[ "$STREAM" != "livestream" ]]; then
425
- echo "Stream not found: $STREAM"
426
- echo "has_stream=false" >> $GITHUB_OUTPUT
427
- fi
428
- - name : Stop FFmpeg normally
429
- run : |
430
- pkill -SIGINT ffmpeg && sleep 3 ||
431
- echo "FFmpeg process not found or already stopped."
432
- - name : Show FFmpeg Stdout Log
433
- run : cat ffstdout.log
434
- - name : Show FFmpeg Stderr Log
435
- run : cat ffstderr.log
436
- - name : Check FFmpeg Exit Log
437
- run : |
438
- set -euxo pipefail
439
- cat ffstderr.log |grep 'Exiting normally' && exit 0
440
- echo "Exiting normally not found in ffstderr.log" && exit 1
441
- - name : Check Stream Existence
442
- if : ${{ steps.streaming.outputs.has_stream == 'false' }}
443
- run : exit 1
444
- runs-on : ubuntu-22.04
445
-
446
- openssl-1-0-2 :
447
- name : " With OpenSSL 1.0.2"
448
- needs : build
449
- steps :
450
- - name : Checkout repository
451
- uses : actions/checkout@v4
452
- - name : Build OpenSSL 1.0.2
453
- run : |
454
- set -euxo pipefail
455
- curl -s -L https://www.openssl.org/source/openssl-1.0.2.tar.gz | tar xz
456
- cd openssl-1.0.2
457
- ./config --prefix=$HOME/.release/openssl
458
- make -j1 && sudo make install_sw
459
- - name : Download Test File
460
- run : |
461
- set -euxo pipefail
462
- curl -s -L -O https://github.com/ossrs/ffmpeg-webrtc/releases/download/pre-release/bbb-4mbps-baseline-opus.mp4
463
- - name : Build FFmpeg
464
- run : |
465
- set -euxo pipefail
466
-
467
- # Install dependencies
468
- sudo apt-get update
469
- sudo apt-get install -y nasm pkg-config jq libopus-dev libx264-dev
470
-
471
- # Build FFmpeg with WebRTC support
472
- PKG_CONFIG_PATH="$HOME/.release/openssl/lib/pkgconfig" \
473
- ./configure --enable-muxer=whip --enable-openssl \
474
- --extra-cflags="-I$HOME/.release/openssl/include" \
475
- --extra-ldflags="-L$HOME/.release/openssl/lib" \
476
- --pkg-config-flags="--static"
477
- make -j$(nproc)
478
- ./ffmpeg -version && ./ffmpeg -muxers 2>/dev/null |grep whip
479
- - name : Start SRS Docker container
480
- run : |
481
- set -euxo pipefail
482
- ip=$(ifconfig eth0 | grep 'inet ' | awk '{print $2}')
483
- docker run --rm -d -p 1935:1935 -p 1985:1985 -p 8080:8080 \
484
- --env CANDIDATE=$ip -p 8000:8000/udp \
485
- ossrs/srs:5 ./objs/srs -c conf/rtc2rtmp.conf
486
- - name : Streaming with FFmpeg
487
- run : |
488
- set -euxo pipefail
489
- nohup ./ffmpeg -t 30 -re -i bbb-4mbps-baseline-opus.mp4 -c copy \
490
- -f whip "http://localhost:1985/rtc/v1/whip/?app=live&stream=livestream" \
491
- 1>ffstdout.log 2>ffstderr.log &
492
- - name : Check SRS Streaming
493
- id : streaming
494
- run : |
495
- set -euxo pipefail
496
-
497
- # Check streams in SRS.
498
- for ((i=0; i<10; i++)); do
499
- STREAM=$(curl -s http://localhost:1985/api/v1/streams/ | jq -r '.streams[].name')
500
- if [[ "$STREAM" == "livestream" ]]; then
501
- echo 'Test OK';
502
- echo "has_stream=true" >> $GITHUB_OUTPUT
503
- break;
504
- fi
505
- sleep 3
506
- done
507
-
508
- if [[ "$STREAM" != "livestream" ]]; then
509
- echo "Stream not found: $STREAM"
510
- echo "has_stream=false" >> $GITHUB_OUTPUT
511
- fi
512
- - name : Stop FFmpeg normally
513
- run : |
514
- pkill -SIGINT ffmpeg && sleep 3 ||
515
- echo "FFmpeg process not found or already stopped."
516
- - name : Show FFmpeg Stdout Log
517
- run : cat ffstdout.log
518
- - name : Show FFmpeg Stderr Log
519
- run : cat ffstderr.log
520
- - name : Check FFmpeg Exit Log
521
- run : |
522
- set -euxo pipefail
523
- cat ffstderr.log |grep 'Exiting normally' && exit 0
524
- echo "Exiting normally not found in ffstderr.log" && exit 1
525
- - name : Check Stream Existence
526
- if : ${{ steps.streaming.outputs.has_stream == 'false' }}
527
- run : exit 1
528
- runs-on : ubuntu-22.04
529
-
530
362
openssl-1-1-0h :
531
363
name : " With OpenSSL 1.1.0h"
532
364
needs : build
@@ -850,8 +682,6 @@ jobs:
850
682
- pion
851
683
- janus
852
684
- asan
853
- - openssl-1-0-1k
854
- - openssl-1-0-2
855
685
- openssl-1-1-0h
856
686
- openssl-3-0
857
687
- openssl-latest
0 commit comments