OpenTalker / SadTalker

[CVPR 2023] SadTalker:Learning Realistic 3D Motion Coefficients for Stylized Audio-Driven Single Image Talking Face Animation
https://sadtalker.github.io/
Other
11.74k stars 2.19k forks source link

AttributeError: 'Row' object has no attribute 'style' #693

Open DiosMuerto opened 11 months ago

DiosMuerto commented 11 months ago

Help Please :'v

(sadtalker) C:\SadTalker-main>python app_sadtalker.py Traceback (most recent call last): File "app_sadtalker.py", line 107, in demo = sadtalker_demo() File "app_sadtalker.py", line 35, in sadtalker_demo with gr.Row().style(equal_height=False): AttributeError: 'Row' object has no attribute 'style'

devsnowy commented 11 months ago

Same problem, confirmed, fresh install. Please help.

devsnowy commented 11 months ago

I've been testing different commits, can't find out why this is happening. https://github.com/OpenTalker/SadTalker/issues/692 Same problem here.

@vinthony any help?

DiosMuerto commented 11 months ago

I don't know what it could be, the old versions worked fine, but now I get that.

I've tried everything.

Reinstall from 0 Remove python and anaconda, Delete all environments. Install from the automatic1111 extension, but nothing, it just doesn't work. that error appears.

:'v

DiosMuerto commented 11 months ago

I managed to get it working with automatic1111

first delete everything, python and anaconda.

then install https://www.python.org/downloads/release/python-3106/

finally install SADTALKER on the extensions. Then before restarting I put the checkpoints in the Sadtalker folder and it worked.

I really don't know why it doesn't work if I install it outside of automatic, but if they can solve it it would be excellent.

devsnowy commented 11 months ago

It might be that the launcher script form the extension is not broken?

AlterunX commented 11 months ago

Found I had installed Gradio 4.0.2, but changing to 3.41.2 resolved the problem.

javarike commented 11 months ago

is that any old version can use?thanks

umtaran1 commented 11 months ago

I can't fix this problem for working on webUI without Auto1111, please help !

easyontheice commented 11 months ago

Replace app_sadtalker.py with this code:

import os, sys
import gradio as gr
from src.gradio_demo import SadTalker  

def sadtalker_demo(checkpoint_path='checkpoints', config_path='src/config', warpfn=None):

sad_talker = SadTalker(checkpoint_path, config_path, lazy_load=True)

with gr.Blocks(analytics_enabled=False) as sadtalker_interface:
    gr.Markdown("<div align='center'> <h2> 😭 SadTalker: Learning Realistic 3D Motion Coefficients for Stylized Audio-Driven Single Image Talking Face Animation (CVPR 2023) </span> </h2> \
                <a style='font-size:18px;color: #efefef' href='https://arxiv.org/abs/2211.12194'>Arxiv</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
                <a style='font-size:18px;color: #efefef' href='https://sadtalker.github.io'>Homepage</a>  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
                 <a style='font-size:18px;color: #efefef' href='https://github.com/Winfredy/SadTalker'> Github </div>")

    submit = gr.Button('Generate', elem_id="sadtalker_generate", variant='primary')  # Define the submit button here

    driven_audio = gr.Audio(label="Input audio", type="filepath", elem_id="driven_audio")  # Define the driven_audio variable here

    preprocess_type = gr.Radio(['crop', 'resize','full', 'extcrop', 'extfull'], value='crop', label='preprocess', info="How to handle input image?")  # Define the preprocess_type variable here

    is_still_mode = gr.Checkbox(label="Still Mode (fewer head motion, works with preprocess `full`)", elem_id="is_still_mode")  # Define the is_still_mode variable here

    enhancer = gr.Checkbox(label="GFPGAN as Face enhancer", elem_id="enhancer")  # Define the enhancer variable here

    batch_size = gr.Slider(label="batch size in generation", step=1, maximum=10, value=2, elem_id="batch_size")  # Define the batch_size variable here

    size_of_image = gr.Radio([256, 512], value=256, label='face model resolution', info="use 256/512 model?", elem_id="size_of_image")  # Define the size_of_image variable here

    pose_style = gr.Slider(minimum=0, maximum=46, step=1, label="Pose style", value=0, elem_id="pose_style")  # Define the pose_style variable here

    gen_video = gr.Video(label="Generated video", format="mp4", elem_id="gen_video")  # Define the gen_video variable here

    with gr.Row():
        with gr.Column(variant='panel'):
            with gr.Tabs(elem_id="sadtalker_source_image"):
                with gr.TabItem('Upload image'):
                    with gr.Row():
                        source_image = gr.Image(label="Source image", type="filepath", elem_id="img2img_image")

        if warpfn:
            submit.click(
                        fn=warpfn(sad_talker.test), 
                        inputs=[source_image,
                                driven_audio,
                                preprocess_type,
                                is_still_mode,
                                enhancer,
                                batch_size,                            
                                size_of_image,
                                pose_style
                                ], 
                        outputs=[gen_video]
                        )
        else:
            submit.click(
                        fn=sad_talker.test, 
                        inputs=[source_image,
                                driven_audio,
                                preprocess_type,
                                is_still_mode,
                                enhancer,
                                batch_size,                            
                                size_of_image,
                                pose_style
                                ], 
                        outputs=[gen_video]
                        )

return sadtalker_interface

if __name__ == "__main__":

  demo = sadtalker_demo()
  demo.queue()
  demo.launch()
umtaran1 commented 11 months ago

Replace app_sadtalker.py with this code:

import os, sys
import gradio as gr
from src.gradio_demo import SadTalker  

def sadtalker_demo(checkpoint_path='checkpoints', config_path='src/config', warpfn=None):

sad_talker = SadTalker(checkpoint_path, config_path, lazy_load=True)

with gr.Blocks(analytics_enabled=False) as sadtalker_interface:
    gr.Markdown("<div align='center'> <h2> 😭 SadTalker: Learning Realistic 3D Motion Coefficients for Stylized Audio-Driven Single Image Talking Face Animation (CVPR 2023) </span> </h2> \
                <a style='font-size:18px;color: #efefef' href='https://arxiv.org/abs/2211.12194'>Arxiv</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
                <a style='font-size:18px;color: #efefef' href='https://sadtalker.github.io'>Homepage</a>  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
                 <a style='font-size:18px;color: #efefef' href='https://github.com/Winfredy/SadTalker'> Github </div>")

    submit = gr.Button('Generate', elem_id="sadtalker_generate", variant='primary')  # Define the submit button here

    driven_audio = gr.Audio(label="Input audio", type="filepath", elem_id="driven_audio")  # Define the driven_audio variable here

    preprocess_type = gr.Radio(['crop', 'resize','full', 'extcrop', 'extfull'], value='crop', label='preprocess', info="How to handle input image?")  # Define the preprocess_type variable here

    is_still_mode = gr.Checkbox(label="Still Mode (fewer head motion, works with preprocess `full`)", elem_id="is_still_mode")  # Define the is_still_mode variable here

    enhancer = gr.Checkbox(label="GFPGAN as Face enhancer", elem_id="enhancer")  # Define the enhancer variable here

    batch_size = gr.Slider(label="batch size in generation", step=1, maximum=10, value=2, elem_id="batch_size")  # Define the batch_size variable here

    size_of_image = gr.Radio([256, 512], value=256, label='face model resolution', info="use 256/512 model?", elem_id="size_of_image")  # Define the size_of_image variable here

    pose_style = gr.Slider(minimum=0, maximum=46, step=1, label="Pose style", value=0, elem_id="pose_style")  # Define the pose_style variable here

    gen_video = gr.Video(label="Generated video", format="mp4", elem_id="gen_video")  # Define the gen_video variable here

    with gr.Row():
        with gr.Column(variant='panel'):
            with gr.Tabs(elem_id="sadtalker_source_image"):
                with gr.TabItem('Upload image'):
                    with gr.Row():
                        source_image = gr.Image(label="Source image", type="filepath", elem_id="img2img_image")

        if warpfn:
            submit.click(
                        fn=warpfn(sad_talker.test), 
                        inputs=[source_image,
                                driven_audio,
                                preprocess_type,
                                is_still_mode,
                                enhancer,
                                batch_size,                            
                                size_of_image,
                                pose_style
                                ], 
                        outputs=[gen_video]
                        )
        else:
            submit.click(
                        fn=sad_talker.test, 
                        inputs=[source_image,
                                driven_audio,
                                preprocess_type,
                                is_still_mode,
                                enhancer,
                                batch_size,                            
                                size_of_image,
                                pose_style
                                ], 
                        outputs=[gen_video]
                        )

return sadtalker_interface

if __name__ == "__main__":

  demo = sadtalker_demo()
  demo.queue()
  demo.launch()

Traceback (most recent call last): File "C:\Users\Admin\SadTalker\Launcher.py", line 204, in start() File "C:\Users\Admin\SadTalker\Launcher.py", line 197, in start from app_sadtalker import sadtalker_demo File "C:\Users\Admin\SadTalker\app_sadtalker.py", line 7 sad_talker = SadTalker(checkpoint_path, config_path, lazy_load=True) ^ IndentationError: expected an indented block after function definition on line 5

After I change it, I got that error.

easyontheice commented 11 months ago

Try this file. I'm guessing the copied code didn't indent correctly.

app_sadtalker.zip

umtaran1 commented 11 months ago

Try this file. I'm guessing the copied code didn't indent correctly.

app_sadtalker.zip

OMG, it's work ♥ Thank you a lot

easyontheice commented 11 months ago

@umtaran1 Awesome! Glad to hear it. I need to update my posts on the other three threads. Thanks for letting me know.

secreat14 commented 11 months ago

I have just try the latest version and found this error Traceback (most recent call last): File "X:\projectwork\lla\TP_T_V\test\SadTalker\venv\lib\site-packages\gradio\queueing.py", line 472, in process_events response = await self.call_prediction(awake_events, batch) File "X:\projectwork\lla\TP_T_V\test\SadTalker\venv\lib\site-packages\gradio\queueing.py", line 436, in call_prediction raise Exception(str(error) if show_error else None) from error Exception: None

maggenti commented 11 months ago

Wow, thanks for that it works like a charm, the Zip file that is. Awesome, thank you so much!

absahad commented 11 months ago

This error still persist when you try to use sadtalker from google colab, please review. If you try to use one of this files suggested here, it will open but the interface is different and the videos keep loading on a loop.

Let me know!

Main error :

File "app_sadtalker.py", line 35, in sadtalker_demo with gr.Row().style(equal_height=False): AttributeError: 'Row' object has no attribute 'style'

easyontheice commented 11 months ago

@secreat14 Can you share your queueing.py file with me? Which version of gradio are you using? I am using gradio 4.1.1, Python ver 3.8.18, Windows 11 os

absahad commented 11 months ago

@secreat14 Can you share your queueing.py file with me? Which version of gradio are you using? I am using gradio 4.1.1, Python ver 3.8.18, Windows 11 os

This is happenin in Google Colab using any of the Scripts available, also I had the same error on my computer, but in my case I am more worry about Google Colab, here is the link I use, please try to install and you will see the no attribute 'style' Error. https://colab.research.google.com/github/camenduru/SadTalker-colab/blob/main/SadTalker_colab.ipynb <<< that is the link

Sadtalker Issues3 Check Screenshot here.

duaneking commented 10 months ago

Confirmed as an issue in the latest code, just bumped into this.

Nothing is working; If I fix the class issue I get :

Audio.init() got an unexpected keyword argument 'source'

This is from a brand new install, it just doesn't work.

srisonphan commented 10 months ago

@secreat14 Can you share your queueing.py file with me? Which version of gradio are you using? I am using gradio 4.1.1, Python ver 3.8.18, Windows 11 os

Thanks @easyontheice for this hint!

I got a similar issue and fixed it by updating requirements.txt from just gradio to grado~=4.1.1 and relaunch the app through webui.bat on Windows 11 + Python 3.10.6

Note that I applied a fix for gr.Row() mentioned earlier first before hitting this issue :)

Yacine75005 commented 10 months ago

Essayez ce fichier. Je suppose que le code copié n'a pas été correctement mis en retrait.

app_sadtalker.zip

I thank you from the bottom of my heart I spent 1 day on this even though I had the answer with you <33

uluturksamet commented 10 months ago

Try this file. I'm guessing the copied code didn't indent correctly.

app_sadtalker.zip

can u share your checkpoint file? or your sadtalker file?

Gingoold commented 9 months ago

Pruebe este archivo. Supongo que el código copiado no se sangró correctamente.

app_sadtalker.zip

Funcionó perfectamente... Thanks!!! :)

Sholgren commented 9 months ago

Try this file. I'm guessing the copied code didn't indent correctly.

app_sadtalker.zip

This works great, but it seems like it opens an older version of the UI which does not contain the Reference Video feature. Would you happen to have a version of this file that would have it? Thanks so much.

DALLYAI commented 9 months ago

Try this file. I'm guessing the copied code didn't indent correctly. app_sadtalker.zip

OMG, it's work ♥ Thank you a lot

Worked for me too well done, spent hours on it. Thx

peikenow commented 8 months ago

试试这个文件。我猜复制的代码没有正确缩进。

app_sadtalker.zip

OMG.Thank you so much,Helped me a lot.

btwiamamin commented 8 months ago

Thanks for the code it worked thank you so much

SoyVanden commented 8 months ago

Try this file. I'm guessing the copied code didn't indent correctly.

app_sadtalker.zip

Hey, I know this might be a dumb question, but I'm a newbie. How do I use your file? Should I execute it, or copy+paste in the webui user text? Thanks in advance.

yogesh1012-lgtm commented 8 months ago

Try this file. I'm guessing the copied code didn't indent correctly.

app_sadtalker.zip

thanks man

yogesh1012-lgtm commented 8 months ago

Try this file. I'm guessing the copied code didn't indent correctly. app_sadtalker.zip

DO this and make sure your face photo is clear , or try different photo

robertJene commented 7 months ago

using the app_sadtalker.zip file worked for me to replace the current version of app_sadtalker.py

Why can't the main repo get updated? What gives?

ldavis9000aws commented 7 months ago

Try this file. I'm guessing the copied code didn't indent correctly. app_sadtalker.zip

This works great, but it seems like it opens an older version of the UI which does not contain the Reference Video feature. Would you happen to have a version of this file that would have it? Thanks so much.

Agreed - I'm trying to figure out how to get the updated UI after git cloning the dev branch. The propsoed "fix" of just replacing the app_sadtalker.py (which is just called app.py in the dev branch) appears to be geared towards the main build, NOT the dev branch with the updated UI.

easyontheice commented 7 months ago

Been a while since I revisited this topic I will see about fixing the UI issue and keep you guys updated.

Xiobio commented 6 months ago

Found I had installed Gradio 4.0.2, but changing to 3.41.2 resolved the problem.

Thank you, this worked for me. In virtual env, just

pip uninstall gradio

Yes at prompt

pip install gradio==3.41.2

Then run webui.bat again and link to localhost with UI is provided.

so thankful

kalichen2021 commented 5 months ago

Try this file. I'm guessing the copied code didn't indent correctly.

app_sadtalker.zip

How kind you are!! It really works!!

noahxp commented 5 months ago

Try this file. I'm guessing the copied code didn't indent correctly.

app_sadtalker.zip

it works for me, thanks

robertdeanmoore commented 3 months ago

I used the ZIP workaround and the program ran BUT two issues which I have reported separately

arafatx commented 3 months ago

grado~=4.1.1

it's gradio~=4.1.1 not grado

kalichen2021 commented 3 months ago

thx~


发件人: Arafat Ali @.> 发送时间: 2024年6月23日 16:08 收件人: OpenTalker/SadTalker @.> 抄送: kalichen2021 @.>; Comment @.> 主题: Re: [OpenTalker/SadTalker] AttributeError: 'Row' object has no attribute 'style' (Issue #693)

grado~=4.1.1

it's gradio~=4.1.1 not grado

― Reply to this email directly, view it on GitHubhttps://github.com/OpenTalker/SadTalker/issues/693#issuecomment-2184832689, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AYWAAE27E47VBI24DCFWNOTZIZ7APAVCNFSM6AAAAAA6ZPBEZKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCOBUHAZTENRYHE. You are receiving this because you commented.Message ID: @.***>