dash-mpd 0.6.3

Parse, serialize, download an MPD manifest for MPEG-DASH or WebM-DASH media streaming
Documentation
on: [push]

name: build

jobs:
  check:
    name: dash-mpd-rs check/nightly
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Install latest nightly
        uses: actions-rs/toolchain@v1
        with:
            toolchain: nightly
            override: true
            components: rustfmt, clippy

      # `cargo check` command here will use installed `nightly`
      # as it is set as an "override" for current directory

      - name: Run cargo check
        uses: actions-rs/cargo@v1
        with:
          command: check

  test:
    name: dash-mpd-rs test/stable
    runs-on: ubuntu-latest
    steps:
      - name: Install ffmpeg
      # As of 2022-03, ubuntu-latest is using focal-updates which has libavcodec-dev v4.2.4
      # This does not include libavformat/bsf.h, which is required by the ac-ffmpeg crate.
      # Try to obtain ffmpeg/libav v4.4 from a ppa.
        run: |
          sudo add-apt-repository ppa:savoury1/ffmpeg4
          sudo apt-get update
          sudo apt-get install ffmpeg libavcodec-dev libavformat-dev libavutil-dev libswscale-dev
      - name: Checkout sources
        uses: actions/checkout@v2
      - name: Install toolchain
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          override: true
      - name: Run cargo test
        uses: actions-rs/cargo@v1
        with:
          command: test
      - name: Build with libav feature
        uses: actions-rs/cargo@v1
        with:
          command: build
          args: --features libav