Initial release
authorVásáry Dániel <vasary@elgekko.net>
Fri, 9 Feb 2024 11:43:36 +0000 (12:43 +0100)
committerVásáry Dániel <vasary@elgekko.net>
Fri, 9 Feb 2024 11:43:36 +0000 (12:43 +0100)
14 files changed:
media-samurai/KB.md
media-samurai/api.py
media-samurai/hls/002.bat [deleted file]
media-samurai/hls/KB.md [deleted file]
media-samurai/main.py
media-samurai/samples/hls-multiaudio1.bat [moved from media-samurai/hls/003.bat with 100% similarity]
media-samurai/samples/hls-multiaudio2.bat [moved from media-samurai/hls/004.bat with 92% similarity]
media-samurai/samples/hls-multistream.bat [moved from media-samurai/hls/001.bat with 100% similarity]
media-samurai/samples/merge-audio.bat [new file with mode: 0644]
media-samurai/samples/video-bipbop.html [moved from media-samurai/hls/video-bipbop.html with 100% similarity]
media-samurai/samples/videoinfo.bat [moved from media-samurai/hls/videoinfo.bat with 100% similarity]
media-samurai/static/index.html [moved from media-samurai/hls/index.html with 100% similarity]
media-samurai/transcode.py
server/user.jobengine.osgi.commons/src/user/commons/MediaSamuraiAPI.java

index af3f4c49ad1e878b4a13549902cd29bca98891f8..6c69ea7b481078649fca42d2dc9bf332198f1e64 100644 (file)
@@ -5,3 +5,13 @@ ffmpeg -y -i multi_audiotest5.mkv -filter_complex "[0:a:0][0:a:1]amerge=inputs=2
 megtartja az eredeti hangot is
 ffmpeg -y -i multi_audiotest5.mkv -filter_complex "[0:a:0][0:a:1]amerge=inputs=2[a]" -map "[a]" -ac 2 -map 0 mixed_audio_output.mkv
 
+https://hlsbook.net/creating-a-master-playlist-with-ffmpeg/
+http://underpop.online.fr/f/ffmpeg/help/hls-2.htm.gz
+https://trac.ffmpeg.org/wiki/AudioChannelManipulation
+https://trac.ffmpeg.org/wiki/Map
+
+tools https://github.com/videojs/http-streaming#tools
+online coding https://replit.com/@vasary/Phind-Code-Snippet#pyproject.toml
+video host https://api.video
+
+https://mediaarea.net/hr/MediaInfo/Support/Fields
\ No newline at end of file
index a44848db7d313c1ed017463667ec3a5e7c239f3f..fb5428097d470b2a59837b2700f94984b01397b1 100644 (file)
@@ -29,7 +29,7 @@ app.add_middleware(
     allow_methods=["*"],
     allow_headers=["*"],
 )
-app.mount("/video", StaticFiles(directory="hls"), name="VIDEO")
+app.mount("/static", StaticFiles(directory="static"), name="static")
 
 
 @app.post("/submit")
diff --git a/media-samurai/hls/002.bat b/media-samurai/hls/002.bat
deleted file mode 100644 (file)
index 97cb32a..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-ffmpeg -y -i d:\data\video\hls\ma.mkv ^
-  -preset slow -g 48 -sc_threshold 0 ^
-  -map 0:0 -map 0:1 -map 0:8 ^
-  -s:v:0 960x540 -c:v:0 libx264 -b:v:0 2000k  ^
-  -c:a:0 aac ^
-  -c:a:1 aac ^
-  -var_stream_map "a:0,agroup:audio,default:yes a:1,agroup:audio v:0,agroup:audio" ^
-  -master_pl_name master.m3u8 ^
-  -f hls -hls_time 6 -hls_list_size 0 ^
-  -hls_segment_filename "out/%%v/fileSequence%%03d.ts" ^
-  out/%%v/prog_index.m3u8
diff --git a/media-samurai/hls/KB.md b/media-samurai/hls/KB.md
deleted file mode 100644 (file)
index 397a7e6..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-https://hlsbook.net/creating-a-master-playlist-with-ffmpeg/
-http://underpop.online.fr/f/ffmpeg/help/hls-2.htm.gz
-https://trac.ffmpeg.org/wiki/AudioChannelManipulation
-https://trac.ffmpeg.org/wiki/Map
-
-tools https://github.com/videojs/http-streaming#tools
-online coding https://replit.com/@vasary/Phind-Code-Snippet#pyproject.toml
-video host https://api.video
-
-https://mediaarea.net/hr/MediaInfo/Support/Fields
\ No newline at end of file
index 594d975ff1b5cc8ded79bab608c9fac950a52eeb..12a2aabf65624d33353ce24bf81f511822e9f68e 100644 (file)
@@ -1,5 +1,3 @@
-import json
-
 import uvicorn
 from loguru import logger
 
similarity index 92%
rename from media-samurai/hls/004.bat
rename to media-samurai/samples/hls-multiaudio2.bat
index c06fdcfcb096b1721f1ee47f3b4c75216d85f55f..d4f13f8f5d0078b1023687bacf58a0bbd60c2d37 100644 (file)
@@ -1,5 +1,5 @@
 ffmpeg -y -i d:\data\video\hls\ma.mkv ^
-    -map 0:0 -map 0:1 -map 0:8 ^
+    -map 0:v:0 -map 0:a:1 -map 0:a:1 ^
     -var_stream_map "a:0,agroup:audio,default:yes a:1,agroup:audio v:0,agroup:audio" ^
     -c:v libx264 ^
     -profile:v main ^
diff --git a/media-samurai/samples/merge-audio.bat b/media-samurai/samples/merge-audio.bat
new file mode 100644 (file)
index 0000000..dfc6219
--- /dev/null
@@ -0,0 +1 @@
+ffmpeg -y -i d:\data\video\hls\ma.mkv -filter_complex "[0:a:0][0:a:1]amerge=inputs=2[a]" -map 0:v -map "[a]" -c:v copy -ac 2 d:\data\video\hls\output.mkv
\ No newline at end of file
index 5f12bb7eb6be743631996f9e44c045b7f52386cf..071227513007d4c0393db6c951a09545b51b06c9 100644 (file)
@@ -3,7 +3,6 @@ from datetime import datetime
 
 from loguru import logger
 from pydantic import BaseModel
-from enum import Enum
 import time
 
 from hls import transcode_hls, TranscodeStatus
index 721b72ecfd466ef15a84c35ea12c4a05b246bd79..d10b232066c5d289f2121185c76a54b4f32a3724 100644 (file)
@@ -25,8 +25,8 @@ public class MediaSamuraiAPI {
                final ThreadPoolExecutor executor = (ThreadPoolExecutor) Executors.newFixedThreadPool(2);
 
 //             String sources[] = { "ftp://dani:dani@localhost/data/video/hls/ma.mkv" };
-               String sources[] = { "ftp://dani:dani@localhost/data/video/X.MXF" };
-//             String sources[] = { "ftp://dani:dani@localhost/data/video/N.mxf" };
+//             String sources[] = { "ftp://dani:dani@localhost/data/video/X.MXF" };
+               String sources[] = { "ftp://dani:dani@localhost/data/video/N.mxf" };
                String target = "ftp://dani:dani@localhost/data/video/hls/out/";
                for (String source : sources) {
                        Runnable task = () -> {
@@ -47,6 +47,7 @@ public class MediaSamuraiAPI {
                        log.info("Started");
                        MediaSamuraiAPI api = new MediaSamuraiAPI("http://localhost:8181/");
                        BasicDBObject job = new BasicDBObject();
+                       job.put("profile", "hls");
                        job.put("source", source);
                        job.put("target", target);
                        job.put("frames", frames);