From patchwork Mon Aug 13 21:50:39 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephan Holljes X-Patchwork-Id: 9979 Delivered-To: ffmpegpatchwork@gmail.com Received: by 2002:a02:104:0:0:0:0:0 with SMTP id c4-v6csp3632904jad; Mon, 13 Aug 2018 14:59:07 -0700 (PDT) X-Google-Smtp-Source: AA+uWPwW0ti1jmtrDN3HCsjD1jjdOryudDwb4m0GTKnCJ81EVIVEu460yDVY55SlCmm3UrH3FbU4 X-Received: by 2002:adf:9086:: with SMTP id i6-v6mr12268495wri.271.1534197547632; Mon, 13 Aug 2018 14:59:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1534197547; cv=none; d=google.com; s=arc-20160816; b=MYr5Ihr2VDtV/MZh/CgJZ4LibE4PxVyuET/zRX8lGB8PJIP9YAjK50F3a9qHMiw5U/ A0F9eoyzNKYo1RA5Ib5V2NMs7AQB6LlIpd9v6P30AbkMPE2USVM0VJy6fAaFyg4QS2Gt j5ANb8s39kDtKty9vCOxBtMZaVDeOL8PiCkblVpMo9uGExtDk2NYofH0Z5JJJxXtFswL yjmwWQYAcxh6fLEfnHHIMClIzf8ab8nQ++aKU1zbhWGavPnv6XSgGCVWyIbvs/TIrCFl +re08JcluGL9/PudvZ+K6VTMWW3W6xdSvbzG/Rqbd2wlRlmdvYGVCahYpp9o6HrTE9hd q39w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to:arc-authentication-results; bh=Ipd3vDO/3Iosi/jEz17L5+LFyCxig/FnQmjMWuydgIc=; b=UgWtQjAV/x51ZuqRTwP3EuNGab2YwnxqMKaHVHdzBku2d19OVaXRmSWM0aODJM0f9R G4ctgC1U2ixMEH77/B730VyUQHhDCEZgECs8tsXootTW7IaUi64gASb+1SAAIvr1kXJZ 8PjjWd9Va7gsu98FuSskEa+6dtXGqjmaAUz2xJOUgcI7B2sXJqst/7KyAmu8JCBDkyPg mkWj6SHJWiZ3Z+srBu0ARI4otVXfhhlHXI/GKDdCHj76DavKh457X54CUU2ueVSLPbty Abj8ySsCi52f1Kg83SxnA1W/jPawFinKKb13FhvI9X1HFhl83HbeM2oLFsUBui/BlOCV g2RQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@googlemail.com header.s=20161025 header.b=jlqTcK4+; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=googlemail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id i17-v6si12853401wrs.103.2018.08.13.14.59.07; Mon, 13 Aug 2018 14:59:07 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@googlemail.com header.s=20161025 header.b=jlqTcK4+; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=googlemail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 7455168A4A3; Tue, 14 Aug 2018 00:58:42 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr1-f53.google.com (mail-wr1-f53.google.com [209.85.221.53]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7A9CC68A42C for ; Tue, 14 Aug 2018 00:58:36 +0300 (EEST) Received: by mail-wr1-f53.google.com with SMTP id j5-v6so15494710wrr.8 for ; Mon, 13 Aug 2018 14:59:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=dmI41q1DdUiC5eUx7NiB6X6XWZnbyOjv5zrOpO71ucQ=; b=jlqTcK4+rrtPvQfmsYPmeWaTUWJ+/Sw1VCMbvnv2EG9lSsRtRF2aQZZQ8FwDc4PfUx sYDm7uwuE8Mi5kWVBZguTng96ODa1UnKzQ2ZLkI+PnRLlM1Ka7jZ3Of3Z7fDQ1J0esoy X4iDN+/cYNkF3S50efz+BUKtlQa8ZAgQ/l/vuoqmwokAOkF6vlz1YY7rHuZoNh76QMEm d9kd6cXZWqaDxFqdVxvtx6ArnfPUMWMAe7uy+uvM1qHxyT8lsRqMeUxqWkVrMG1LHbia tSEs8mrGx52+VksBVWVDkYviiJJhVnwvJWa8G5hAvApuA138V/o2CENpvN4WEfqNBw7X 0hhQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=dmI41q1DdUiC5eUx7NiB6X6XWZnbyOjv5zrOpO71ucQ=; b=BZMprUAzeb176PVBki9m87j9DNq4VfGr3+GzF5Sp8MQE29jpwZ4CIQ3gyscfO65sd/ pXA+P2UkOYgUe93zPOsUVzun/LH8BSQwFM5eVQ18miKzoXouj097rniyIz00zwHutLY5 IQNDbfqv27uoJar8WlhoBaAl7uBHDGrq7gzV6HRlnyidPRAPVVPI/n89Jp+25qvyhVNY g4ZybghhISbVSX7NL+qT/O00rNN7wkQAaR79ieGVL4IGe7q2DsvbMb+8KcUtJGbFyoSa GqXbGoYrl6M4g4BzSpi3P1lbFWQN1abH2JmvEhQCALPAckvfcOFpmVuzTzZBjhp1Zhs5 49Ow== X-Gm-Message-State: AOUpUlHQ/nQj75UIOgiOT+Ijsg5ljFqczyufpux/kdtArMwTRvYI9kkd X002fsL5D+63Isp94YPfFI2fxzpp X-Received: by 2002:a5d:5691:: with SMTP id f17-v6mr12085534wrv.58.1534197046062; Mon, 13 Aug 2018 14:50:46 -0700 (PDT) Received: from localhost.localdomain ([46.5.2.0]) by smtp.gmail.com with ESMTPSA id s10-v6sm25844997wmd.22.2018.08.13.14.50.45 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 13 Aug 2018 14:50:45 -0700 (PDT) From: Stephan Holljes To: ffmpeg-devel@ffmpeg.org Date: Mon, 13 Aug 2018 23:50:39 +0200 Message-Id: <1534197039-7793-2-git-send-email-klaxa1337@googlemail.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1534197039-7793-1-git-send-email-klaxa1337@googlemail.com> References: <1534197039-7793-1-git-send-email-klaxa1337@googlemail.com> Subject: [FFmpeg-devel] [PATCH] Add simple test (works with mkv for now, not with hls or dash) X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Stephan Holljes MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Stephan Holljes --- test.sh | 86 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ test_config.lua | 10 +++++++ 2 files changed, 96 insertions(+) create mode 100644 test.sh create mode 100644 test_config.lua diff --git a/test.sh b/test.sh new file mode 100644 index 0000000..a90eb71 --- /dev/null +++ b/test.sh @@ -0,0 +1,86 @@ +#!/bin/bash + +# This simple test generates a silent 60s 720p test video and streams it with ffserver. +# At the time of writing incorrect timestamps prevent HLS from working properly and +# something else is preventing DASH from working properly. However the matroska test +# should succeed. +# The tests need ffserver to be compiled and ffmpeg and curl to be present. + + +# generate source +ffmpeg -re -f lavfi -i testsrc2=s=1280x720:r=30 -f lavfi -i anullsrc=r=48000 -g 60 -c:v libx264 -c:a aac -pix_fmt yuv420p -t 60 -y orig.mkv -g 60 -c:v libx264 -c:a aac -pix_fmt yuv420p -t 60 -listen 1 -f matroska http://127.0.0.1:8080 2> source.log & +ffmpeg_pid=$! + +sleep 1 + +# start server +./ffserver test_config.lua 2> ffserver.log & +ffserver_pid=$! + +sleep 2 + +ffmpeg -i http://127.0.0.1:8081/test/mkv -y -c copy mkv.mkv 2> mkv.log & +ffmpeg_mkv_pid=$! + +sleep 1 + +curl http://127.0.0.1:8081/test/mkv > curl_mkv.mkv 2> curl_mkv.log & +curl_mkv_pid=$! + +#ffmpeg -i http://127.0.0.1:8081/test/hls -y -c copy hls.mkv 2> hls.log & +#ffmpeg_hls_pid=$! + +#ffmpeg -i http://127.0.0.1:8081/test/dash -y -c copy dash.mkv 2> dash.log & +#ffmpeg_dash_pid=$! + + +wait $ffmpeg_pid +echo source quit + +wait $ffmpeg_mkv_pid +echo mkv quit + +wait $curl_mkv_pid +echo curl mkv quit + +#wait $ffmpeg_hls_pid +#echo hls quit + +#wait $ffmpeg_dash_pid +#echo dash quit + +wait $ffserver_pid +echo ffserver quit + + +md5sum orig.mkv mkv.mkv curl_mkv.mkv + +rm -rf test/ + +ffmpeg -i orig.mkv -f framecrc -y orig.crc +ffmpeg -i mkv.mkv -f framecrc -y mkv.crc +ffmpeg -i curl_mkv.mkv -f framecrc -y curl_mkv.crc + +echo Diffs: + +fail=0 + +diff orig.crc mkv.crc +if [[ $? -ne "0" ]] +then + echo orig.mkv differs from mkv.mkv + fail=1 +fi +diff orig.crc curl_mkv.crc +if [[ $? -ne "0" ]] +then + echo orig.mkv differs from curl_mkv.mkv + fail=1 +fi + +if [[ $fail -eq "0" ]] +then + echo Test passed, files are the same. +fi + +rm orig.mkv orig.crc mkv.mkv mkv.crc curl_mkv.mkv curl_mkv.crc source.log ffserver.log mkv.log curl_mkv.log diff --git a/test_config.lua b/test_config.lua new file mode 100644 index 0000000..0f3f813 --- /dev/null +++ b/test_config.lua @@ -0,0 +1,10 @@ +settings = { + test = { + bind_address = "127.0.0.1", + port = 8081, + test = { + input = "http://127.0.0.1:8080/", + formats = { "mkv", "hls", "dash" } + } + } +}