File: ffmpeg_utils_test.py

package info (click to toggle)
pytorch-audio 2.6.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 10,696 kB
  • sloc: python: 61,274; cpp: 10,031; sh: 128; ansic: 70; makefile: 34
file content (41 lines) | stat: -rw-r--r-- 1,464 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
from torchaudio.utils import ffmpeg_utils
from torchaudio_unittest.common_utils import PytorchTestCase, skipIfNoFFmpeg


@skipIfNoFFmpeg
class TestFFmpegUtils(PytorchTestCase):
    """Smoke test for ffmpeg_utils module"""

    def tearDown(self):
        ffmpeg_utils.set_log_level(8)
        super().tearDown()

    def test_get_log_level(self):
        """`get_log_level` does not exhibit abnormal behavior"""
        for _ in range(10):
            ffmpeg_utils.get_log_level()

    def test_set_log_level(self):
        """`set_log_level` persists log level"""
        for i in range(-100, 100):
            ffmpeg_utils.set_log_level(i)
            assert ffmpeg_utils.get_log_level() == i

    def test_get_version(self):
        """`get_versions` does not crash"""
        versions = ffmpeg_utils.get_versions()
        assert set(versions.keys()) == {"libavutil", "libavcodec", "libavformat", "libavfilter", "libavdevice"}

    def test_available_stuff(self):
        """get_encoders|decoders|muxers|demuxers|devices function does not segfault"""

        ffmpeg_utils.get_demuxers()
        ffmpeg_utils.get_muxers()
        ffmpeg_utils.get_audio_decoders()
        ffmpeg_utils.get_audio_encoders()
        ffmpeg_utils.get_video_decoders()
        ffmpeg_utils.get_video_encoders()
        ffmpeg_utils.get_input_devices()
        ffmpeg_utils.get_output_devices()
        ffmpeg_utils.get_input_protocols()
        ffmpeg_utils.get_output_protocols()