Spaces:
Runtime error
Runtime error
Update app.py
Browse files
app.py
CHANGED
|
@@ -8,10 +8,7 @@ pipUpdate = subprocess.run(["pip", "install", "--upgrade", "pip"])
|
|
| 8 |
from azure.storage.blob import BlobServiceClient
|
| 9 |
import AzureBlobStorageVideo
|
| 10 |
import AzureBlobStorageAudio
|
| 11 |
-
from apiTest import sas_token_1
|
| 12 |
-
from apiTest import sas_url_1
|
| 13 |
from apiTest import videoAnalysis
|
| 14 |
-
from apiTest import instance_1
|
| 15 |
from Moviepy import extract_audio_from_video
|
| 16 |
from Moviepy import load_json_output
|
| 17 |
from Moviepy import get_explosion_segments
|
|
@@ -60,8 +57,8 @@ def predict_video(input_video, input_audio=None, input_choice="Explosions"):
|
|
| 60 |
userAudioInputFlag = False
|
| 61 |
|
| 62 |
if input_audio is not None:
|
| 63 |
-
audioFileName = "userInputAudio"
|
| 64 |
-
input_audio = AzureBlobStorageAudio.uploadUserAudioToBlobStorage(input_audio, audioFileName)
|
| 65 |
userAudioInputFlag = True
|
| 66 |
#return [input_video, f" Using uploaded audio: {audioFileName}"]
|
| 67 |
else:
|
|
@@ -78,8 +75,6 @@ def predict_video(input_video, input_audio=None, input_choice="Explosions"):
|
|
| 78 |
input_audio = os.path.join(os.path.dirname(__file__), "audio/5_seconds_haptic_videos.mp3")
|
| 79 |
print("default selected")
|
| 80 |
|
| 81 |
-
#return [input_video, f" {choice}"]
|
| 82 |
-
|
| 83 |
#return [videoBlobURL, f" Using uploaded audio:"]
|
| 84 |
#return [input_video, f" Using uploaded audio: {input_audio.name}"]
|
| 85 |
# IF user uploads audio file: upload audio file to blob storage
|
|
@@ -100,7 +95,7 @@ def predict_video(input_video, input_audio=None, input_choice="Explosions"):
|
|
| 100 |
Returns:
|
| 101 |
A list containing the processed video and a message string.
|
| 102 |
"""
|
| 103 |
-
|
| 104 |
responseQueryText = videoAnalysis(videoSASURL, videoSASToken, input_choice)
|
| 105 |
|
| 106 |
# IF method returns error: run analysis again
|
|
@@ -146,7 +141,7 @@ def predict_video(input_video, input_audio=None, input_choice="Explosions"):
|
|
| 146 |
master = subprocess.run(["node", "masteringModule/main.js", "--input", finalAudioPath, "--output", finalAudioPath])
|
| 147 |
|
| 148 |
if (userAudioInputFlag == True):
|
| 149 |
-
|
| 150 |
|
| 151 |
# Extract video without audio
|
| 152 |
current_video = without_audio(VideoFileClip(input_video))
|
|
@@ -197,6 +192,7 @@ def predict_video(input_video, input_audio=None, input_choice="Explosions"):
|
|
| 197 |
# You can optionally add a progress bar or loading indicator here
|
| 198 |
|
| 199 |
|
|
|
|
| 200 |
css = """
|
| 201 |
#col-container {
|
| 202 |
margin: 0 auto;
|
|
@@ -258,6 +254,7 @@ with gr.Blocks(css=css) as demo:
|
|
| 258 |
<br> <a href="https://audiolibrary.blob.core.windows.net/audiolibrary/30_seconds_vehicle_audio.mp3"> Vehicle Audio Track 2 </a>
|
| 259 |
</p>
|
| 260 |
""")
|
|
|
|
| 261 |
btn_in.click(
|
| 262 |
fn=predict_video,
|
| 263 |
inputs=[video_in,audio_in,choice_in],
|
|
|
|
| 8 |
from azure.storage.blob import BlobServiceClient
|
| 9 |
import AzureBlobStorageVideo
|
| 10 |
import AzureBlobStorageAudio
|
|
|
|
|
|
|
| 11 |
from apiTest import videoAnalysis
|
|
|
|
| 12 |
from Moviepy import extract_audio_from_video
|
| 13 |
from Moviepy import load_json_output
|
| 14 |
from Moviepy import get_explosion_segments
|
|
|
|
| 57 |
userAudioInputFlag = False
|
| 58 |
|
| 59 |
if input_audio is not None:
|
| 60 |
+
#audioFileName = "userInputAudio"
|
| 61 |
+
#input_audio = AzureBlobStorageAudio.uploadUserAudioToBlobStorage(input_audio, audioFileName)
|
| 62 |
userAudioInputFlag = True
|
| 63 |
#return [input_video, f" Using uploaded audio: {audioFileName}"]
|
| 64 |
else:
|
|
|
|
| 75 |
input_audio = os.path.join(os.path.dirname(__file__), "audio/5_seconds_haptic_videos.mp3")
|
| 76 |
print("default selected")
|
| 77 |
|
|
|
|
|
|
|
| 78 |
#return [videoBlobURL, f" Using uploaded audio:"]
|
| 79 |
#return [input_video, f" Using uploaded audio: {input_audio.name}"]
|
| 80 |
# IF user uploads audio file: upload audio file to blob storage
|
|
|
|
| 95 |
Returns:
|
| 96 |
A list containing the processed video and a message string.
|
| 97 |
"""
|
| 98 |
+
|
| 99 |
responseQueryText = videoAnalysis(videoSASURL, videoSASToken, input_choice)
|
| 100 |
|
| 101 |
# IF method returns error: run analysis again
|
|
|
|
| 141 |
master = subprocess.run(["node", "masteringModule/main.js", "--input", finalAudioPath, "--output", finalAudioPath])
|
| 142 |
|
| 143 |
if (userAudioInputFlag == True):
|
| 144 |
+
AzureBlobStorageVideo.delete_container('useruploadhuggingfaceaudio')
|
| 145 |
|
| 146 |
# Extract video without audio
|
| 147 |
current_video = without_audio(VideoFileClip(input_video))
|
|
|
|
| 192 |
# You can optionally add a progress bar or loading indicator here
|
| 193 |
|
| 194 |
|
| 195 |
+
|
| 196 |
css = """
|
| 197 |
#col-container {
|
| 198 |
margin: 0 auto;
|
|
|
|
| 254 |
<br> <a href="https://audiolibrary.blob.core.windows.net/audiolibrary/30_seconds_vehicle_audio.mp3"> Vehicle Audio Track 2 </a>
|
| 255 |
</p>
|
| 256 |
""")
|
| 257 |
+
|
| 258 |
btn_in.click(
|
| 259 |
fn=predict_video,
|
| 260 |
inputs=[video_in,audio_in,choice_in],
|